// ArcIMSparam.js
// javascript file with parameters specific to calling page

//***************************************************************************
//*			parameters File for HTML Template		    *
//***************************************************************************

// get machine name
var hostName = document.location.host;
// common portion of url
var esriBlurb = "/servlet/com.esri.esrimap.Esrimap?ServiceName="
// make URL for getting mapservice catalog
var catURL = "http://" + hostName + esriBlurb + "catalog";
// make prefix for URL
var serverURL  = "http://" + hostName + esriBlurb;



var imsURL = 'http://gis.msa-ps.com/servlet/com.esri.esrimap.Esrimap?ServiceName=PortageSubscription';
var imsOVURL =  'http://gis.msa-ps.com/servlet/com.esri.esrimap.Esrimap?ServiceName=PortageSubscription';
var imsQueryURL = '';
var imsGeocodeURL = '';

//initial map extent
var startLeft = 515863;
var startRight = 554486;
var startTop = 415430;
var startBottom = 381560;
//maximum map extent
var limitLeft = 515863;
var limitRight = 554486;
var limitTop = 415430;
var limitBottom = 381560;


var usePan=true;
var usePanNorth=false;
var usePanWest=false;
var usePanEast=false;
var usePanSouth=false;
var useZoomIn=true;
var useZoomOut=true;
var useFullExtent=true;
var useZoomActive=false;
var useZoomLast=true;
var useIdentify=false;
var useHelp=true;
var useMeasure=true;
var useSetUnits=false;
var useSelect=true;
var useQuery=true;
var useFind=false;
var useGeocode=false;
var useStoredQuery=false;
var useClearSelect=true;
var usePrint=true;
var useGeoNetwork=false;
var useBuffer=true;
var useExtract=false;
//TIM CODE ADDED TO ZOOM TO BUFFER EXTENT
var buffpresent=false;

var MapUnits = "Feet";
var ScaleBarUnits = "Feet";

// End of Designer set parameters

// begin northbrook
var useNorthbrook = true;  // enable toolbar stuff
var theParcelLayerName = "Parcels";
var theStormlineLayerName = "Storm Mains";
var theStormcatchbasinLayerName = "Storm Collection Points";
var theStorminletLayerName = "Storm Inlets";
var theStormmanholeLayerName = "Storm Manholes";
var theSanmainLayerName = "Sanitary Mains";
var theSanmanholeLayerName = "Sanitary Manholes";
var theWaterpipesLayerName = "Water Mains";
var theHydrantLayerName = "Hydrants";
var theValveLayerName = "Water Valves";
var theRoadLayerName = "Streets";
var theTreeLayerName = "Tree Inventory";
var thePlantingSiteLayerName = "Planting Sites";
var theRemovedTreeLayerName = "Removed Trees and Stumps";
var labelsDocument = "http://gis.msa-ps.com/website/maps/wi/cities/lodi/subscriptionviewer/labels_5160.doc";
//var labelFieldIndexes = "2,3";  // this string will be written to VBScript as an Array()
var labelFieldIndexes = "2,3";  // this string will be written to VBScript as an Array()
var labelLastIndex = "3";
// end northbrook


var useHyperLink=false;
var useHyperLinkAny=false;
var useIdentifyAll=false;
var useBufferShape=false; 
var hasToolBarOnLayer=false;
	// useHyperLink takes priority - both cannot be true
if (useHyperLink) useHyperLinkAny=false;
	// useIdentify takes priority - both cannot be true
if (useIdentify) useIdentifyAll=false;
	// allow debugging
var setDebug=true;


/**************************************
* Basic Map parameters
**************************************/

// variables for setting component colors
var mapBackColor = "255,255,255";
var ovBoxColor = "#ff0000";
var ovBoxSize = 3;
var zoomBoxColor = "#ff0000";

// variables for using individual components
var hasOVMap = false;
var hasTOC = true;
var useModeFrame = true;

// variables for map pixel offset from upper left corner of frame
	// horizontal offset
var hspc = 0;
	// vertical offset
var vspc = 0;

//panning factor for arrow buttons
var panFactor = 85/100;
//zoom factors for v.3
var zoomFactor = 2

// margin factor for zooming in on selected lines and polygons - based on feature width and height. . . margin will be selectMargin * width or height
var selectMargin = 90/100;
// margin margin factor for zooming in on selected points - based on full extent. . . margin will be selectPointMargin * fullWidth or fullHeight
var selectPointMargin = 25/1000

// show the scale factor
var showScalePercent=true;
// display coords in status line
var showXYs=true;

// Have ArcXML responses URL encoded? Will not work with multi-byte characters
var doURLencode = false;

// automatically adjust for ArcMapServer, if necessary
	// North Arrow size is smaller from ArcMapServer
var autoAdjustForArcMapServer = true;

//variables for MapDrawing
	// North Arrow
var drawNorthArrow = true;
var NorthArrowType = "4";
var NorthArrowSize = "15";
var NorthArrowCoords = "20 35";
var NorthArrowAngle = "0";
	// Scale Bar
var drawScaleBar = true;
	// MapUnits=DEGREES,FEET,METERS
	// can MapUnits be changed by user?
var setMapUnits=false;
	// ScaleBarUnits=KILOMETERS,METERS,MILES,FEET
var ScaleBarBackground = "false";
var ScaleBarBackColor = "0,0,0";
var ScaleBarFontColor = "0,0,0";
var ScaleBarColor = "128,128,128";
var ScaleBarFont = "";
var ScaleBarStyle = "Regular";
var ScaleBarRound = "1";
var ScaleBarSize = "9";
var ScaleBarWidth = "5";
var ScaleBarPrecision = 2;
var numDecimals = ScaleBarPrecision;
	// Scale Bar 2
var drawScaleBar2 = false;
var ScaleBar2Units = "FEET";
var ScaleBar2Background = "false";
var ScaleBar2BackColor = "0,0,0";
var ScaleBar2FontColor = "0,0,0";
var ScaleBar2Color = "128,128,128";
var ScaleBar2Font = "";
var ScaleBar2Style = "Regular";
var ScaleBar2Round = "1";
var ScaleBar2Size = "9";
var ScaleBar2Width = "5";
var ScaleBar2Precision = 2;

	// Copyright blurb
var drawCopyright = true;
var CopyrightFont = "";
var CopyrightStyle = "Regular";
var CopyrightSize = "8";
var CopyrightCoords = "3 3";
var CopyrightColor = "0,0,0";
var CopyrightBackground = "False";
var CopyrightBGColor = "255,255,255";
var CopyrightGlow = "False";
var CopyrightGlowColor = "255,255,255";
var CopyrightShadow = "False";
var CopyrightShadowColor = "32,32,32";
var CopyrightText = "Parcel Map, Current as of 1/1/2010";

	// place bar behind Copyright text and scalebars
var drawBottomBar = false;
var bottomBarColor = "255,255,255";
var bottomBarOutline = "0,0,0";
var bottomBarHeight = "18";

	// Mode on Map
var drawModeOnMap = false;
var modeRefreshMap = false;
var modeMapColor = "255,255,255";
var modeMapGlow = "128,0,255";

var ovImageVar;
var ovBorderWidth = 4;
var ovExtentBoxSize =4;

// map image background transparent? - requires gif or png8 types
var mapTransparent=false;

// setup test for Nav 4.0
var isIE = false;
var isNav = (navigator.appName.indexOf("Netscape")>=0);
var isNav4 = false;
var isIE4 = false;
var is5up = false;
//alert(navigator.appVersion);
if (isNav) {
	
	if (parseFloat(navigator.appVersion)<5) {
		isNav4=true;
		//alert("Netscape 4.x or older");
	} else {
		is5up = true;
	}
} else {
	isIE4=true;
	isIE=true;
	if ((navigator.appVersion.indexOf("MSIE 5")>0) || (navigator.appVersion.indexOf("MSIE 6")>0)) {
		isIE4 = false;
		is5up = true;
		//alert("IE5");
	}
}	
		
/**************************************
* Extended Map parameters
**************************************/

// variables for ovmap offset
var ovHspc = 0;
var ovVspc = 0;

// color for Main Map zoombox in html hex RGB format
var zoomBoxColor = "Black";

// index of initial active layer. . . if more than or equal to layer count top layer used
var ActiveLayerIndex=27;
var ParcelLayerIndex=27;
var TreeLayerIndex = 0;

// variables for using individual components
var useTextFrame=true;
// use external window for dialogs
var useExternalWindow=false;

// colors for tables 
var textFrameBackColor="#008080";
var tableBackColor="White";
var textFrameTextColor="Black";
var textFrameLinkColor="Blue";
var textFrameFormColor="#008080";

// LayerList visible at service load
var showTOC=true;
// set layer visibility according to LayerList or by custom programming
var toggleVisible = true;
// set layer visibility of OVMap according to LayerList or by custom programming
	// imsURL must equal imsOVMap - depends on one LayerList
var toggleOVVisible = false;
// will the LayerList show all layers, not just those available at current scale
var listAllLayers = false;

// toggle the check of non-listing of layers in LayerList and Legend
// if true, noListLayer array must have an element defined for each layer
var hideLayersFromList=true;
// layers that will be listed in the LayerList or Legend
	// Note: This does not affect map display
var noListLayer = new Array();

noListLayer[0] = false; 		//Tree Inventory
noListLayer[1] = false; 		//Planting Sites
noListLayer[2] = false; 		//Removed Trees and Stumps
noListLayer[3] = false; 		//HARN
noListLayer[4] = true;			//Contours - 4 Foot
noListLayer[5] = false;			//Trash Pickup Routes
noListLayer[6] = false;			//Utility Poles
noListLayer[7] = false;			//Light Poles
noListLayer[8] = false;			//Traffic Signals
noListLayer[9] = false; 		//Sign Inventory
noListLayer[10] = false; 		//Cemetery
noListLayer[11] = false;			//Bridges
noListLayer[12] = false;			//Sidewalks
noListLayer[13] = false;	  		//Floodplain
noListLayer[14] = false;		//Railroad
noListLayer[15] = false;		//Sanitary Manholes
noListLayer[16] = false;		//Lift Stations
noListLayer[17] = false;		//Sanitary Mains
noListLayer[18] = false; 	    //Storm Collection Points
noListLayer[19] = false;		//Storm Mains
noListLayer[20] = false;		//Hydrants
noListLayer[21] = false;		//Water Meters and Vaults
noListLayer[22] = false;		//Reservoirs
noListLayer[23] = false;		//Water Valves
noListLayer[24] = false;		//Water Wells
noListLayer[25] = false;	  	//Water Mains
noListLayer[26] = false;		//Water Tower
noListLayer[27] = false;		//Parcels
noListLayer[28] = false;		//Parcel Mailing Labels
noListLayer[29] = false;		//Zoning
noListLayer[30] = true;			//Street ROW
noListLayer[31] = true;			//Highways
noListLayer[32] = false;		//Streets
noListLayer[33] = true;			//Rivers/Lakes
noListLayer[34] = false;		//Supervisory Districts
noListLayer[35] = false;		//Alderperson Districts
noListLayer[36] = false;		//Voting Wards
noListLayer[37] = true;			//Sections
noListLayer[38] = true;			//Section Quarters
noListLayer[39] = true;			//Section Quarter Quarters
noListLayer[40] = true;			//Municipal Boundaries
noListLayer[41] = true;    		//USGS Tomo Map
noListLayer[42] = true;    		//2002 Aerial Photo
noListLayer[43] = true;  		//2010 USDA Color Photo
	
// Mode on floating layer
var drawFloatingMode = false;
var modeLayerOn = false;
var modeLayerColor = "Black";
var modeLayerShadowColor = "White";
var modeLayerFont = "Arial";
var modeLayerSize = "4";

	// does the overview map a layer on top of map?... 
var ovMapIsLayer=true;

var webParams = "";
if (parent.MapFrame!=null) {
	webParams = parent.document.location.search;
} else {
	webParams = document.location.search;
}

/**************************************
* Interactive Map parameters
**************************************/

// Click points - Measure/Shape Select/Shape Buffer
var clickMarkerColor="255,0,0";
var clickMarkerType="Circle";
var clickMarkerSize="6";


/**************************************
* Identify/Select/Query/Buffer parameters
**************************************/

// search tolerance in pixels around click
var pixelTolerance=2;
// color of selected features in decimal RGB format
var selectColor="0,255,0";
// color of highlighted feature in decimal RGB format
var highlightColor="255,0,0";
// level of transparency of selected and highlighted color
var transparentLevel = "0.5";
	// zoom to selected feature if only one is returned?
var zoomToSingleSelect = true;
	// use only unique values in sample field value lists
var onlyUniqueSamples = true;
	// are string queries case insensitive?
		// false by default to match Java Viewer and ArcExplorer
var queryCaseInsensitive=true;

// fields to be returned in identify/selection/query request. . . #ALL#=all fields
//var selectFields= "#ALL#";
var selectFields= "#ID# #SHAPE#";
// swap out the list of returned fields? 
//If true, a list must be defined in selFieldList[n] for each layer to update selectFields
var swapSelectFields=true;
// array for each layer's returned fields if swapSelectFields=true
var selFieldList = new Array();
// sample set for world - if not #ALL#, id and shape fields required. Separate with a space
selFieldList[0] = "#ID# #SHAPE# ADDRESS STREET SPECIES DBH CONDITION MAINT GROWSPACE UTILITY DEFECT_1 DEFECT_2 COMMENTS CONSTRUCTI COND_ DATE_ ADDR_STR"; 		//Tree Inventory
selFieldList[1] = "#ID# #SHAPE# ADDRESS STREET SPECIES DBH CONDITION MAINT GROWSPACE UTILITY DEFECT_1 DEFECT_2 COMMENTS CONSTRUCTI COND_ DATE_ ADDR_STR"; 		//Planting Sites
selFieldList[2] = "#ID# #SHAPE# ADDRESS STREET SPECIES DBH CONDITION MAINT GROWSPACE UTILITY DEFECT_1 DEFECT_2 COMMENTS CONSTRUCTI COND_ DATE_ ADDR_STR"; 		//Removed Trees and Stumps
selFieldList[3] = "#ID# #SHAPE# STATION_NO STATION_NA"; 		//HARN
selFieldList[4]="#ID# #SHAPE# ELEVATION";			//Contours 4 foot
selFieldList[5]="#ID# #SHAPE# DAY_OF_WEE";			//Trash Pickup Routes
selFieldList[6]="#ID# #SHAPE# Elevation";			//Utility Poles
selFieldList[7]="#ID# #SHAPE# Elevation";			//Light Poles
selFieldList[8]="#ID# #SHAPE# Elevation";			//Traffic Signals
selFieldList[9] = "#ID# #SHAPE# Pic1 Northing Easting SignType Sign_Class MUTCD_Comp SignID"; 		//Sign Inventory
selFieldList[10] = "#ID# #SHAPE#"; 		//Cemetery
selFieldList[11]="#ID# #SHAPE#";			//Bridges
selFieldList[12]="#ID# #SHAPE#";			//Sidewalks
selFieldList[13]="#ID# #SHAPE# ZONE_ DESCRIPTIO";			//Floodplain
selFieldList[14]="#ID# #SHAPE#";			//Railroad
selFieldList[15]="#ID# #SHAPE# IDs Notes GPS_Height";			//Sanitary Manholes
selFieldList[16]="#ID# #SHAPE# IDs Notes GPS_Height";			//Lift stations
selFieldList[17]="#ID# #SHAPE# Line_Type Diameter Pipe_Mater";			//Sanitary Mains
selFieldList[18] = "#ID# #SHAPE# CB_COMMENT CB_GRATE CB_NUMBER CONDITION LOCATION MAINTENANC MATERIAL PNT_NUMBER STRUCTURE"; 		//Storm Collection Points
selFieldList[19]="#ID# #SHAPE# COMMENTS DIAMETER DOWN_CB LENGTH MATERIAL UP_CB";			//Storm Mains
selFieldList[20]="#ID# #SHAPE# IDs Notes";			//Hydrants
selFieldList[21]="#ID# #SHAPE# IDs Notes";			//Water Meters and Vaults
selFieldList[22]="#ID# #SHAPE# IDs Notes";			//Reservoirs
selFieldList[23]="#ID# #SHAPE# IDs Notes";			//Water Valves
selFieldList[24]="#ID# #SHAPE# IDs Notes";			//Water Wells
selFieldList[25]="#ID# #SHAPE# Line_Type Diameter Pipe_Mater";			//Water Mains
selFieldList[26]="#ID# #SHAPE#";			//Water Tower
selFieldList[27]="#ID# #SHAPE# GIS_PIN OWNR_NM ADDR CITY STA ZIP WEB_TAX_PARCEL_SEARCH";			//Parcels
selFieldList[28]="#ID# #SHAPE# GIS_PIN OWNR_NM ADDR CITY STA ZIP WEB_TAX_PARCEL_SEARCH";			//Parcel Mailing Labels
selFieldList[29]="#ID# #SHAPE# Zone_";			//City Zoning
selFieldList[30]="#ID# #SHAPE#";			//Street ROW
selFieldList[31]="#ID# #SHAPE#";			//Highways
selFieldList[32]="#ID# #SHAPE# FIRST_NAME ROUTE_CATE";	  		//Streets
selFieldList[33]="#ID# #SHAPE#";		//Rivers/Lakes
selFieldList[34]="#ID# #SHAPE# SUPER_DIST";		//Supervisory Districts
selFieldList[35]="#ID# #SHAPE# ALDER_DIST";		//Alderperson Districts
selFieldList[36]="#ID# #SHAPE# WARD_NAME";		//Voting Wards
selFieldList[37]="#ID# #SHAPE# TOWN RANGE SECTION";		//Sections
selFieldList[38]="#ID# #SHAPE# TOWN RANGE SECTION Q_SEC";		//Section Quarters
selFieldList[39]="#ID# #SHAPE# TOWN RANGE SECTION Q_SEC QQ_SEC";    	//Section Quarter QUarters
selFieldList[40]="#ID# #SHAPE#";		//Municipal Boundaries
selFieldList[41]="#ID# #SHAPE#";		//USGS Topo Map
selFieldList[42]="#ID# #SHAPE#";		//2002 Aerial Photo
selFieldList[43]="#ID# #SHAPE#";		//2010 USDA Color Photo

// use the field alias in the data display? 
//If true, a list must be defined in fieldAliasList[n] for each layer defining aliases for those fields needing them
var useFieldAlias=true;
// array for aliases for each layer's returned fields if useFieldAlias=true
var fieldAliasList  = new Array();
// sample set for world - fieldname:alias pairs separated by a bar (|)... if no aliases, use empty string ("")
fieldAliasList[0] = "ADDRESS:House Num|STREET:Street|SPECIES:Species|DBH:DBH|CONDITION:Condition|MAINT:Maintenance|GROWSPACE:Growspace|UTILITY:Utility|DEFECT_1:Defect 1|DEFECT_2:Defect 2|COMMENTS:Comments|CONSTRUCTI:Construction|COND_:Condition Pct|DATE_:Last Maint Date|ADDR_STR:Address"; 	//Tree Inventory
fieldAliasList[1] = "ADDRESS:House Num|STREET:Street|SPECIES:Species|DBH:DBH|CONDITION:Condition|MAINT:Maintenance|GROWSPACE:Growspace|UTILITY:Utility|DEFECT_1:Defect 1|DEFECT_2:Defect 2|COMMENTS:Comments|CONSTRUCTI:Construction|COND_:Condition Pct|DATE_:Last Maint Date|ADDR_STR:Address"; 	//Planting Sites
fieldAliasList[2] = "ADDRESS:House Num|STREET:Street|SPECIES:Species|DBH:DBH|CONDITION:Condition|MAINT:Maintenance|GROWSPACE:Growspace|UTILITY:Utility|DEFECT_1:Defect 1|DEFECT_2:Defect 2|COMMENTS:Comments|CONSTRUCTI:Construction|COND_:Condition Pct|DATE_:Last Maint Date|ADDR_STR:Address"; 	//Removed Trees and Stumps
fieldAliasList[3] = "STATION_NO:Station No.|STATION_NA:Station Name"; 	//HARN
fieldAliasList[4]="ELEVATION:Elevation";		//Contours 4 Foot
fieldAliasList[5]="DAY_OF_WEE:Day of Week";		//Trash Pickup Routes
fieldAliasList[6]="Elevation:Elevation";		//Utility Poles
fieldAliasList[7]="Elevation:Elevation";		//Light Poles
fieldAliasList[8]="Elevation:Elevation";		//Traffic Signals
fieldAliasList[9] = "Pic1:Photo|Northing:Northing|Easting:Easting|SignType:Sign Type|Sign_Class:Sign Class|MUTCD_Comp:MUTCD Compliant|SignID:Sign ID"; 	//Tree Inventory
fieldAliasList[10] = ""; 	//Cemetery
fieldAliasList[11]="";		//Bridges
fieldAliasList[12]="";		//Sidewalks
fieldAliasList[13]="ZONE_:Flood Zone|DESCRIPTIO:Description";	//Floodplains
fieldAliasList[14]="";		//Railroad
fieldAliasList[15]="IDs:San Manhole ID|Notes:Comments|GPS_Height:Elevation";		//Sanitary Manholes
fieldAliasList[16]="IDs:Lift Station ID|Notes:Comments|GPS_Height:Elevation";		//Lift stations
fieldAliasList[17]="Line_Type:Main Type|Diameter:Diameter|Pipe_Mater:Pipe Material";		//Sanitary Mains
fieldAliasList[18] = "CB_COMMENT:Comment|CB_GRATE:Grate|CB_NUMBER:Point ID|CONDITION:Condition|LOCATION:Location|MAINTENANC:Maintenance|MATERIAL:Material|PNT_NUMBER:PNT Number|STRUCTURE:Structure"; 	//Storm Collection Points
fieldAliasList[19]="COMMENTS:Comments|DIAMETER:Diameter|DOWN_CB:Down CB|LENGTH:Length|MATERIAL:Material|UP_CB:Up CB";		//Storm Mains
fieldAliasList[20]="IDs:Hydrant ID|Notes:Comments|GPS_Height:Elevation|Northing:Northing|Easting:Easting";		//Hydrants
fieldAliasList[21]="IDs:Meter & Vault ID|Notes:Comment|GPS_Height:Elevation|Northing:Northing|Easting:Eastings";		//Water Meters and Vaults
fieldAliasList[22]="IDs:Reservoir ID|Notes:Comments|GPS_Height:Elevation|Northing:Northing|Easting:Easting";		//Reservoirs
fieldAliasList[23]="IDs:Valve ID|Notes:Comments|GPS_Height:Elevation|Northing:Northing|Easting:Easting";		//Water Valves
fieldAliasList[24]="IDs:Well ID|Notes:Comments|GPS_Height:Elevation|Northing:Northing|Easting:Easting";		//Water Wells
fieldAliasList[25]="Line_Type:Line Type|Diameter:Diameter|Pipe_Mater:Material";		//Water Mains
fieldAliasList[26]="";		//Water Tower
fieldAliasList[27]="GIS_PIN:Parcel Number|SCH_DIST:School District|OWNR_NM:Owner|ADDR:Mailing Address|CITY:Mail City|STA:Mail State|ZIP:Mail Zip|TAX_PAR_DESC:Legal Description|TOT_AC:Acres|ASSMT_YR:Assessment Year|LND_VAL:Land Value|IMPR_VAL:Imporvement Value|WEB_TAX_PARCEL_SEARCH:County Tax Records";		//Parcels
fieldAliasList[28]="GIS_PIN:Parcel Number|SCH_DIST:School District|OWNR_NM:Owner|ADDR:Mailing Address|CITY:Mail City|STA:Mail State|ZIP:Mail Zip|TAX_PAR_DESC:Legal Description|TOT_AC:Acres|ASSMT_YR:Assessment Year|LND_VAL:Land Value|IMPR_VAL:Imporvement Value|WEB_TAX_PARCEL_SEARCH:County Tax Records";	//Parcel Mailing Labels
fieldAliasList[29]="Zone_:Zoning";		//City ZOning
fieldAliasList[30]="";		//Street ROW
fieldAliasList[31]="";		//Highways
fieldAliasList[32]="FIRST_NAME:Street Name|ROUTE_CATE:Type";	  	//Streets
fieldAliasList[33]="";		//Rivers/Lakes
fieldAliasList[34]="SUPER_DIST:District";		//Supervisory Districts
fieldAliasList[35]="ALDER_DIST:District";		//Alderperson Distrits
fieldAliasList[36]="WARD_NAME:Ward Name";		//Voting Districts
fieldAliasList[37]="TOWN:Town|RANGE:Range|SECTION:Section";		//Sections
fieldAliasList[38]="TOWN:Town|RANGE:Range|SECTION:Section|Q_SEC:Quarter Sec";		//Section Quarters
fieldAliasList[39]="TOWN:Town|RANGE:Range|SECTION:Section|Q_SEC:Quarter Sec|QQ_SEC:QQ Sec";    	//Section QUarter Quarters
fieldAliasList[40]="";		//Municipal Boundaries
fieldAliasList[41]="";		//USGS Topo Map
fieldAliasList[42]="";		//2002 Aerial Photo
fieldAliasList[43]="";		//2010 USDA Color Photo

// Hide the ID field display? The ID Field must be included in field list, but we don't have to show it.
var hideIDFieldData = true;
// Hide the shape field display? The Shape Field must be included in field list, but we don't have to show it.
var hideShapeFieldData = true;


// parameters for setting up hyperlinks in data display
var hyperLinkLayers = new Array(); // layers to have hyperlink
var hyperLinkFields = new Array();	// field in those layers to be used for hyperlink
var hyperLinkPrefix = new Array();  // prefix (if any) to place before field value to make hyperlink url
var hyperLinkSuffix = new Array();  // suffix (if any) to place after field value to make hyperlink url
///*
hyperLinkLayers[0] = "Street Projects";
hyperLinkFields[0] = "FULLPATH";
hyperLinkPrefix[0] = "";
hyperLinkSuffix[0] = "";

hyperLinkLayers[1] = "Parcels";
hyperLinkFields[1] = "WEB_TAX_PARCEL_SEARCH";
hyperLinkPrefix[1] = "";
hyperLinkSuffix[1] = "";

hyperLinkLayers[2] = "Parcel Mailing Labels";
hyperLinkFields[2] = "WEB_TAX_PARCEL_SEARCH";
hyperLinkPrefix[2] = "";
hyperLinkSuffix[2] = "";

hyperLinkLayers[3] = "Sign Inventory";
hyperLinkFields[3] = "Pic1";
hyperLinkPrefix[3] = "";
hyperLinkSuffix[3] = "";
//*/
/*
hyperLinkLayers[0] = "Winners";
hyperLinkFields[0] = "MISC.SAG.ID";
hyperLinkPrefix[0] = "http://gis.esri.com/uc2001/sag/display/index.cfm?id=";
hyperLinkSuffix[0] = "";
*/


// will the returned data be displayed in text frame?
var showSelectedData=true;
// will the returned features be drawn?
var showSelectedFeatures=true;
// maximum number of features returned from query
var maxFeaturesReturned=5000;
// for ID All - List all visible layers in response - default is false
	// if false only visible layers with idenitified features written to table
	// if true the names of all visible layers will be diplayed even if no features returned
var listAllLayersInIDAll = false;


// number of data samples retrieved for query form
var numberDataSamples = 50;



/**************************************
* Legend parameters - aimsLegend.js
**************************************/

// legend map size
var legWidth=170;
var legHeight=300;
var legFont="Arial";
var legTitle="Legend";

// Added variables for Group Layers.
// List the layers to group together, each group name being
//  an item in the groupName array. List the layers in the groupLayers 
//  array, each group's layer in a comma-delimited list.
var groupVisible = false;
var groupName = new Array();
var groupLayers = new Array();
groupName[0] = "City Maps";
groupLayers[0] = "Parcels,Sign Inventory,Zoning,Trash Pickup Routes,Bridges,Sidewalks,Supervisory Discricts,Alderperson Districts,Voting Ward Districts";
groupName[1] = "Transportation Maps";
groupLayers[1] = "Streets,Traffic Signals,Railroad";
groupName[2] = "Storm Sewer Utilities";
groupLayers[2] = "Storm Mains,Storm Collection Points";  
groupName[3] = "Sanitary Sewer Utilities";
groupLayers[3] = "Sanitary Mains,Sanitary Manholes,Lift Stations";
groupName[4] = "Water Utilities";
groupLayers[4] = "Water Mains,Hydrants,Water Valves,Water Wells,Water Meters and Vaults,Reservoirs,Water Tower";
groupName[5] = "Electrical Utilities";
groupLayers[5] = "Utility Poles,Light Poles";
groupName[6] = "Tree Inventory";
groupLayers[6] = "Tree Inventory,Planting Sites,Removed Trees and Stumps";
groupName[7] = "Base Maps";
groupLayers[7] = "HARN,Contours - 4 Foot,Cemetery,Floodplain,Rivers/Lakes,Sections,Section Quarters,Section Quarter Quarters,Municipal Boundaries";
groupName[8] = "Imagery";
groupLayers[8] = "2002 Aerial Photo,USGS Topo Map,2010 USDA Color Photo";
/**************************************
* Options parameters - aimsOptions.js
**************************************/

// allowing user to set options
var allowOptions=false;

/**************************************
* ClassRender parameters - aimsClassRender.js
**************************************/

// parameters for custom class rendering... overrides default renderer
var ClassRenderLayer = new Array();  // layers to have custom renderers
var ClassRenderString = new Array(); // initial custom renderer XML string for the layers
ClassRenderLayer[0] = "Cities";
ClassRenderString[0] = "";
/*
ClassRenderString[0] ='<VALUEMAPRENDERER lookupfield="population">\n<RANGE LOWER="0" UPPER="1000000">\n<SIMPLEMARKERSYMBOL color="255,0,255" type="circle" size="4" />\n</RANGE>';
ClassRenderString[0] = ClassRenderString[0] + '<RANGE LOWER="1000000" UPPER="2500000">\n<SIMPLEMARKERSYMBOL color="255,0,255" type="circle" size="6" />\n</RANGE>';
ClassRenderString[0] = ClassRenderString[0] + '<RANGE LOWER="2500000" UPPER="5000000">\n<SIMPLEMARKERSYMBOL color="255,0,255" type="circle" size="9" />\n</RANGE>';
ClassRenderString[0] = ClassRenderString[0] + '<RANGE LOWER="5000000" UPPER="10000000">\n<SIMPLEMARKERSYMBOL color="255,0,255" type="circle" size="12" />\n</RANGE>';
ClassRenderString[0] = ClassRenderString[0] + '<RANGE LOWER="10000000" UPPER="30000000">\n<SIMPLEMARKERSYMBOL color="255,0,255" type="circle" size="16" />\n</RANGE>\n</VALUEMAPRENDERER>';
*/

/**************************************
* Geocode parameters - aimsGeocode.js
**************************************/

// maximum geocode candidates returned - default = 20
var maxGeocodeCandidates=20;
// minimal acceptable geocode score for candidate
var minGeocodeScore=50;
var geocodePointColor = "255,0,0";
var geocodePointSize = "15";
var geocodeLabelSize = "12";
var geocodePointType = "star";
var currentGeocodePointIndex = 0;

// custom functions needed for Reverse Geocoding - RouteServer extension required
var useReverseGeocode = false;
var useRoute=false;

// the starting point. . . it all starts here on loading
function checkParams() {
	appDir = getPath(document.location.pathname);
	// global for overview map. . . change if not on same frame as Map
	ovImageVar = document.ovImage;
	debugOn = 0;
	if (parent.TextFrame==null) {
		useTextFrame = false;
		useExternalWindow=true;
	}
	if (!hasLayer("measureBox")) useMeasure=false;
	if ((!useMeasure) && (!drawScaleBar)) useSetUnits=false;
	if (ovImageVar==null) hasOVMap = false;
	if (top.TOCFrame==null) hasTOC = false;
	if (parent.ModeFrame==null) useModeFrame = false;
	
	
	if (isIE)	{
		if (hasLayer("theTop")) document.all.theTop.style.cursor = "crosshair";
		if (hasOVMap) ovImageVar.style.cursor = "hand";
	}
		
	if (hasOVMap) {
		// size of ov map image
		i2Width = parseInt(ovImageVar.width);
		i2Height = parseInt(ovImageVar.height);
		forceNewOVMap = false;
		// position of ov map
		//ovMapLeft = iWidth - (i2Width + 6);
		//ovMapTop = 2;
	}
	if (webParams!="") {
		//alert(webParams);
		getCommandLineParams(webParams);
	}
	// if starting extents zero'd then flag to get start from mapservice
	if ((startLeft!=0) && (startRight!=0)) getStartingExtent=false;
	// if limit extents zero'd then flag to get max from mapservice
	if ((limitLeft!=0) && (limitRight!=0)) {
		getLimitExtent=false;
		enforceFullExtent=true;
	}
	if (ovBoxColor=="") ovBoxColor = "255,0,0";
	//ovBoxColor = convertHexToDec(ovBoxColor);
	checkCoords();
	if (aimsNavigationPresent) {
		// Set up event capture for mouse movement
		if (isNav4) {
			document.captureEvents(Event.MOUSEMOVE);
			document.captureEvents(Event.MOUSEDOWN);
			document.captureEvents(Event.MOUSEUP);
			//document.captureEvents(Event.MOUSEOUT);
		}
		document.onmousemove = getMouse;
		//document.onmousedown = chkMouseDown;
		document.onmousedown = mapTool;
		document.onmouseup = chkMouseUp;
		//document.onmouseout = chkMouseOut;
	} else {
		usePan=false;
		usePanNorth=false;
		usePanWest=false;
		usePanEast=false;
		usePanSouth=false;
		useMeasure=false;
		useZoomIn=false;
		useZoomOut=false
		//useFullExtent=false;
		useZoomActive=false;
		//useZoomLast=false;	
	}
	
	if (!aimsBufferPresent) {
		useBuffer=false;
	}
	if (!aimsQueryPresent) {
		aimsBufferPresent=false;
		useQuery=false;
		useFind=false;
		useBuffer=false;
		useStoredQuery=false;
	}
	if (!aimsSelectPresent) {
		aimsQueryPresent=false;
		aimsBufferPresent=false;
 		useSelect=false;
		useQuery=false;
		useFind=false;
		useBuffer=false;
		useStoredQuery=false;
		useClearSelect=false;
	}
	if (!aimsIdentifyPresent) {
		aimsSelectPresent=false;
		aimsQueryPresent=false;
		aimsBufferPresent=false;
		canQuery=false;
		useIdentify=false;
 		useSelect=false;
		useQuery=false;
		useFind=false;
		useBuffer=false;
		useStoredQuery=false;
		useHyperLink=false;
		useHyperLinkAny=false;
		useIdentifyAll=false;
	}
	if (!aimsGeocodePresent) {
		useGeocode=false;
		useReverseGeocode=false;
	}
	if (!aimsPrintPresent) {
		usePrint=false;
	}
	if (!aimsOptionsPresent) {
		allowOptions=false;
	}
	if ((aimsXMLPresent) && (aimsMapPresent)) {
		if (aimsClickPresent) clickFunction("zoomin");
		if (parent.ToolFrame!=null) parent.ToolFrame.document.location="toolbar.htm";
		if (parent.HelpFrame!=null) parent.HelpFrame.document.location="help.htm";
		startMap();
	} else {
		alert(msgList[0]);
	}
}



