// aimsPublic.js
//contains functionality developed to work with the public map services

//variable declarations
var routesOn = false;		//indicates if the RouteList in BusFinder is showing or not
var areaQuery = false;		//if areaQuery functionality is running. Important for redirecting code flow
var areaQueryStage = -1;	//Redirects work flow. Stage 1 = searching for center parcel, Stage 2 = buffering around it
var areaQueryMode = "";		// 'geocode' or 'query': redirects code flow
var strTxtPpn = "";
var strTxtAddress = "";		//these two store textbox values from comparablesales.htm page. 
var areaQueryUnits = "";	//unit of measure used for the buffer. Set on the comparable sales page.
var measureWindow;		//stores reference to the measurement window, so it can be referenced
var measureWindowUp = true;	//blocks flag setting and distance measurement when "change units" is up

//specific transportation variables
//the next 6 are used on the tipmatch.htm and countmatch.htm pages
var tipProjectWinSetting = -1;	//number determines which search criteria shows in TIP Project window. -1 means no show.
				//1 = 0-2 query criteria will be used. 4 = the area location geocode & buffer
var tipProjectQueryCriteria = [-1,-1,-1];	//denotes which criteria will be shown. -1 = no show, 1 = show
var tipWindowIndex = [0,0,0];		//stores selected indexes in tip criteria lists to be added back when page loads

var trafficCountQueryCriteria = [-1,-1,-1,-1]; //number denotes which criteria are showing in the traffic count search win
						// -1 = not showing
						// 1 = showing (just one value box in the case of count #
						// only used in 4th pos., when 2 count boxes are showing ("between x & x")
var trafficSelectIndex = [0,0,0];		//stores value in select boxes for page reload
var trafficRoadValue = "";			//stores value of road name text box for page reload
var trafficCountValue = ["",""];		//stores values of 2 text boxes for page reload
var trafficPolJurIndex = 0;
var trafficMainJurIndex = 0;
var trafficCountCompIndex = 0;
var trafficLowCountValue = 0;
var trafficHighCountValue = 0;

//routeVisible tracks the visibility of each route in BusFinder. There are currently 23 routes (indexed 0-22) 
var routeVisible = [true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true,true]


//changes symbology of bus route layer
function addBusXML() {
	var busString;
	var busLabelSubString = "";
	busString = '<GROUPRENDERER>\n';
	busString += '<VALUEMAPRENDERER lookupfield="LANDR.BUS_ROUTE.ROUTE_NUMBER">\n';
	var theLength = routeVisible.length
	for (var i=0;i<theLength;i++) {
		if (routeVisible[i]) {
				switch(i) {
			case 0:
				busString += '<EXACT value="1" label="#1 Division">\n';
				busString += '<SIMPLELINESYMBOL color="241,85,254" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="1">\n'; 
				break;
			case 1:
				busString += '<EXACT value="2" label="#2 Kalamazoo">\n';
				busString += '<SIMPLELINESYMBOL color="229,0,0" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="2">\n'; 	
				break;
			case 2:
				busString += '<EXACT value="3" label="#3 Madison">\n';
				busString += '<SIMPLELINESYMBOL color="254,179,0" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="3">\n';
				break;
			case 3:
				busString += '<EXACT value="4" label="#4 Eastern">\n';
				busString += '<SIMPLELINESYMBOL color="0,66,135" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="4">\n';
				break;
			case 4:
				busString += '<EXACT value="5" label="#5 Wealthy">\n';
				busString += '<SIMPLELINESYMBOL color="72,118,46" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="5">\n';
				break;
			case 5:
				busString += '<EXACT value="6" label="#6 Cherry">\n';
				busString += '<SIMPLELINESYMBOL color="254,185,227" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="6">\n';
				break;
			case 6:
				busString += '<EXACT value="7E" label="#7E Leonard Crosstown East">\n';
				busString += '<SIMPLELINESYMBOL color="204,0,125" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="7E">\n';
				break;
			case 7:
				busString += '<EXACT value="7W" label="#7W Leonard Crosstown West">\n';
				busString += '<SIMPLELINESYMBOL color="204,0,125" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="7W">\n';
				break;
			case 8:
				busString += '<EXACT value="8" label="#8 Rivertown">\n';
				busString += '<SIMPLELINESYMBOL color="158,0,229" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="8">\n';
				break;
			case 9:
				busString += '<EXACT value="9" label="#9 Alpine">\n';
				busString += '<SIMPLELINESYMBOL color="0,167,199" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="9">\n';
				break;

			case 10:
				busString += '<EXACT value="10" label="#10 Clyde Park">\n';
				busString += '<SIMPLELINESYMBOL color="254,133,25" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="10">\n';
				break;
			case 11:
				busString += '<EXACT value="11" label="#11 Plainfield">\n';
				busString += '<SIMPLELINESYMBOL color="0,153,254" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="11">\n';
				break;
			case 12:
				busString += '<EXACT value="12E" label="#12E Fulton Crosstown East">\n';
				busString += '<SIMPLELINESYMBOL color="115,131,37" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="12E">\n';
				break;
			case 13:
				busString += '<EXACT value="12W" label="#12W Fulton Crosstown West">\n';
				busString += '<SIMPLELINESYMBOL color="115,131,37" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="12W">\n';
				break;
			case 14:
				busString += '<EXACT value="13" label="#13 Michigan">\n';
				busString += '<SIMPLELINESYMBOL color="175,254,230" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="13">\n';
				break;
			case 15:
				busString += '<EXACT value="14" label="#14 Burton Crosstown">\n';
				busString += '<SIMPLELINESYMBOL color="0,213,254" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="14">\n';
				break;
			case 16:
				busString += '<EXACT value="28" label="#28 28th St Crosstown">\n';
				busString += '<SIMPLELINESYMBOL color="199,0,168" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="28">\n';
				break;
			case 17:
				busString += '<EXACT value="44" label="#44 44th St Crosstown">\n';
				busString += '<SIMPLELINESYMBOL color="0,254,88" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="44">\n';
				break;
			case 18:
				busString += '<EXACT value="50" label="#50 GVSU Campus Connector">\n';
				busString += '<SIMPLELINESYMBOL color="90,115,131" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="50">\n';
				break;
			case 19:
				busString += '<EXACT value="50A" label="#50A GVSU Saturday Extension">\n';
				busString += '<SIMPLELINESYMBOL color="90,115,131" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="50A">\n';
				break;
			case 20:
				busString += '<EXACT value="100" label="#100 GVSU Off-Campus Shuttle">\n';
				busString += '<SIMPLELINESYMBOL color="254,90,229" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="100">\n';
				break; 
			case 21:
				busString += '<EXACT value="DS" label="DASH South">\n';
				busString += '<SIMPLELINESYMBOL color="86,0,254" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="DS">\n';
				break;
			case 22:
				busString += '<EXACT value="WD" label="DASH West">\n';
				busString += '<SIMPLELINESYMBOL color="86,0,254" transparency="1" width="3" type="solid" /></EXACT>\n';
				busLabelSubString = busLabelSubString += '<EXACT value="WD">\n';
				break;
				}
				busLabelSubString += '<TEXTSYMBOL antialiasing="true" glowing="255,255,255" font="Verdana" fontstyle="bold" fontsize="10" /></EXACT>\n';
			}
		} 	
	busString += '</VALUEMAPRENDERER>\n';
	busString += '<VALUEMAPLABELRENDERER lookupfield="LANDR.BUS_ROUTE.ROUTE_NUMBER" labelfield="LANDR.BUS_ROUTE.ROUTE_NUMBER" howmanylabels="one_label_per_name">\n';
	busString += busLabelSubString;
	busString += '</VALUEMAPLABELRENDERER>\n';
	busString += '</GROUPRENDERER>\n';
	return busString;
}

//changes symbology of various layers
function addSymbolXML(layerid) {
	var symbolString;
	switch(layerid) {
		case "parcels":
			symbolString += '<SIMPLERENDERER>\n';
                         symbolString += '<SIMPLEPOLYGONSYMBOL fillcolor="0,255,100" filltransparency="0" filltype="solid" fillinterval="6" boundarycolor="0,255,100" boundarytransparency="1" boundarywidth="1" boundarytype="solid" boundarycaptype="butt" boundaryjointype="round" />\n';
               		symbolString += '</SIMPLERENDERER>\n';
			break;
		case "parcelanno":
			symbolString += '<GROUPRENDERER>\n';
			symbolString += '<SIMPLERENDERER>\n';
                	symbolString += '<SIMPLELINESYMBOL color="0,0,0" transparency="0" width="1" type="solid" captype="round" jointype="round" />\n';
                 	symbolString += '</SIMPLERENDERER>\n';
                 	symbolString += '<SIMPLELABELRENDERER field="LANDR.PARCEL_ANNO802.ANNO_TEXT" linelabelposition="placeontop">\n';
                        symbolString += '<TEXTSYMBOL antialiasing="true" font="Arial" fontstyle="bold" fontsize="14" fontcolor="0,255,100"/>\n';
                 	symbolString += '</SIMPLELABELRENDERER>';
        		symbolString += '</GROUPRENDERER>';
			break;
	}			
	return symbolString;
}