			
  			
			
			var expVisible = [];
			var expQueryVisible = [];
			var expPipeVisible = [];
			var expPipe = false;
			var expClick;
			var expCountyExtent;
			var identifyDijit;
			var expInited = false;
			
			var cachedCrudePipelines;
			var cachedNGPipelines;
			var cachedOtherPipelines;
			var cachedWells;
			
			


function expInit() {
					
        			
					
					esriConfig.defaults.io.proxyUrl = "/arcgisserver/apis/javascript/proxy/proxy.ashx";
        			esriConfig.defaults.io.alwaysUseProxy = false;
					
					
					expInited = true;
					
					cachedCrudePipelines = new esri.layers.ArcGISTiledMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_CrudePipelines/MapServer",{id:"cachedCrudePipeMap"});
					cachedNGPipelines = new esri.layers.ArcGISTiledMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_NGPipelines/MapServer",{id:"cachedNGPipeMap"});
					cachedOtherPipelines = new esri.layers.ArcGISTiledMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_OtherPipelines/MapServer",{id:"cachedOtherPipeMap"});
					cachedWells = new esri.layers.ArcGISTiledMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Wells/MapServer",{id:"cachedWellMap"});
					
					reInitExp();
					
}

function reInitExp() {
				var tab = "";
				expPipe = false;
				dojo.byId('expWellAcc').innerHTML = "No query results...";
				dojo.byId('expRefAcc').innerHTML = "No query results...";
				dojo.byId('expFieldAcc').innerHTML = "No query results...";
				
				map.infoWindow.hide();
				
				expVisible = [];
				expPipeVisible = [];
				map.removeAllLayers();
				
				
				if (basemap == "street") {
					map.addLayer(street);
				} else {
					map.addLayer(satellite);
				}
				
//----------------------------------------------------------------------------------------------------
					expPipeLayers = [];
					var expLayers = 1;
					if(dojo.byId('expPipelines').checked == true) {
						if(dojo.byId('expPipelineCo').value == "") {
							if (dojo.byId('expNG').checked == true) {
								map.addLayer(cachedNGPipelines);
								expPipeVisible.push(0);
								expLayers++;
								expPipe = true;
							}
							if (dojo.byId('expCrude').checked == true) {
								map.addLayer(cachedCrudePipelines);
								expPipeVisible.push(1);
								expLayers++;
								expPipe = true;
							} 	 
							if (dojo.byId('expOther').checked == true) {
								map.addLayer(cachedOtherPipelines);
								expPipeVisible.push(2);
								expLayers++;
								expPipe = true;
							}
					
							
							
							
						} else if((dojo.byId('expNG').checked == true) || (dojo.byId('expCrude').checked == true) || (dojo.byId('expOther').checked == true)) {
							
							
					        var pipeArray = dojo.byId('expPipelineCo').value.toUpperCase();
							pipeArray = pipeArray.split(',');
					
							var pipeImageParameters = new esri.layers.ImageParameters();
							pipeImageParameters.layerIds = [];
							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] + "%'))";
								}
							}
							if (dojo.byId('expCrude').checked == true) {
								pipeImageParameters.layerIds.push(1);
								layerDefs[1]=layerDefs[0];
								expPipe = true;
							} 	 
							if (dojo.byId('expOther').checked == true) {
								pipeImageParameters.layerIds.push(2);
								layerDefs[2]=layerDefs[0];
								expPipe = true;
							}
							if (dojo.byId('expNG').checked == true) {
								pipeImageParameters.layerIds.push(0);
								expPipe = true;
							} else {
								layerDefs[0]="";
							}
							
							pipeImageParameters.layerDefinitions = layerDefs;
							pipeImageParameters.transparent = true;
							pipeImageParameters.layerOption = esri.layers.ImageParameters.LAYER_OPTION_SHOW;
							var dynExpPipelineLayer = new esri.layers.ArcGISDynamicMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_ExpPipelines/MapServer", {"imageParameters":pipeImageParameters,id:"dynExpPipelineMap"});
        					dynExpPipelineLayer.setVisibleLayers(pipeImageParameters.layerIds);
							expPipeVisible = pipeImageParameters.layerIds;
							expLayers++;
							map.addLayer(dynExpPipelineLayer);
							
							
							
						}
						
					}
					var expImageParameters = new esri.layers.ImageParameters();
					expImageParameters.layerIds = [];
					var expLayerDefs = [];
					
					var anychecked = false;
					
							
							
							
							
					        
						
						
						
					
					if(dojo.byId('expRefineries').checked ==true) {
						anychecked = true;
						if(dojo.byId('expRefineryCo').value == "") {
							expImageParameters.layerIds.push(1);
							expVisible.push(1);
						} else {
							
							expLayerDefs[1] = "UPPER(Name) LIKE UPPER('%" + dojo.byId('expRefineryCo').value + "%')";
							expImageParameters.layerIds.push(1);
							expVisible.push(1);
							var refineryQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/1");
							var refineryQuery = new esri.tasks.Query();
							refineryQuery.returnGeometry = true;
							refineryQuery.outFields = ["*"];
							refineryQuery.where = "UPPER(Name) LIKE UPPER('%" + dojo.byId('expRefineryCo').value + "%')";
							refineryQuery.geometry = esri.geometry.point;
							//CHECK THIS TO MAKE SURE IT CAN BE REUSED - ELSE COPY AND EDIT TO NEW JS FILE
							refineryQueryTask.execute(refineryQuery, function(fset){
								expRefineryTable(fset);
							});
							
						}
					}
					if(dojo.byId('expField').checked ==true) {
						anychecked = true;
						if(dojo.byId('expFieldCo').value == "") {
							expImageParameters.layerIds.push(2);
							expVisible.push(2);
						} else {
							
							expLayerDefs[2] = "UPPER(FEATURE_ST) LIKE UPPER('%" + dojo.byId('expFieldCo').value + "%')";
							expImageParameters.layerIds.push(2);
							expVisible.push(2);
							var fieldQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer/2");
							var fieldQuery = new esri.tasks.Query();
							fieldQuery.returnGeometry = true;
							fieldQuery.outFields = ["*"];
							fieldQuery.where = "UPPER(FEATURE_ST) LIKE UPPER('%" + dojo.byId('expFieldCo').value + "%')";
							fieldQuery.geometry = esri.geometry.point;
							//CHANGE
							fieldQueryTask.execute(fieldQuery, function(fset){
								fieldTable(fset);
							});
						}
					}
					if(dojo.byId('expWells').checked ==true) {
						
							map.addLayer(cachedWells);
							expVisible.push(0);
							expLayers++;
						
						
					}




//-----------------------------------------------------------------------------------------------------		
				
				
				
				
						if (anychecked == true) {
						expImageParameters.transparent = true;
						expImageParameters.layerDefinitions = expLayerDefs;
						
						expImageParameters.layerOption = esri.layers.ImageParameters.LAYER_OPTION_SHOW;
						var dynamicExpLayer = new esri.layers.ArcGISDynamicMapServiceLayer(ip + "/ArcGIS/rest/services/HarrisCounty/Harris_Exploration/MapServer", {
							"imageParameters": expImageParameters,
							id: "dynExpLayerMap"
						});
						
						
						dynamicExpLayer.setVisibleLayers(expImageParameters.layerIds);
						expLayers++;
						map.addLayer(dynamicExpLayer);
					}
					
					if (dojo.byId('countyCrude').value != "Select a County...") {
							var countyStore = new dojo.data.ItemFileReadStore({
								url: "ZoomTo/data/counties_wgs84.json",
								typeMap: {
									'Extent': esri.geometry.Extent
								}
							});
							var countyFips = dojo.byId('countyCrude').value;
							var stateValue = dojo.byId('stateCrude').value;
							var gotCountyExtent = function(items){
								
							
								var newMapExtent = dojo.clone(items[0].extent[0]);
								map.setExtent(newMapExtent, true);
								
								
							}
							countyStore.fetch({
								query: {
									name: countyFips,
									state_name: stateValue
								},
								onComplete: gotCountyExtent
							});
						}
					
				
	
}


function loadCounties() {
	
	var placeName = dijit.byId('stateCrude').attr('value');
	
	if (placeName != "Select a State...") {
		
		var countyStore = new dojo.data.ItemFileReadStore({
                url: "ZoomTo/data/counties_wgs84.json", 
                typeMap: { 'Extent': esri.geometry.Extent}
            });
		//dijit.byId('countyCrude').attr({ disabled: false, displayedValue: '' });
		dijit.byId('countyCrude').query = {state_name: placeName}
		dijit.byId('countyCrude').store = countyStore;
		dijit.byId('countyCrude').focus();
	} 
}

function loadTownships(){
	if (dojo.byId('countyCrude').value != "Select a County...") {
		var countyQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/CountyTownship/MapServer/1");
		var townshipQueryTask = new esri.tasks.QueryTask(ip + "/ArcGIS/rest/services/CountyTownship/MapServer/0");
		var countyQuery = new esri.tasks.Query();
		var countyGeo;
		countyQuery.returnGeometry = true;
		countyQuery.outFields = ["CNAME"];
		countyQuery.where = "UPPER(CNAME) LIKE UPPER('" + dojo.byId('countyCrude').value + "')";

		dojo.connect(countyQueryTask, "onComplete", function(graphics){
			if (graphics.features.length > 0) {
			
				countyGeo = graphics.features[0].geometry;
				
				var townshipQuery = new esri.tasks.Query();
				townshipQuery.returnGeometry = false;
				townshipQuery.geometry = countyGeo;
				townshipQuery.outFields = ["TWP_RNG"];
				
			}
			
		});
		dojo.connect(townshipQueryTask, "onComplete", function(fset){
			
			for (var i = 0; i < fset.features.length; i++) {
				
				townshipJson.items[i] = new Object;
				townshipJson.items[i].name = fset.features[i].attributes.TWP_RNG;
			}
			
			
		});
		
		
		
		
		
		countyQueryTask.execute(countyQuery);
		
		
		
	}
}


	function extentExpHistoryChangeHandler() {
        dijit.byId("zoomprev").disabled = expnavToolbar.isFirstExtent();
        dijit.byId("zoomnext").disabled = expnavToolbar.isLastExtent();
      }
