// JavaScript Document

			var productClick;
			var map, navToolbar;
			var termHTML = "No search results...";
			var refHTML = "No search results...";
			var ethHTML = "No search results...";
			var bioHTML = "No search results...";			
			var needtoclear = false;
			var prevRow = -1;
  			//var ip = "http://192.168.2.3";
			//var ip = "http://98.197.246.140";
			var ip = "http://iei.dnsalias.net";
			var satellite;
			var street;
			var prodPipelinesDynamic;
			var prodPipelinesMSD;
			var products;
			var visible = [];
			var infoHTML="";
			var expInfoHTML="";
			var foundResults = false;
			var lastclick = "";
			var explastclick = "";
			var alllastclick = "";
			var basemap = "street";
			var page = "Products";
			var geometryService;
			var tb;
			
			
			function showSatellite(){
				if (basemap == "street") {
					map.addLayer(satellite, 0);
					map.removeLayer(street);
					
					
					basemap = "satellite";
				}
				
			}
			function showStreet(){
				if (basemap == "satellite") {
					map.addLayer(street,0);
					map.removeLayer(satellite);
					
					basemap = "street";
				}
			}
			
			function findqueryDetails(evt) {
				if (page == "Products"){
					
					queryDetails(evt);
				} else if (page == "Exploration") {
					
					expQueryDetails(evt);
				} else if (page == "All") {
					allQueryDetails(evt);
				}
			}
			
			function init() {
				esriConfig.defaults.map.sliderLabel = null;
				var startExtent = new esri.geometry.Extent(-96.42097473144531, 29.18339565396309, -93.85704040527344, 30.401504784822464, new esri.SpatialReference({wkid:4326}));
			        //create map
					
					map = new esri.Map(dojo.byId('mapDiv'), { extent: startExtent });
					navToolbar = new esri.toolbars.Navigation(map);
        			dojo.connect(navToolbar, "onExtentHistoryChange", extentHistoryChangeHandler);
					dojo.connect(map, "onClick", findqueryDetails);
					

					dojo.connect(map.infoWindow, "onShow", function() {
			          dijit.byId("infoWindow").resize();
					  dojo.parser.parse(dijit.byId("infoWindow"));
			        });
					dojo.connect(map, "onZoomEnd", function(){
						
						navToolbar.deactivate();
					})
					
					esri.config.defaults.io.proxyUrl = "proxy.php";
					esri.config.defaults.io.alwaysUseProxy = false;
					
					geometryService = new esri.tasks.GeometryService("http://sampleserver1.arcgisonline.com/ArcGIS/rest/services/Geometry/GeometryServer");
					dojo.connect(geometryService, "onLengthsComplete", outputDistance);
					
			        dojo.connect(geometryService, "onProjectComplete", function(graphics) {
			          //call GeometryService.lengths() with projected geometry
			          geometryService.lengths(graphics);
			        });
					satellite = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer",{id:"satelliteMap"});
					street = new esri.layers.ArcGISTiledMapServiceLayer("http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer",{id:"streetMap"});
					prodPipelinesMSD = new esri.layers.ArcGISTiledMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_ProdPipelinesMSD/MapServer",{id:"cachedProdPipelineMap"});
					
					reInit();
			}			

			

			function reInit() {
				var layersLoaded = 0;
				
		        
				
					var tab = "";
				
					dojo.byId('termAcc').innerHTML = "No query results...";
					dojo.byId('refAcc').innerHTML = "No query results...";
					dojo.byId('bioAcc').innerHTML = "No query results...";
					dojo.byId('ethAcc').innerHTML = "No query results...";
					
					map.infoWindow.hide();
			       visible = [];
				   map.removeAllLayers();
				
				   if (basemap == "street") {
				   	map.addLayer(street);
					
				   } else {
				   	map.addLayer(satellite);
					
				   }
				 
					
			        //Layers
					
					
					
			        
					
					
				if(dojo.byId('pipelines').checked == true) {
					if(dojo.byId('PipelineCo').value == "") {
						
						map.addLayer(prodPipelinesMSD);
						
						
						
					} else {
						
						
				        var pipeArray = dojo.byId('PipelineCo').value.toUpperCase();
						pipeArray = pipeArray.split(',');
				
						var pipeImageParameters = new esri.layers.ImageParameters();
						var layerDefs = [];
						for (var i = 0; i < pipeArray.length; i++){
							if (pipeArray[i].substring(0,1) == " ") {
								pipeArray[i] = pipeArray[i].substring(1,pipeArray[i].length);
							}
							if (i > 0) {
								layerDefs[0]  =layerDefs[0]  + " OR (UPPER(OWNER) LIKE UPPER('%" + pipeArray[i] + "%'))";
							} else {
								layerDefs[0] = "(UPPER(OWNER) LIKE UPPER('%" + pipeArray[i] + "%'))";
							}
						}
						
						pipeImageParameters.layerDefinitions = layerDefs;
						pipeImageParameters.visibleLayers = [0];
						pipeImageParameters.transparent = true;
						var dynamicPipelineLayer = new esri.layers.ArcGISDynamicMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_ProdPipelinesRed/MapServer", {"imageParameters":pipeImageParameters,id:"dynProdPipelineMap"});
    					
						map.addLayer(dynamicPipelineLayer);
						
						
					}
					
				}
				var productImageParameters = new esri.layers.ImageParameters();
				productImageParameters.layerIds = [];
				var prodLayerDefs = [];
				
				var firstparam = "T";
				if(dojo.byId('terminals').checked == true) {
					
						
						needtoclear = true;
						var mysearch = "";
						
					if (dojo.byId('select8').value != "Select Product Type...") { 
							if (firstparam == "F") {
								mysearch = mysearch + " AND";
							} else {
								firstparam = "F";
							}
							
							switch (dojo.byId('select8').value) {
								case "Refined Products":
									mysearch = mysearch + " (Refined_Pr LIKE 'Y')";
									break;
								case "Crude Oil":
									mysearch = mysearch + " (Crude_Oil LIKE 'Y')";
									break;
								default:
									mysearch = mysearch + " (" + dojo.byId('select8').value + " LIKE 'Y')";
							}
					}
					if (dojo.byId('Terminal4').value != "") { 
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						
						var termArray = dojo.byId('Terminal4').value.split(',');
						
				        for (var i = 0; i < termArray.length; i++){
							if (termArray[i].substring(0,1) == " ") {
								termArray[i] = termArray[i].substring(1,termArray[i].length);
							}
							
							if (i > 0) {
								mysearch = mysearch + " OR (UPPER(Name) LIKE UPPER('%" + termArray[i] + "%'))";
							} else {
								mysearch = " ((UPPER(Name) LIKE UPPER('%" + termArray[i] + "%'))";
							}
						}
						mysearch = mysearch + ")";
					}
					if (dojo.byId('RailIn').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Rail_In LIKE '%Yes%')";
					}
					if (dojo.byId('RailOut').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Rail_Out LIKE '%Yes%')";
					}
					if (dojo.byId('TruckIn').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Truck_In LIKE '%Yes%')";
					}
					if (dojo.byId('TruckOut').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Truck_Out LIKE '%Yes%')";
					}
					if (dojo.byId('MarineIn').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Marine_In LIKE '%Yes%')";
					}
					if (dojo.byId('MarineOut').checked == true) {
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (Marine_Out LIKE '%Yes%')";
					}
					if (dojo.byId('Pipeline5').value != "") { 
						if (firstparam == "F") {
							mysearch = mysearch + " AND";
						} else {
							firstparam = "F";
							
						}
						mysearch = mysearch + " (( UPPER(Pipeline_I) LIKE UPPER('%" + dojo.byId('Pipeline5').value + "%')) OR (UPPER(Pipeline_O) LIKE  UPPER('%" + dojo.byId('Pipeline5').value + "%')))";
					}

				
					if (firstparam == "F") {
						
						prodLayerDefs[2] = mysearch;
						productImageParameters.layerIds.push(2);
						var terminalQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/2");
						var terminalQuery = new esri.tasks.Query();
						terminalQuery.returnGeometry = true;
						terminalQuery.outFields = ["*"];
						terminalQuery.where = mysearch;
						terminalQuery.geometry = esri.geometry.point;
						terminalQueryTask.execute(terminalQuery, function(fset){
							terminalTable(fset);
						});
													
					}	else {
						productImageParameters.layerIds.push(2);
					}
						
						
						
						
				        
					
					
					
				}
				if(dojo.byId('refineries').checked ==true) {
					if(dojo.byId('RefineryCo').value == "") {
						productImageParameters.layerIds.push(1);
					} else {
						
						prodLayerDefs[1] = "UPPER(Name) LIKE UPPER('%" + dojo.byId('RefineryCo').value + "%')";
						productImageParameters.layerIds.push(1);
						var refineryQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/1");
						var refineryQuery = new esri.tasks.Query();
						refineryQuery.returnGeometry = true;
						refineryQuery.outFields = ["*"];
						refineryQuery.where = "UPPER(Name) LIKE UPPER('%" + dojo.byId('RefineryCo').value + "%')";
						refineryQuery.geometry = esri.geometry.point;
						refineryQueryTask.execute(refineryQuery, function(fset){
							refineryTable(fset);
						});
						
					}
				}
				if(dojo.byId('ethanol').checked ==true) {
					
				}
				if(dojo.byId('biodiesel').checked ==true) {
					if(dojo.byId('BiodieselCo').value == "") {
						productImageParameters.layerIds.push(0);
					} else {
						
						prodLayerDefs[0] = "UPPER(Name) LIKE UPPER('%" + dojo.byId('BiodieselCo').value + "%')";
						productImageParameters.layerIds.push(0);
						var biodieselQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/0");
						var biodieselQuery = new esri.tasks.Query();
						biodieselQuery.returnGeometry = true;
						biodieselQuery.outFields = ["*"];
						biodieselQuery.where = "UPPER(Name) LIKE UPPER('%" + dojo.byId('BiodieselCo').value + "%')";
						biodieselQuery.geometry = esri.geometry.point;
						biodieselQueryTask.execute(biodieselQuery, function(fset){
							biodieselTable(fset);
						});
					}
				}
					
					
					
					productImageParameters.layerDefinitions = prodLayerDefs;
					productImageParameters.transparent = true;
					
					
					//productImageParameters.layerOption = productImageParameters.LAYER_OPTION_SHOW;
					var dynamicProductLayer = new esri.layers.ArcGISDynamicMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer", {"imageParameters":productImageParameters,id:"dynProductsMap"});
					dynamicProductLayer.setVisibleLayers(productImageParameters.layerIds);
					visible = productImageParameters.layerIds;
					map.addLayer(dynamicProductLayer);
					
				
			}

		
	function extentHistoryChangeHandler() {
        dijit.byId("zoomprev").disabled = navToolbar.isFirstExtent();
        dijit.byId("zoomnext").disabled = navToolbar.isLastExtent();
      }
					
					
		function rowClicked(company, address, row) {
			map.infoWindow.hide();
			if (prevRow >= 0) {
					dojo.byId("table" + prevRow).style.background = "#FFF";
			}			
			dojo.byId("table" + row).style.background = "#A0B4B4";			
			prevRow = row;
			
			rowClickedQueryTask = new esri.tasks.QueryTask(ip+ "/ArcGIS/rest/services/Products/MapServer/3");
			
			
			dojo.connect(rowClickedQueryTask,"onComplete", function(){
				something;
			});
			rowClickedQuery = new esri.tasks.Query();
			rowClickedQuery.returnGeometry = true;
			rowClickedQuery.outFields = ["Name","Address","City","State","Zipcode"];
			rowClickedQuery.where = "(Name LIKE '" + company + "') AND (Address LIKE '" + address + "')";
			
			rowClickedQueryTask.execute(rowClickedQuery,function(fset){
				map.infoWindow.setTitle(fset.attributes.Name);
				map.infoWindow.setContent(fset.attributes.Address + "<br>" + fset.attributes.City + ", " + fset.attributes.State + " " + fset.attributes.Zipcode);
				map.infoWindow.show(fset.features[0].geometry,esri.dijit.InfoWindow.ANCHOR_UPPERRIGHT);
				
			});
		
		
		}
			
	function measureDistance(){
		tb = new esri.toolbars.Draw(map);

        //on draw end add graphic, project it, and get new length
        dojo.connect(tb, "onDrawEnd", function(geometry) {
          map.graphics.clear();
          var graphic = map.graphics.add(new esri.Graphic(geometry, new esri.symbol.SimpleLineSymbol()));
          //add graphic to the map and then call GeometryService.project() to get graphic into a coordinate system that
          //can be used to generate an accurate length.
          geometryService.project([graphic],new esri.SpatialReference({"wkid":32618}));
        });
        tb.activate(esri.toolbars.Draw.LINE);
		
		
		
	}
	
	function outputDistance(result) {
        alert(dojo.number.format(result.lengths[0] * 0.000621371192) + " miles\n" + dojo.number.format(result.lengths[0] * 3.2808399) + " ft");
		map.graphics.clear();
		tb.deactivate();
      }

			
	function screenQuery(ext){
		if (dijit.byId('bigTab').selectedChildWidget.id == 'Products') {
			if (dojo.byId('terminals').checked == true) {
				var extTerminalQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/2");
				var extTerminalQuery = new esri.tasks.Query();
				extTerminalQuery.returnGeometry = true;
				extTerminalQuery.outFields = ["*"];
				extTerminalQuery.geometry = ext;
				extTerminalQueryTask.execute(extTerminalQuery, function(fset){
					terminalTable(fset);
				});
			}
			if (dojo.byId('refineries').checked == true) {
				var extRefineryQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/1");
				var extRefineryQuery = new esri.tasks.Query();
				extRefineryQuery.returnGeometry = true;
				extRefineryQuery.outFields = ["*"];
				extRefineryQuery.geometry = ext;
				extRefineryQueryTask.execute(extRefineryQuery, function(fset){
					refineryTable(fset);
				});
			}
			
			if (dojo.byId('biodiesel').checked == true) {
				var extBiodieselQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/0");
				var extBiodieselQuery = new esri.tasks.Query();
				extBiodieselQuery.returnGeometry = true;
				extBiodieselQuery.outFields = ["*"];
				extBiodieselQuery.geometry = ext;
				extBiodieselQueryTask.execute(extBiodieselQuery, function(fset){
					biodieselTable(fset);
				});
			}
		
		}
		else 
			if (dijit.byId('bigTab').selectedChildWidget.id == 'Exploration') {
				if (dojo.byId('expRefineries').checked == true) {
					var extRefineryQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/1");
					var extRefineryQuery = new esri.tasks.Query();
					extRefineryQuery.returnGeometry = true;
					extRefineryQuery.outFields = ["*"];
					extRefineryQuery.geometry = ext;
					extRefineryQueryTask.execute(extRefineryQuery, function(fset){
						expRefineryTable(fset);
					});
				}
				if (dojo.byId('expField').checked == true) {
					var extFieldQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/2");
							var extFieldQuery = new esri.tasks.Query();
							extFieldQuery.returnGeometry = true;
							extFieldQuery.outFields = ["*"];
							extFieldQuery.geometry = ext;
							extFieldQueryTask.execute(extFieldQuery, function(fset){
								fieldTable(fset);
							});
				}
				if (dojo.byId('expWells').checked == true) {
					var extWellQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/0");
							var extWellQuery = new esri.tasks.Query();
							extWellQuery.returnGeometry = true;
							extWellQuery.outFields = ["*"];
							extWellQuery.geometry = ext;
							extWellQueryTask.execute(extWellQuery, function(fset){
								wellTable(fset);
							});
				}
			}
		else 
			if (dijit.byId('bigTab').selectedChildWidget.id == 'Layer') {
				if (dojo.byId('allRefineries').checked == true) {
					var extRefineryQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/1");
					var extRefineryQuery = new esri.tasks.Query();
					extRefineryQuery.returnGeometry = true;
					extRefineryQuery.outFields = ["*"];
					extRefineryQuery.geometry = ext;
					extRefineryQueryTask.execute(extRefineryQuery, function(fset){
						allRefineryTable(fset);
					});
				}
				if (dojo.byId('allField').checked == true) {
					var extFieldQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/2");
							var extFieldQuery = new esri.tasks.Query();
							extFieldQuery.returnGeometry = true;
							extFieldQuery.outFields = ["*"];
							extFieldQuery.geometry = ext;
							extFieldQueryTask.execute(extFieldQuery, function(fset){
								allFieldTable(fset);
							});
				}
				if (dojo.byId('allWells').checked == true) {
					var extWellQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/0");
							var extWellQuery = new esri.tasks.Query();
							extWellQuery.returnGeometry = true;
							extWellQuery.outFields = ["*"];
							extWellQuery.geometry = ext;
							extWellQueryTask.execute(extWellQuery, function(fset){
								allWellTable(fset);
							});
				}
				if (dojo.byId('allTerminals').checked == true) {
					var extTerminalQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/2");
					var extTerminalQuery = new esri.tasks.Query();
					extTerminalQuery.returnGeometry = true;
					extTerminalQuery.outFields = ["*"];
					extTerminalQuery.geometry = ext;
					extTerminalQueryTask.execute(extTerminalQuery, function(fset){
						allTerminalTable(fset);
					});
				}
				
				if (dojo.byId('allBio').checked == true) {
					var extBiodieselQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Products/MapServer/0");
					var extBiodieselQuery = new esri.tasks.Query();
					extBiodieselQuery.returnGeometry = true;
					extBiodieselQuery.outFields = ["*"];
					extBiodieselQuery.geometry = ext;
					extBiodieselQueryTask.execute(extBiodieselQuery, function(fset){
						allBiodieselTable(fset);
					});
				}
			}
	}


