jQuery(document).ready(function() {  
	
	jQuery('.datepicker').datepicker();
	
	jQuery('#btnAddWell').click(function() {                
		var num = jQuery('.clonedInput').length; 
		// how many "duplicatable" input fields we currently have             
		var newNum  = new Number(num + 1); 
		                
		// create the new element via clone(), and manipulate it's ID using newNum value               
		var newElem = jQuery('#input' + num).clone().attr('id', 'input' + newNum); 
		                 
		// manipulate the name/id values of the input inside the new element               
		newElem.find("input[name^='rptWellNum']")
				.attr('id', 'rptWellNum' + newNum)
				.attr('name', 'rptWellNum' + newNum)
				.attr('tabindex', newNum*100 + 10)
				.val('');  
		newElem.find("input[name^='rptWellName']")
				.attr('id', 'rptWellName' + newNum)
				.attr('name', 'rptWellName' + newNum)
				.attr('tabindex', newNum*100 + 10)
				.val(''); 
		newElem.find("input[name^='gMonth1WaterLevel']")
				.attr('id', 'gMonth1WaterLevel' + newNum)
				.attr('name', 'gMonth1WaterLevel' + newNum)
				.attr('tabindex', newNum*100 + 10)
				.val(''); 
		newElem.find("input[name^='gMonth2WaterLevel']")
				.attr('id', 'gMonth2WaterLevel' + newNum)
				.attr('name', 'gMonth2WaterLevel' + newNum)
				.attr('tabindex', newNum*100 + 20)
				.val(''); 
		newElem.find("input[name^='gMonth3WaterLevel']")
				.attr('id', 'gMonth3WaterLevel' + newNum)
				.attr('name', 'gMonth3WaterLevel' + newNum)
				.attr('tabindex', newNum*100 + 30)
				.val(''); 
		newElem.find("input[name^='gMonth1WLDate']")
				.attr('id', 'gMonth1WLDate' + newNum)
				.attr('name', 'gMonth1WLDate' + newNum)
				.attr('tabindex', newNum*100 + 10)
				.val(''); 
		newElem.find("input[name^='gMonth2WLDate']")
				.attr('id', 'gMonth2WLDate' + newNum)
				.attr('name', 'gMonth2WLDate' + newNum)
				.attr('tabindex', newNum*100 + 20)
				.val(''); 
		newElem.find("input[name^='gMonth3WLDate']")
				.attr('id', 'gMonth3WLDate' + newNum)
				.attr('name', 'gMonth3WLDate' + newNum)
				.attr('tabindex', newNum*100 + 30)
				.val(''); 
		// insert the new element after the last "duplicatable" input field                 
		jQuery('#input' + num).after(newElem);  
		                
		// enable the "remove" button                 
		jQuery('#btnDelWell').attr('disabled',''); 
		                
		// business rule: you can only add 15 names                 
		if (newNum == 15)                    
			jQuery('#btnAddWell').attr('disabled','disabled');  
		
	});  
	             
	jQuery('#btnDelWell').click(function() {                
		var num = jQuery('.clonedInput').length; 
		// how many "duplicatable" input fields we currently have                
		jQuery('#input' + num).remove();     
		// remove the last element  
		                
		// enable the "add" button                 
		jQuery('#btnAddWell').attr('disabled',''); 
		                
		// if only one element remains, disable the "remove" button                
		if (num-1 == 1)                     
			jQuery('#btnDelWell').attr('disabled','disabled'); 
		
		calcLoss(1);
		calcLoss(2);
		calcLoss(3);
	}); 
	
	jQuery('#btnGo').click(function() {                
		var user = jQuery("#user").val();
		var id = jQuery("#idContactPermitHolder").val();
		var inputs = jQuery('#rptYear, #rptQuarter');   
		jQuery('#warnShown').val('false');
		// get an associative array of just the values.    
		formData = setFormData(inputs);
		var myurl = "../../includes/permit/qtrlyPumpReport_p.php?req=GET&idContactPermitHolder="+id+"&user="+user+"&dummy="+ new Date().getTime();
		jQuery.ajax({
			type: 'GET',
			url: myurl,
			data: formData,
			datatype: 'xml',
			error : function (XMLHttpRequest, textStatus, errorThrown){
		    	jQuery("#processResult").html("Get failed. "+textStatus);
			},
			complete : function(xml){
				var rtn = jQuery(xml.responseXML).find('rtn').text();
				if (rtn != 'OK'){
					if (rtn == 'Errors Found') {
						displaymsg = "<div style='border:1px solid black;font-weight:bold;color:Red;padding:5px;'>Please correct the following errors:\n<ul>";					
						jQuery(xml.responseXML).find('error').each(function() { 
							displaymsg = displaymsg + '<li>'+jQuery(this).text()+'</li>\n';
						});
						displaymsg = displaymsg + '</ul></div>';
						jQuery('#msgLine').html(displaymsg); 
						jQuery('#processResult').html(''); 
					} else {
						displaymsg = "<div style='font-weight:bold;color:Red;padding:5px;'>\n";					
						displaymsg = displaymsg + rtn +'\n';
						displaymsg = displaymsg + '</div>';
						jQuery('#msgLine').html(''); 
						jQuery('#processResult').html(displaymsg); 
					}
				}else{	
					jQuery('#msgLine').html(''); 
		        	jQuery('#processResult').html('Record displayed.\n');
					jQuery(xml.responseXML).find('pumpage').each(function()
					{
						var i = 0;
						var totGWPumped = 0;
						var totOtherSrcs = 0;
						var totSold = 0;
						var totLoss = 0;
						var totLossPct = 0;
						jQuery(this).find('row').each(function()
						{
							i++;
							var elemNamePumped = 'totMonth' + i + 'GWPumped';
							var elemNameOther = 'totMonth' + i + 'OtherSrcs';
							var elemNameSold = 'totMonth' + i + 'Sold';
							var elemNameConnection = 'totMonth' + i + 'Connections';
							var elemNameExplain = 'totMonth' + i + 'LossExplain';
							
							jQuery('#' + elemNamePumped).val(addCommas(jQuery(this).find('totalPumped').text()));
							jQuery('#' + elemNameOther).val(addCommas(jQuery(this).find('otherWaterSrcs').text()));
							jQuery('#' + elemNameSold).val(addCommas(jQuery(this).find('totalSold').text()));
							jQuery('#' + elemNameConnection).val(jQuery(this).find('numConnections').text());
							jQuery('#' + elemNameExplain).val(jQuery(this).find('lossExplain').text());		
							
							totGWPumped += parseInt(jQuery(this).find('totalPumped').text());
							totOtherSrcs += parseInt(jQuery(this).find('otherWaterSrcs').text());
							totSold += parseInt(jQuery(this).find('totalSold').text());
						
							calcLoss(i);
							totLoss = totGWPumped + totOtherSrcs - totSold;
							totLossPct = totLoss / (totGWPumped + totOtherSrcs)* 100;
							totLossPct = Math.round(totLossPct * 100)/ 100;
						
						});
						jQuery('#totGWPumped').html(addCommas(totGWPumped));
						jQuery('#totOtherSrcs').html(addCommas(totOtherSrcs));
						jQuery('#totSold').html(addCommas(totSold));
						jQuery('#totLoss').html(addCommas(totLoss));
						jQuery('#totLossPct').html(totLossPct + ' %');		
						
						displayLossExplain();
					});
					jQuery(xml.responseXML).find('welllevel').each(function()
					{
						var w = 0;
						return jQuery(this).find('well').each(function()
						{
							w++;
							var num = jQuery('.clonedInput').length; 
							if (w > num) {
								jQuery('#btnAddWell').click();
							}
							var elemNameWellNum = 'rptWellNum' + w;
							var elemNameWellName = 'rptWellName' + w;

							jQuery('#' + elemNameWellNum).val(jQuery(this).find('idWell').text());
							jQuery('#' + elemNameWellName).val(jQuery(this).find('idWellLocal').text());
							
							var i = 0;
							jQuery(this).find('row').each(function()
							{
								i++;
								var elemNameWaterLevel = 'gMonth' + i + 'WaterLevel' + w;
								var elemNameWLDate = 'gMonth' + i + 'WLDate' + w;
								
								jQuery('#' + elemNameWaterLevel).val(jQuery(this).find('waterLevel').text());
								jQuery('#' + elemNameWLDate).val(jQuery(this).find('dateWaterLevel').text());		
							
							});
						});
					});
				}
				}
		});	
		calcLoss(1);
		calcLoss(2);
		calcLoss(3);
	});
	       
	jQuery('#btnDelWell').attr('disabled','disabled');     
	
	jQuery('#rptQuarter').change(function(){
		 var selected = jQuery("#rptQuarter option:selected"); 	 
		 jQuery('#rptMonth1').val(3*selected.val()-2);
		 jQuery('#rptMonth2').val(3*selected.val()-1);
		 jQuery('#rptMonth3').val(3*selected.val());
		 jQuery('#rptMonth1C').html(jQuery('#rptMonth1 option:selected').text());
		 jQuery('#rptMonth2C').html(jQuery('#rptMonth2 option:selected').text());
		 jQuery('#rptMonth3C').html(jQuery('#rptMonth3 option:selected').text());
		 clearQtrlyForm();
	});
	jQuery('#rptYear').change(function(){
		 clearQtrlyForm();
	});
	jQuery('#idContactPermitHolder').change(function(){
		clearQtrlyForm();
	});
	jQuery('#rptMonth1').change(function(){
		 var selected = jQuery("#rptQuarter option:selected"); 	 
		 jQuery('#rptMonth1').val(3*selected.val()-2);  
	});
	jQuery('#rptMonth2').change(function(){
		 var selected = jQuery("#rptQuarter option:selected"); 	 
		 jQuery('#rptMonth2').val(3*selected.val()-1);  
	});
	jQuery('#rptMonth3').change(function(){
		 var selected = jQuery("#rptQuarter option:selected"); 	 
		 jQuery('#rptMonth3').val(3*selected.val());    
	});
//	jQuery("input[name^='gMonth1Pumped']").bind("change", function() { 
//		var value = jQuery(this).val();
//		var disp = addCommas(value);
//		jQuery('#gMonth1Pumped1').val(disp);
//		calcTotal(1);
//	}); 
//	jQuery("input[name^='gMonth2Pumped']").bind("change", function() { 
//		var value = jQuery(this).val();
//		var disp = addCommas(value);
//		jQuery('#gMonth2Pumped1').val(disp);
//		calcTotal(2);
//	}); 
//	jQuery("input[name^='gMonth3Pumped']").bind("change", function() { 
//		var value = jQuery(this).val();
//		var disp = addCommas(value);
//		jQuery('#gMonth3Pumped1').val(disp);
//		calcTotal(3);
//	}); 
	jQuery("#totMonth1GWPumped").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth1GWPumped').val(disp);
		calcLoss(1);
	}); 
	jQuery("#totMonth2GWPumped").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth2GWPumped').val(disp);
		calcLoss(2);
	}); 
	jQuery("#totMonth3GWPumped").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth3GWPumped').val(disp);
		calcLoss(3);
	});
	jQuery("#totMonth1OtherSrcs").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth1OtherSrcs').val(disp);
		calcLoss(1);
	}); 
	jQuery("#totMonth2OtherSrcs").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth2OtherSrcs').val(disp);
		calcLoss(2);
	}); 
	jQuery("#totMonth3OtherSrcs").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth3OtherSrcs').val(disp);
		calcLoss(3);
	});
	jQuery("#totMonth1Sold").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth1Sold').val(disp);
		calcLoss(1);
	}); 
	jQuery("#totMonth2Sold").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth2Sold').val(disp);
		calcLoss(2);
	}); 
	jQuery("#totMonth3Sold").bind("change", function() { 
		var value = jQuery(this).val();
		var disp = addCommas(value);
		jQuery('#totMonth3Sold').val(disp);
		calcLoss(3);
	});
	

}); 

linkFrmt = function(el, cellval, opts){
	jQuery(el).html(formatLink(cellval)); 
}

function jqLoadList(listName) {
	
	switch(listName){
	case 'well':
		jqLoadWell(listName);
		break;
	case 'wellregpend':
		jqLoadWellRegPend(listName);
		break;
	case 'permitentity':
		jqLoadPermitEntity(listName);
		break;
	case 'permitwell':
		jqLoadPermitWell(listName);
		break;
	case 'contact':
		jqLoadContact(listName);
		break;
	case 'rainfall':
		jqLoadRainfall(listName);
		break;
	case 'waterlevel':
		jqLoadWaterLevel(listName);
		break;
	case 'driller':
		jqLoadDriller(listName);
		break;
	case 'wellstatus':
		jqLoadWellStatus(listName);
		break;
	case 'wellpurpose':
		jqLoadWellPurpose(listName);
		break;
	case 'wellregpurpose':
		jqLoadWellRegPurpose(listName);
		break;
	case 'district':
		jqLoadDistrict(listName);
		break;
	case 'ncdcstation':
		jqLoadNCDCStation(listName);
		break;
	case 'userAttach':
		jqLoadUserAttach(listName);
		break;
	default:	    
	}
}
function jqLoadWell(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#wellRegDiv")
		    .jqm({overlay: 10, trigger: false})
			.jqDrag('.jqDrag')
			.jqResize('.jqResize');
//Well List
		jQuery("#"+listName).jqGrid({
		url:'../../includes/forms/routeHandlerXML.php?reqType=welllist',
	    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=wellupdate&user='+user,
		datatype: 'xml',      
		colModel:[ 
		{name:'idWell', index:'idWell', label:'idWell', 
		align:'right', width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}},
		{name:'wellName', index:'wellName', label:'Well Name',
		width:120 ,hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:60,maxlength:60}}, 
		{name:'idAddress', index:'idAddress', label:'Address ID',
		hidden: true, editable:false},
		{name:'addressLine1', index:'addressLine1', label:'Well Location',
		width:120, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
		{name:'addressLine2', index:'addressLine2', label:'Address 2',
		width:120, hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
		{name:'addressCity', index:'addressCity', label:'City',
		width:80,editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
		{name:'addressState', index:'addressState', label:'State',
		width:8,hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}}, 
		{name:'addressZip', index:'addressZip', label:'Zip',
		width:40,editable:true, edittype:"text",editoptions:{size:10,maxlength:10}},
		{name:'addressDirections', index:'addressDirections', label:'Directions',
		hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},
		{name:'nameLast', index:'nameLast', label: 'Owner Last',
		width:60,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
		{name:'nameCompany', index:'nameCompany',  label: 'Owner Company',
		width:120,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
		{name:'dtReceived', index:'dtReceived', label: 'Date Received',
		hidden:true, editable:false},
		{name:'idWellReg', index:'idWellReg', label:'Reg', 
		align:'right', width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}},
		{name:'idWellReportTrackingNumber', index:'idWellReportTrackingNumber', label:'WR #', 
		align:'right', width:40,editable:true, editoptions:{readonly:true, size:10,maxlength:10},
		formoptions:{label: 'Well Report Tracking Number'}},
		{name:'idWellStatus', index:'idWellStatus', label:'Well Status',
		width:100,editable:true, search:false,edittype:"select"},
		{name:'idDistrict', index:'idDistrict', label:'District', 
		hidden: true,editable:true, edittype:"select", editrules: {edithidden:true}},
		{name:'dms_lat_deg', index:'dms_lat_deg', label:'Latitude Degrees',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
		{name:'dms_lat_min', index:'dms_lat_min', label:'Latitude Minutes',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
		{name:'dms_lat_sec', index:'dms_lat_sec', label:'Latitude Seconds',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:6,maxlength:6}},
		{name:'dms_lat_hem', index:'dms_lat_hem', label:'Latitude Hemisphere',
		hidden: true,editable:true, search:false,edittype:"select",editrules: {edithidden:true},editoptions:{value:"1:N;-1:S"}},
		{name:'latitude', index:'latitude', label:'Latitude',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{readonly:true,size:14,maxlength:14}},
		{name:'dms_long_deg', index:'dms_long_deg', label:'Longitude Degrees',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
		{name:'dms_long_min', index:'dms_long_min', label:'Longitude Minutes',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
		{name:'dms_long_sec', index:'dms_long_sec', label:'Longitude Seconds',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:6,maxlength:6}},
		{name:'dms_long_hem', index:'dms_long_hem', label:'Longitude Hemisphere',
		hidden: true,editable:true, search:false,edittype:"select",editrules: {edithidden:true}, editoptions:{value:"-1:W;1:E"}},
		{name:'longitude', index:'longitude', label:'Longitude', 
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true, editoptions:{readonly:true,size:14,maxlength:14}}, 
		{name:'ftelevation', index:'ftelevation', label: 'Elevation',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 		
		{name:'ftMeasurePoint', index:'ftMeasurePoint', label: 'Measure Point',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 		
		{name:'gridNumber', index:'gridNumber', label:'Grid #',
		hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
		{name:'taxParcel', index:'taxParcel', label:'Tax Parcel',
		hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
		{name:'idNCDCStation', index:'idNCDCStation', label:'NCDC Station',
		hidden: true, search: false, editable:true, edittype:"select", editrules: {edithidden:true}},
		{name:'wellReportStaticWaterLevel', index:'wellReportStaticWaterLevel', label:'Static Water Level',
		hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
		{name:'sampleWell', index:'sampleWell', label: 'Sample Well',
		hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
		{name:'gammaLog', index:'gammaLog', label: 'gammaLog',
		hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
		{name:'monitoringWell', index:'monitoringWell', label: 'Monitoring Well',
		hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
		{name:'monitoringStartDate', index:'monitoringStartDate', label:'Monitoring Start Date', 
		hidden: true,editable:true, formatter:"date", formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
		edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
		{name:'comment', index:'comment', label:'Comment', 
		hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},	
		{name:'dtAdded', index:'dtAdded', label:'Date Added', 
		hidden: true,editable:true, edittype:"text",  
		editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
		{name:'addedBy', index:'addedBy', label:'Added By',
		hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
		{name:'dtLastModified', index:'dtLastModified', label:'Date Last Modified', 
		hidden: true,editable:true, edittype:"text",  
		editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
		{name:'modifiedBy', index:'modifiedBy', label:'Modified By',
		hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}} ],		
	    pager:jQuery("#p_"+listName),
	    rowNum:24,
	    height:260,
	    sortname: 'idWell',
	    sortorder: 'asc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Well List',
	    gridComplete: function() {
			var recs = parseInt(jQuery("#"+listName).getGridParam("records"),10);
			if (recs == 0) {
				jQuery("#gridWrapper").hide();
				}
			else {
				jQuery('#gridWrapper').show(); 
				}	    
		},
		loadComplete: function() {
			select_options = jQuery("#"+listName).getUserData();
			jQuery("#"+listName).setColProp('idWellStatus',{'editoptions': {'value':select_options['wellStatus']}});
			jQuery("#"+listName).setColProp('idDistrict',{'editoptions': {'value':select_options['district']}});
			jQuery("#"+listName).setColProp('idNCDCStation',{'editoptions': {'value':select_options['NCDCStation']}});
		},
		onSelectRow: function(id) {
			unconvertLatLong(listName, id);
			var well_id = jQuery("#"+listName).getCell(id,'idWell');
			fetchSubGrid("subWR_d",0, well_id);
		}
	  }).navGrid("#p_"+listName,{edit:true,add:false,del:false,view:true,search:true,refresh:true},		 
			  	{height:500,width:460,
		  		beforeShowForm:	beforeShow,
		  		reloadAfterSubmit:true,
			    afterSubmit:processResult,
			    beforeSubmit:convertLatLong,
			    onInitializeForm:setBackground,
			    closeAfterEdit: false}, // edit options
			    {}, // add options
				{}, // del options
				{height:80,width:400}, // search options
				{height:400,width:500,reloadAfterSubmit:false}, // view options
				{}// refresh options
	  			)
	 .navButtonAdd("#p_"+ listName,{
		caption: "",
		title:"Create Report", 
		buttonimg: "../../includes/scripts/jquery/themes/steel/images/page_excel.png", 
		position: "last", 
		onClickButton:function(){
			jQuery("#wellRptDiv")
			    .jqm({overlay: 10, trigger: false})
				.jqDrag('.jqDrag')
				.jqResize('.jqResize')
			    .jqmShow();
		}
	 })
	jqLoadWellReg("subWR_d", 0);
    function convertLatLong(fldArray){
		var gsr = jQuery("#"+listName).getGridParam('selrow');
		convertLatLongWell(listName,gsr,fldArray);
		document.FormPost.latitude.value = fldArray['latitude'];
		document.FormPost.longitude.value = fldArray['longitude'];
		return [true,'conversion complete']
	}
	function setBackground() {
		jQuery("#idWell").css({'background-color':'#CCCCCC'});
		jQuery("#idWellReg").css({'background-color':'#CCCCCC'});
		jQuery("#idWellReportTrackingNumber").css({'background-color':'#CCCCCC'});
		jQuery("#nameLast").css({'background-color':'#CCCCCC'});
		jQuery("#nameCompany").css({'background-color':'#CCCCCC'});
		jQuery("#latitude").css({'background-color':'#CCCCCC'});
		jQuery("#longitude").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }
})
}
function jqLoadWellReg(listName,mainGrid) {
	//Well Registration Grid
	if (mainGrid){
		xmlUrl = '../../includes/forms/routeHandlerXML.php?reqType=wellregpend';
		rows=24;
		enableSearch=true;
		enableDelete=true;
		denyHidden = false;
		companyHidden = true;
		paging=true;
		pageNum=1;
		pageText="/";
		locationProperties ="hidden: true,editable:true, edittype:'text',  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}";
	}else{
		xmlUrl = '../../includes/forms/routeHandlerXML.php?reqType=wellregsg&q=2&id=0';
		rows=4;
		enableSearch=false;
		enableDelete=false;
		denyHidden = true;
		companyHidden = false;
	    paging=false;
	    pageNum="";
	    pageText="";
	    locationProperties ="hidden: true";
	}
	jQuery("#" +listName).jqGrid({
		url: xmlUrl,
	    datatype: 'xml',
	    colModel:[ 
	        {name:'idWell', index:'idWell', label:'Well ID', hidden:true},   
			{name:'idWellReg', index:'idWellReg', label:'Reg ID',
			align:'right',width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'addressLine1_Location', index:'addressLine1_Location', label: 'Location Address', hidden: true}, 
			{name:'addressLine2_Location', index:'addressLine2_Location', label:  'LocationAddress 2', hidden: true},
			{name:'addressCity_Location', index:'addressCity_Location', label: 'Location City', hidden: true}, 
			{name:'addressState_Location', index:'addressState_Location', label: 'Location State', hidden: true}, 
			{name:'addressZip_Location', index:'addressZip_Location', label: 'Location Zip', hidden: true}, 
			{name:'addressDirections_Location', index:'addressDirections_Location', label: 'Zip', hidden: true}, 
			{name:'idContactOwner', index:'idContactOwner', label:'Owner Contact ID',
			hidden:true,editable:true, edittype:"text", editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'nameLast_Owner', index:'nameLast_Owner',label:'Owner Last',
			width:80, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
			{name:'nameFirst_Owner', index:'nameFirst_Owner', label:'First',
			width:60, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
			{name:'nameCompany_Owner', index:'nameCompany_Owner', label: 'Owner Company',
			width:100,hidden:companyHidden, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
			{name:'phonePrimary_Owner', index:'phonePrimary_Owner', label: 'Phone Primary',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'phoneAlternate_Owner', index:'phoneAlternate_Owner', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'phoneFax_Owner', index:'phoneFax_Owner', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'email_Owner', index:'email_Owner', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'idAddress_Owner', index:'idAddress_Owner', label: 'Address ID',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'addressLine1_Owner', index:'addressLine1_Owner', label: 'Address',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'addressLine2_Owner', index:'addressLine2_Owner', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressCity_Owner', index:'addressCity_Owner', label: 'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressState_Owner', index:'addressState_Owner', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}},
			{name:'addressZip_Owner', index:'addressZip_Owner', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'idWellRegPurpose', index:'idWellRegPurpose', label: 'Purpose',
			width:150,editable:true, edittype:"select", search:false},
			{name:'alterDesc', index:'alterDesc', label: 'Alteration Desc',
			hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},
			{name:'dtStartDrill', index:'dtStartDrill', label: 'Date Start Drill',
			hidden: true,editable:true, formatter:"date", formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'latitude', index:'latitude', label:  'Latitude',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'longitude', index:'longitude', label:  'Longitude',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftelevation', index:'ftelevation', label:  'Elevation',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftClosestPropertyLine', index:'ftClosestPropertyLine', label: 'Closest Property Line',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftExistingWell', index:'ftExistingWell', label: 'Existing Well Distance',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftContaminate', index:'ftContaminate', label:  'Contaminate Distance',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftWasteWater', index:'ftWasteWater', label: 'Waste Water Distance', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'ftSepticTank', index:'ftSepticTank', label: 'Septic Tank Distance', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'flWithin50ftPWS', index:'flWithin50ftPWS', label: 'Within 50ft PWS',
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'pws', index:'pws', label:'PWS',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'idContactDriller', index:'idContactDriller', label: 'Driller Contact ID',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'nameCompanyList_Driller', index:'nameCompanyList_Driller', label: 'Driller',
			width:100,editable:true, edittype:"text",editoptions:{readonly:true,size:45,maxlength:45}}, 		
			{name:'nameLast_Driller', index:'nameLast_Driller',label:'Last Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'nameFirst_Driller', index:'nameFirst_Driller', label:'First Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'nameCompany_Driller', index:'nameCompany_Driller', label: 'Driller',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},  
			{name:'phonePrimary_Driller', index:'phonePrimary_Driller', label: 'Phone Primary',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'phoneAlternate_Driller', index:'phoneAlternate_Driller', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'phoneFax_Driller', index:'phoneFax_Driller', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'email_Driller', index:'email_Driller', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'numTCEQ_Driller', index:'numTCEQ_Driller', label: 'TCEQ Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'numLicense_Driller', index:'numLicense_Driller', label: 'License Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'idAddress_Driller', index:'idAddress_Driller', label: 'Address ID',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:105}}, 
			{name:'addressLine1_Driller', index:'addressLine1_Driller', label: 'Address',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'addressLine2_Driller', index:'addressLine2_Driller', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'addressCity_Driller', index:'addressCity_Driller', label: 'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'addressState_Driller', index:'addressState_Driller', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:2,maxlength:2}},
			{name:'addressZip_Driller', index:'addressZip_Driller', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'idContactInstaller', index:'idContactInstaller', label: 'Pump Installer Contact ID',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'nameLast_Installer', index:'nameLast_Installer',label:'Last Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'nameFirst_Installer', index:'nameFirst_Installer', label:'First Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'nameCompany_Installer', index:'nameCompany_Installer', label: 'Company',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'phonePrimary_Installer', index:'phonePrimary_Installer', label: 'Phone Primary',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'phoneAlternate_Installer', index:'phoneAlternate_Installer', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'phoneFax_Installer', index:'phoneFax_Installer', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'email_Installer', index:'email_Installer', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'numTCEQ_Installer', index:'numTCEQ_Installer', label: 'TCEQ Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'numLicense_Installer', index:'numLicense_Installer', label: 'License Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 					
			{name:'idAddress_Installer', index:'idAddress_Installer', label: 'Address ID',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:105}}, 
			{name:'addressLine1_Installer', index:'addressLine1_Installer', label: 'Address',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}}, 
			{name:'addressLine2_Installer', index:'addressLine2_Installer', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'addressCity_Installer', index:'addressCity_Installer', label: 'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'addressState_Installer', index:'addressState_Installer', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:2,maxlength:2}},
			{name:'addressZip_Installer', index:'addressZip_Installer', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'sizeCasing', index:'sizeCasing', label: 'Casing Size',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'depthWell', index:'depthWell', label: 'Well Depth', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'sizePump', index:'sizePump', label:'Pump Size',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'capProduction', index:'capProduction', label:'Production Capacity',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'locWaterUse', index:'locWaterUse', label: 'Water Use Location', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'flResidential', index:'flResidential', label: 'Residential', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'flDomestic', index:'flDomestic', label: 'Domestic', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'flAgricultural', index:'flAgricultural', label: 'Agricultural', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flGeothermalExempt', index:'flGeothermalExempt', label: 'Geothermal Exempt', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flIrrigation', index:'flIrrigation', label: 'Irrigation', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'flPWS', index:'flPWS', label: 'PWS', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'flRetailPWS', index:'flRetailPWS', label: 'Retail PWS', 
			hidden: true,editable:true, edittype:"checkbox", Commercial: {edithidden:true}},
			{name:'flCommercial', index:'flCommercial', label: 'Commercail', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flDewatering', index:'flDewatering', label: 'De-watering Well', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flIndustrial', index:'flIndustrial', label: 'Industrial ', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flInjection', index:'flInjection', label: 'Injection Well', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flMonitor', index:'flMonitor', label: 'Monitor Well', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flAquiferTestObser', index:'flAquiferTestObser', label: 'Aquifer Test Observation Well', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flAquiferTestPump', index:'flAquiferTestPump', label: 'Aquifer Test Pumping Well', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flRemediation', index:'flRemediation', label: 'Remediation', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flGeothermalNonExempt', index:'flGeothermalNonExempt', label: 'Geothermal NonExempt', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'flOther', index:'flOther', label: 'Other', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'OtherDesc', index:'OtherDesc', label: 'Other Purpose Desc',
			hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},
			{name:'idContactPreparer', index:'idContactPreparer', label: 'Preparer Contact ID',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'nameLast_Preparer', index:'nameLast_Preparer',label:'Last Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'nameFirst_Preparer', index:'nameFirst_Preparer', label:'First Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'nameCompany_Preparer', index:'nameCompany_Preparer', label: 'Company',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'phonePrimary_Preparer', index:'phonePrimary_Preparer', label: 'Phone Primary',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'phoneAlternate_Preparer', index:'phoneAlternate_Preparer', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'phoneFax_Preparer', index:'phoneFax_Preparer', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'email_Preparer', index:'email_Preparer', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'idAddress_Preparer', index:'idAddress_Preparer', label: 'Address ID',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'addressLine1_Preparer', index:'addressLine1_Preparer', label: 'Address',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'addressLine2_Preparer', index:'addressLine2_Preparer', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressCity_Preparer', index:'addressCity_Preparer', label: 'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressState_Preparer', index:'addressState_Preparer', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}},
			{name:'addressZip_Preparer', index:'addressZip_Preparer', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'dtReceived', index:'dtReceived', label:'Received',
			width:60, editable:true, formatter:"date", formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'dtExpires', index:'dtExpires', label: 'Expires',
			hidden: true,editable:true, formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtWellReportDue', index:'dtWellReportDue', label:  'Well Report Due',
			hidden: true,editable:true, formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'docWellRegistration', index:'docWellRegistration', label:'WellRegistration Doc',
			hidden: true,editable:true, formatter:linkFrmt, editrules: {edithidden:true}},
			{name:'docPlat', index:'docPlat', label: 'Plat Doc',
			hidden: true,editable:true, formatter:linkFrmt, editrules: {edithidden:true}},
			{name:'docConfirmation', index:'docConfirmation', label:'Reg Confirmation Doc',
			hidden: true,editable:true, formatter:linkFrmt, editrules: {edithidden:true}},
			{name:'docStateWellReport', index:'docStateWellReport', label:'State Well Report Doc',
			hidden: true,editable:true, formatter:linkFrmt, editrules: {edithidden:true}},
			{name:'docOther', index:'docOther', label:'Other Doc',
			hidden: true,editable:true, formatter:linkFrmt, editrules: {edithidden:true}},
			{name:'idWellReportTrackingNumber', index:'idWellReportTrackingNumber', label: 'WR Tracking #',
			hidden: true,editable:true, edittype: "text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'gridNumber', index:'gridNumber', label: 'Grid #',
			hidden: true,editable:true, edittype: "text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'taxParcel', index:'taxParcel', label: 'Tax Parcel',
			hidden: true,editable:true, edittype: "text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'amtPaid', index:'amtPaid', label: 'Paid Amount',
			hidden: true,editable:true, edittype: "text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'checkNumber', index:'checkNumber', label: 'Check Number', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'realEstateTxn', index:'realEstateTxn', label: 'Real Estate Txn', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}},
			{name:'realEstateTxnNumber', index:'realEstateTxnNumber', label: 'Real Estate Txn Number', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'comment', index:'comment', label:'Comments', 
			hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},
			{name:'dtApproved', index:'dtApproved', label:'Approved', 
			width:60, editable:true, formatter:"date", formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'approvedBy', index:'approvedBy', label: 'Approved By', 
			hidden: true, editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtDenied', index:'dtDenied', label:'Denied', 
			width:60, hidden:denyHidden, editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}}, 
			{name:'deniedBy', index:'deniedBy', label: 'Denied By', 
			hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtAdded', index:'dtAdded', label: 'Added', 
			hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By', 
			hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtLastModified', index:'dtLastModified', label: 'Date LastModified',
			hidden: true,editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label: 'Modified By',
			hidden: true, editable:true, edittype:"text", editoptions:{readonly:true,size:22,maxlength:22}} 
	    ],		
	    pager: jQuery("#p_"+listName),
	    pgbuttons:paging,
	    pginput:paging,
	    page:pageNum,
	    pgtext:pageText,
	    rowNum:rows,
	    height:80,
	    sortname: 'dtReceived desc, idWellReg',
	    sortorder: 'desc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Well Registration List',
	    height: '100%',
		loadComplete: function() {
			if (jQuery('#idWellRegPurpose option').size()==0) {
				var select_options = jQuery("#"+listName).getUserData();
				var obj = select_options['wellRegPurpose'];
				var wellRegOptions = obj.split(";");
				jQuery.each(wellRegOptions, function(val, text) {
					var entry = text.split(":");
					var newOpt = "<option value=" + entry[0] + ">"+ entry[1] +"</option>";
					jQuery("#idWellRegPurpose").append(newOpt);
				});
			}
		}
	})
	.navGrid("#p_"+ listName,{edit:false,add:false,del:enableDelete,view:true, search:enableSearch,refresh:true},
			{}, // add options
			{}, // edit options
		    {}, // del options
		    {height:80,width:400}, // search options
		    {height:400,width:500,AfterSubmit:false}, // view options
			{} // refresh options
	)
	.navButtonAdd("#p_"+ listName,{
		caption: "",
		title:"Edit Button", 
		buttonimg: "../../includes/scripts/jquery/themes/steel/images/row_edit.gif", 
		position: "first", 
		onClickButton:function(){
			var gsr = jQuery("#"+listName).getGridParam('selrow');
			if(gsr){	
				jQuery("input#sfSelRow").val(gsr);
				jQuery("#"+listName).GridToForm(gsr,"#wellRegForm");
				jQuery("#processResult").html("");
				jQuery("#processResultModal").html("");
				createLink('docWellRegistration');	
				createLink('docPlat');
				createLink('docConfirmation');
				createLink('docStateWellReport');
				createLink('docOther');
				jQuery("#wellRegDiv").jqmShow();
			} else {
				alert("Please select Row");
			}
		}
	});
}
function jqLoadWellRegPend(listName){
		
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#wellRegDiv")
		    .jqm({overlay: 10, trigger: false})
			.jqDrag('.jqDrag')
			.jqResize('.jqResize');
	    jqLoadWellReg(listName,1); 
	    jQuery("#"+listName).setCaption("Well Registration Pending");
	    jQuery("#"+listName).setGridHeight(260);
	});
}
function jqLoadPermitEntity(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=permitentitylist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=permitentityupdate&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idPermitEntity', index:'idPermitEntity', label:'idPermitEntity', 
			align:'right', width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'idContact', index:'idContact', label:'Contact ID',
			hidden: true, editable:false},
			{name:'nameCompany', index:'nameCompany',  label: 'Company',
			width:120,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'nameLast', index:'nameLast', label: 'Last',
			width:100,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'nameFirst', index:'nameFirst', label: 'First',
			width:100,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'idPermitCategory', index:'idPermitCategory', label:'Permit Category',
			width:200,editable:true, search:false,edittype:"select"},
			{name:'idAddress', index:'idAddress', label:'Address ID',
			hidden: true, editable:false},
			{name:'addressLine1', index:'addressLine1', label:'Address 1',
			hidden: true, editable:true, edittype:"text", editrules: {edithidden:true}, editoptions:{size:45,maxlength:45}}, 
			{name:'addressLine2', index:'addressLine2', label:'Address 2',
			hidden: true, hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'addressCity', index:'addressCity', label:'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true}, editoptions:{size:45,maxlength:45}}, 
			{name:'addressState', index:'addressState', label:'State',
			hidden: true,hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}}, 
			{name:'addressZip', index:'addressZip', label:'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'phonePrimary', index:'phonePrimary', label: 'Phone Primary',
			width: 120,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'phoneAlternate', index:'phoneAlternate', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'phoneFax', index:'phoneFax', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'email', index:'email', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'dtAdded', index:'dtAdded', label:'Date Added', 
			hidden: true,editable:true, edittype:"text",  
			editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtLastModified', index:'dtLastModified', label:'Date Last Modified', 
			hidden: true,editable:true, edittype:"text",  
			editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label:'Modified By',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}} ],		
		    pager:jQuery("#p_"+listName),
		    rowNum:24,
		    height:260,
		    sortname: 'idPermitEntity',
		    sortorder: 'asc',
		    viewrecords: true,
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'Permit Entity List',
		    gridComplete: function() {
				var recs = parseInt(jQuery("#"+listName).getGridParam("records"),10);
				if (recs == 0) {
					jQuery("#gridWrapper").hide();
					}
				else {
					jQuery('#gridWrapper').show(); 
					}	    
			},
			loadComplete: function() {
				var select_options = jQuery("#"+listName).getUserData();
				jQuery("#"+listName).setColProp('idPermitCategory',{'editoptions': {'value':select_options['permitCategory']}});				
			},
			onSelectRow: function(id) {
				var permitentity_id = jQuery("#"+listName).getCell(id,'idPermitEntity');
				fetchSubGridPermit("subPermit_d",0, permitentity_id);
				fetchSubGridPermitWell("subPermit_w",0, permitentity_id);
			}
	  }).navGrid("#p_"+listName,{add:true,edit:true,del:false,view:true, search:true,refresh:true},
			  	{height:500,width:440,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm: setBackground}, // add options
			  	{height:500,width:440,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm: setBackground,
		  		reloadAfterSubmit:true,
			    afterSubmit:processResult,
			    closeAfterEdit: false}, // edit options
			    {height:200,width:440}, //del options
				{height:100,width:440}, // search options
				{height:500,width:440,		    	
				reloadAfterSubmit:false}, // view options
				{}// refresh options
	 )
	 .navButtonAdd("#p_"+ listName,{
		caption: "",
		title:"Create Report", 
		buttonimg: "../../includes/scripts/jquery/themes/steel/images/page_excel.png", 
		position: "last", 
		onClickButton:function(){
		 	jQuery("#startDate").val("");
		    jQuery("#endDate").val("");
		    jQuery("#reportResult").html("");
			jQuery("#permitRptDiv")
			    .jqm({overlay: 10, trigger: false})
				.jqDrag('.jqDrag')
				.jqResize('.jqResize')
			    .jqmShow();
		}
	 })
	 jqLoadPermit("subPermit_d", 0);
	 jqLoadPermitWell("subPermit_w", 0);
	function setBackground(formid) {
		jQuery("#idPermitEntity").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }
});
}

function jqLoadPermit(listName,mainGrid) {
	xmlUrl = '../../includes/forms/routeHandlerXML.php?reqType=permitsg&q=2&id=0';
	rows=4;
	enableSearch=false;
    paging=false;
    pageNum="";
    pageText="";
    var user = document.getElementById('user').value;
	jQuery("#" +listName).jqGrid({
		url: xmlUrl,
	    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=permitupdate&user='+user,
	    datatype: 'xml',   
  		colModel:[ 
			{name:'idPermitEntity', index:'idPermitEntity', label:'Permit Entity ID',hidden: true},
			{name:'idPermit', index:'idPermit', label:'Permit ID',
			align:'right',width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'dtReceived', index:'dtReceived', label:'Date Received',
			align:'right',width:80,editable:true,  formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'dtEntered', index:'dtEntered', label:'Date Entered',
			hidden: true,editable:true, editrules: {edithidden:true}, formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'idPermitType', index:'idPermitType', label:'Type',
			width: 50, editable:true, search:false,edittype:"select"},
			{name:'idPermitStatus', index:'idPermitStatus', label:'Status',
			width:100,editable:true, search:false,edittype:"select"},
			{name:'flWellRegistration', index:'flWellRegistration', label: 'Well Reg Flag',
			hidden: true, editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'idWellReg', index:'idWellReg', label: 'Well Reg',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'numCCN', index:'numCCN', label: 'CCN',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'areaCCN', index:'areaCCN', label: 'CCN Area',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'flMapPlat', index:'flMapPlat', label:  'Map Plat Flag',
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'dtSigned', index:'dtSigned', label: 'Date Signed',
			hidden: true,editable:true, editrules: {edithidden:true}, formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'signedBy', index:'signedBy', label:'Signed By',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'dtHearing', index:'dtHearing', label: 'Hearing Date',
			hidden: true,editable:true, editrules: {edithidden:true},formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'dtPermitted', index:'dtPermitted', label: 'Permit Date',
			width: 80,editable:true, editrules: {edithidden:true}, formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'dtExpiration', index:'dtExpiration', label: 'Expiration Date',
			width: 80,editable:true, editrules: {edithidden:true},formatter:"date",formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'}},
			{name:'reqGPY', index:'reqGPY', label: 'Requested GPY', 
			width: 100, align:'right', editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:20,maxlength:20}},
			{name:'permitGPY', index:'permitGPY', label: 'Permit GPY', 
			hidden: true, align:'right', editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:20,maxlength:20}},
			{name:'permitAcreFeet', index:'permitAcreFeet', label: 'Permit Acre Feet',
			width: 100, align:'right', editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:20,maxlength:20}},
			{name:'notes', index:'notes', label: 'Notes',
			hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},
			{name:'flAquiferTestWellPermit', index:'flAquiferTestWellPermit', label: 'Aquifer Test Well Permit', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'docAquiferTestWellPermit', index:'docAquiferTestWellPermit', label:'Aquifer Test Well Document',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'flAquiferTestReport', index:'flAquiferTestReport', label: 'Aquifer Test Report', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'docAquiferTestReport', index:'docAquiferTestReport', label:'Aquifer Test Report Documnet',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'flWaterConservationPlan', index:'flWaterConservationPlan', label: 'Water Conservation Plan', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}},
			{name:'docWaterConservationPlan', index:'docWaterConservationPlan', label:'Water Conservation Plan Document',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'flDroughtContingencyPlan', index:'flDroughtContingencyPlan', label: 'Drought Contingency Plan', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'docDroughtContingencyPlan', index:'docDroughtContingencyPlan', label:'Drought Contingency Plan Document',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'flProofPublishedNotice', index:'flProofPublishedNotice', label: 'Published Notice Proof', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}}, 
			{name:'docProofPublishedNotice', index:'docProofPublishedNotice', label:'Published Notice Proof Document',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 			
			{name:'flProofMailedNotice', index:'flProofMailedNotice', label: 'Mailed Notice Proof', 
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}, editoptions: {value:"1:0"}},
			{name:'docProofMailedNotice', index:'docProofMailedNotice', label:'Mailed Notice Proof Document',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 	
			{name:'idContactPreparer', index:'idContactPreparer', label: 'Preparer ID',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'nameCompany', index:'nameCompany', label: 'Company',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'nameLast', index:'nameLast',label:'Last Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'nameFirst', index:'nameFirst', label:'First Name',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'phonePrimary', index:'phonePrimary', label: 'Phone Primary',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'phoneAlternate', index:'phoneAlternate', label: 'Phone Alternate',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'phoneFax', index:'phoneFax', label: 'Fax',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:24,maxlength:24}}, 
			{name:'email', index:'email', label: 'Email',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'numTCEQ', index:'numTCEQ', label: 'TCEQ Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'numLicense', index:'numLicense', label: 'License Number',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 					
			{name:'idAddress', index:'idAddress', label: 'Address ID',
			hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:105}}, 
			{name:'addressLine1', index:'addressLine1', label: 'Address',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'addressLine2', index:'addressLine2', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressCity', index:'addressCity', label: 'City',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressState', index:'addressState', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}},
			{name:'addressZip', index:'addressZip', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'dtAdded', index:'dtAdded', label: 'Added', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtLastModified', index:'dtLastModified', label: 'Date LastModified',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label: 'Modified By',
			hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}} 
	    ],		
	    pager: jQuery("#p_"+listName),
	    pgbuttons:paging,
	    pginput:paging,
	    page:pageNum,
	    pgtext:pageText,
	    rowNum:rows,
	    height:80,
	    sortname: 'idPermit desc, dtReceived',
	    sortorder: 'desc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Permit List',
	    height: '100%',
		loadComplete: function() {
			var select_options = jQuery("#"+listName).getUserData();
			jQuery("#"+listName).setColProp('idPermitType',{'editoptions': {'value':select_options['permitType']}});				
			jQuery("#"+listName).setColProp('idPermitStatus',{'editoptions': {'value':select_options['permitStatus']}});				
		}
	}).navGrid("#p_"+ listName,{edit:true,add:true,del:true,search:enableSearch,refresh:true},
		    {height:500,width:600,		// edit options  
			beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
			reloadAfterSubmit:true,
			afterSubmit:processResult,
			closeAfterEdit: false}, 
		    {height:500,width:600,     // add options
  			reloadAfterSubmit:true,
  			beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
  			afterSubmit:processResult,
  			onclickSubmit: function() {
				var sr = jQuery("#permitentity").getGridParam('selrow');
				var idPermitEntity = jQuery("#permitentity").getCell(sr,0);
				keyId= {"idPermitEntity":idPermitEntity}; 
				return keyId;
				},
  			closeAfterEdit: false}, 
  			{},                       // del options
  			{height:100,width:440},    // search options
  			{height:500,width:600,    // view options
  			reloadAfterSubmit:false}, 
  			{}                      // refresh options
	)
	function setBackground(formid) {
		jQuery("#idPermit").css({'background-color':'#CCCCCC'});
		jQuery("#idPermitEntity").css({'background-color':'#CCCCCC'});
		jQuery("#idContactPreparer").css({'background-color':'#CCCCCC'});
		jQuery("#idAddress").css({'background-color':'#CCCCCC'});
		jQuery("#idContactPreparer").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }	
}
function jqLoadPermitWell(listName,mainGrid) {
	xmlUrl = '../../includes/forms/routeHandlerXML.php?reqType=permitwellsg&q=3&id=0';
	rows=4;
    paging=false;
    pageNum="";
    pageText="";
    var user = document.getElementById('user').value;  
	jQuery("#" +listName).jqGrid({
		url: xmlUrl,
	    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=permitwellupdate&user='+user,
	    datatype: 'xml',   
  		colModel:[ 
			{name:'idPermitEntity', index:'idPermitEntity', label:'Permit Entity ID',hidden: true},
			{name:'idWell', index:'idWell', label:'Well ID',
			align:'right',width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'wellName', index:'wellName', label:'Well Name',
			align:'left',width:120,editable:true, editoptions:{readonly:true,size:10,maxlength:10}}, 
			{name:'idWellStatus', index:'idWellStatus', label:'Well Status',
			hidden: true,editable:true, search:false,edittype:"select"},
			{name:'idDistrict', index:'idDistrict', label:'District', 
			hidden: true,editable:true, edittype:"select", editrules: {edithidden:true}},
			{name:'dms_lat_deg', index:'dms_lat_deg', label:'Latitude Degrees',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
			{name:'dms_lat_min', index:'dms_lat_min', label:'Latitude Minutes',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
			{name:'dms_lat_sec', index:'dms_lat_sec', label:'Latitude Seconds',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:6,maxlength:6}},
			{name:'dms_lat_hem', index:'dms_lat_hem', label:'Latitude Hemisphere',
			hidden: true,editable:true, search:false,edittype:"select",editrules: {edithidden:true},editoptions:{value:"1:N;-1:S"}},
			{name:'latitude', index:'latitude', label:'Latitude',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{readonly:true,size:14,maxlength:14}},
			{name:'dms_long_deg', index:'dms_long_deg', label:'Longitude Degrees',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
			{name:'dms_long_min', index:'dms_long_min', label:'Longitude Minutes',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:3,maxlength:3}},
			{name:'dms_long_sec', index:'dms_long_sec', label:'Longitude Seconds',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true,editoptions:{size:6,maxlength:6}},
			{name:'dms_long_hem', index:'dms_long_hem', label:'Longitude Hemisphere',
			hidden: true,editable:true, search:false,edittype:"select",editrules: {edithidden:true}, editoptions:{value:"-1:W;1:E"}},
			{name:'longitude', index:'longitude', label:'Longitude', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},number:true, editoptions:{readonly:true,size:14,maxlength:14}}, 
			{name:'ftelevation', index:'ftelevation', label: 'Elevation',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 		
			{name:'gridNumber', index:'gridNumber', label:'Grid #',
			align:'right',width:80, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'idNCDCStation', index:'idNCDCStation', label:'NCDC Station',
			hidden: true, search: false, editable:true, edittype:"select", editrules: {edithidden:true}},
			{name:'wellReportStaticWaterLevel', index:'wellReportStaticWaterLevel', label:'Static Water Level',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
			{name:'sampleWell', index:'sampleWell', label: 'Sample Well',
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'gammaLog', index:'gammaLog', label: 'gammaLog',
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'monitoringWell', index:'monitoringWell', label: 'Monitoring Well',
			hidden: true,editable:true, edittype:"checkbox", editrules: {edithidden:true}}, 
			{name:'monitoringStartDate', index:'monitoringStartDate', label:'Monitoring Start Date', 
			hidden: true,editable:true, edittype:"text",  
			editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'comment', index:'comment', label:'Comment', 
			hidden: true,editable:true, edittype:"textarea", editrules: {edithidden:true},editoptions:{rows:3,cols:50}},	
			{name:'addressLine1', index:'addressLine1', label: 'Address',
			align:'left',width:140,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'addressLine2', index:'addressLine2', label:  'Address 2',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressCity', index:'addressCity', label: 'City',
			align:'left',width:90, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}},
			{name:'addressState', index:'addressState', label: 'State',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}},
			{name:'addressZip', index:'addressZip', label: 'Zip',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
			{name:'addressDirections', index:'addressDirections', label: 'Directions',
			align:'left',width:180,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
			{name:'dtAdded', index:'dtAdded', label: 'Added', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'dtLastModified', index:'dtLastModified', label: 'Date LastModified',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label: 'Modified By',
			hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}} 
	    ],		
	    pager: jQuery("#p_"+listName),
	    pgbuttons:paging,
	    pginput:paging,
	    page:pageNum,
	    pgtext:pageText,
	    rowNum:rows,
	    height:80,
	    sortname: 'idWell',
	    sortorder: 'asc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Permit Well List',
	    height: '100%',
		loadComplete: function() {
			select_options = jQuery("#"+listName).getUserData();
			jQuery("#"+listName).setColProp('idDistrict',{'editoptions': {'value':select_options['district']}});
			jQuery("#"+listName).setColProp('idNCDCStation',{'editoptions': {'value':select_options['NCDCStation']}});
		},
		onSelectRow: function(id) {
			unconvertLatLong(listName, id);
		}
	}).navGrid("#p_"+ listName,{edit:true,add:false,del:true,search:false,refresh:true},
		    {height:500,width:600,		// edit options  
			top: 120, left: 200,
			beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
			reloadAfterSubmit:true,
			afterSubmit:processResult,
			closeAfterEdit: false}, 
		    {height:500,width:600,     // add options
  			reloadAfterSubmit:true,
  			beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
  			afterSubmit:processResult,
  			onclickSubmit: function() {
				var sr = jQuery("#permitentity").getGridParam('selrow');
				var idPermitEntity = jQuery("#permitentity").getCell(sr,0);
				keyId= {"idPermitEntity":idPermitEntity}; 
				return keyId;
				},
  			closeAfterEdit: false}, 
  			{top: 120, left: 200,
  			onclickSubmit: function() {
				var sr = jQuery("#" +listName).getGridParam('selrow');
				var idPermitEntity = jQuery("#" +listName).getCell(sr,0);
				var idWell = jQuery("#" +listName).getCell(sr,1);
				keyId = {"idPermitEntity":idPermitEntity,"idWell":idWell}; 
				return keyId;
				}
  			},                       // del options
  			{height:100,width:440,
  			top: 120, left: 200},    // search options
  			{height:500,width:600,    // view options
  			top: 120, left: 200,
  			reloadAfterSubmit:false}, 
  			{}                      // refresh options
		)
	.navButtonAdd("#p_"+ listName,{
		caption: "",
		title:"Add Button", 
		buttonimg: "../../includes/scripts/jquery/themes/steel/images/row_add.gif", 
		position: "first", 
		onClickButton:function(){
			var gsr = jQuery("#permitentity").getGridParam('selrow');
			if(gsr){	
				jQuery("input#sfSelRow").val(gsr);
				jQuery("input#sfPermittedEntity").val(jQuery("#permitentity").getCell(gsr,0));
				jQuery("#processResult").html("");
				jQuery("#permitWellDiv")
					.jqm({overlay: 10, trigger: false})
					.jqDrag('.jqDrag')
					.jqResize('.jqResize')
				    .jqmShow();
			} else {
				alert("Please select Row");
			}
		}
	})
	function setBackground(formid) {
		jQuery("#idWell").css({'background-color':'#CCCCCC'});
		jQuery("#idAddress").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }
}
function jqLoadWellStatus(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=wellstatuslist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=wellstatus&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idWellStatus', index:'idWellStatus', label:'idWellStatus', 
			align:'right', width:100,editable:true, editoptions:{size:10,maxlength:10}},
			{name:'wellStatusDesc', index:'wellStatusDesc', label:'Well Status Description', 
			align:'left', width:200,editable:true, edittype:"text",editoptions:{size:120,maxlength:120}}
			],		
		    pager:jQuery("#p_"+listName),
		    rowNum:10,
		    sortname: 'idWellStatus',
		    sortorder: 'asc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'Well Status'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:200,width:500,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idDistrict = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idDistrict":idDistrict}; 
			return keyId;
		}
});
}
function jqLoadWellPurpose(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=wellpurposelist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=wellpurpose&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idWellPurpose', index:'idWellPurpose', label:'idWellPurpose', 
			align:'right', width:100,editable:true, editoptions:{size:10,maxlength:10}},
			{name:'wellPurposeDesc', index:'wellPurposeDesc', label:'Well Purpose Description', 
			align:'left', width:200,editable:true, edittype:"text",editoptions:{size:50,maxlength:50}},
			{name:'wellPurposeLongDesc', index:'wellPurposeLongDesc', label:'Well Purpose Long Description', 
			align:'left', width:400, editable:true, edittype:"textarea",editoptions:{rows:10,cols:50}}
			],		
		    pager:jQuery("#p_"+listName),
		    rowNum:10,
		    sortname: 'idWellPurpose',
		    sortorder: 'asc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'Well Purpose'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:200,width:500,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idWellPurpose = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idWellPurpose":idWellPurpose}; 
			return keyId;
		}
});
}
function jqLoadWellRegPurpose(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
		url:'../../includes/forms/routeHandlerXML.php?reqType=wellregpurposelist',
	    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=wellregpurpose&user='+user,
		datatype: 'xml',      
		colModel:[ 
		{name:'idWellRegPurpose', index:'idWellRegPurpose', label:'idWellRegPurpose', 
		align:'right', width:40,editable:true, editoptions:{readonly:true,size:10,maxlength:10}},
		{name:'wellRegPurposeDesc', index:'wellRegPurposeDesc', label:'Well Reg Purpose Desc', 
		align:'right', width:300,editable:true, edittype:"text",editoptions:{size:120,maxlength:120}}
		],		
	    pager:jQuery("#p_"+listName),
	    rowNum:10,
	    sortname: 'idWellRegPurpose',
	    sortorder: 'asc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Well Registration Purpose'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:200,width:500,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
	  );
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idWellRegPurpose = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idWellRegPurpose":idWellRegPurpose}; 
			return keyId;
		}
});
}
function jqLoadDistrict(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=districtlist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=district&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idDistrict', index:'idDistrict', label:'idDistrict', 
			align:'left', width:100,editable:true, editoptions:{size:10,maxlength:10}},
			{name:'districtDesc', index:'districtDesc', label:'Description', 
			align:'left', width:400,editable:true, edittype:"text",editoptions:{size:60,maxlength:60}}
			],
			pager: jQuery("#p_"+listName),
		    rowNum:10,
		    sortname: 'idDistrict',
		    sortorder: 'asc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'District'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:200,width:500,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idDistrict = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idDistrict":idDistrict}; 
			return keyId;
		}
});
}
function jqLoadNCDCStation(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=ncdclist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=ncdc&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idNCDCStation', index:'idNCDCStation', label:'idNCDCStation', 
			align:'right', width:80,editable:true, editoptions:{readonly:true,size:10,maxlength:10}},
			{name:'NCDCStationDesc', index:'NCDCStationDesc', label:'NCDC Station Desc', 
			align:'right', width:200,editable:true, edittype:"text",editoptions:{size:120,maxlength:120}},
			{name:'idCOOP', index:'idCOOP', label:'idCOOP', 
			align:'right', width:80,editable:true, edittype:"text",editoptions:{size:10,maxlength:10}},
			{name:'latitude', index:'latitude', label:'NCDC Station Latitude', 
			align:'right', width:120,editable:true, edittype:"text",editoptions:{size:16,maxlength:16}},
			{name:'longitude', index:'longitude', label:'NCDC Station Longitude', 
			align:'right', width:120,editable:true, edittype:"text",editoptions:{size:16,maxlength:16}}
			],		
			pager: jQuery("#p_"+listName),
		    rowNum:10,
		    sortname: 'idNCDCStation',
		    sortorder: 'asc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'NCDC Station'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:200,width:500,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:200,width:500,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idNCDCStation = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idNCDCStation":idNCDCStation}; 
			return keyId;
		}
});
}
function jqLoadRainfall(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=rainfall',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=rainfall&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idNCDCStation', index:'idNCDCStation', label:'NCDC Station',
			align:'left', width:140, editable:true, edittype:"select", editrules: {edithidden:true}},
			{name:'rptYear', index:'rptYear', label:'Report Year', 
			align:'right', width:80,editable:true, edittype:"text",editoptions:{size:4,maxlength:4}},
			{name:'rptMonth', index:'rptMonth', label:'Report Month', 
			align:'right', width:120,editable:true, edittype:"text",editoptions:{size:2,maxlength:2}},
			{name:'amtRainfall', index:'amtRainfall', label:'Rainfall', 
			align:'right', width:120,editable:true,  search: false, edittype:"text",editoptions:{size:16,maxlength:16}},
			{name:'dtAdded', index:'dtAdded', label: 'Added', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'dtLastModified', index:'dtLastModified', label: 'Date LastModified',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label: 'Modified By',
			hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}} 		
			],		
			pager: jQuery("#p_"+listName),
			rowNum:12,
		    height:280,
		    viewrecords: true,
		    sortname: 'NCDCStationDesc asc, rptYear desc, rptMonth ',
		    sortorder: 'desc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'NCDC Station Monthly Rainfall',
			loadComplete: function() {
				select_options = jQuery("#"+listName).getUserData();
				jQuery("#"+listName).setColProp('idNCDCStation',{'editoptions': {'value':select_options['NCDCStation']}});
			},
		    gridComplete: function() {
				var recs = parseInt(jQuery("#"+listName).getGridParam("records"),10);
				if (recs == 0) {
					jQuery("#gridWrapper").hide();
				}else {
					jQuery('#gridWrapper').show(); 
				}	    
			}
	  }).navGrid("#p_"+listName,{edit:true,add:true,view:true,del:true,search:true,refresh:true},
			    {height:280,width:400,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm:setBackground,
		  		afterSubmit:processResult}, // edit options
				{height:280,width:400,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm:setBackground,
		  		afterSubmit:processResult}, // add options
				{height:80,width:300,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
		  		{height:80,width:400},     // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idNCDCStation = jQuery("#"+listName).getCell(sr,0);
			var rptYear = jQuery("#"+listName).getCell(sr,1);
			var rptMonth = jQuery("#"+listName).getCell(sr,2);
			keyId= {"idNCDCStation":idNCDCStation,
					"rptYear":rptYear,
					"rptMonth":rptMonth}; 
			return keyId;
		}
		function setBackground(formid) {
			jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
			jQuery("#addedBy").css({'background-color':'#CCCCCC'});
			jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
			jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
	    }
})
}
function jqLoadWaterLevel(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=waterlevel',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=waterlevel&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idWell', index:'idWell', label:'idWell',
			align:'right', width:80, editable:true, edittype:"text",editoptions:{size:4,maxlength:4}},
			{name:'wellName', index:'wellName', label:'Well Name',
			align:'right', width:120, editable:true, edittype:"text",editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'rptYear', index:'rptYear', label:'Report Year', 
			align:'right', width:80,editable:true, edittype:"text",editoptions:{size:4,maxlength:4}},
			{name:'rptMonth', index:'rptMonth', label:'Report Month', 
			align:'right', width:80,editable:true, edittype:"text",editoptions:{size:2,maxlength:2}},
			{name:'dtReading', index:'dtReading', label:'Record Date', 
			align:'right',width:80,editable:true, formatter:"date", formatoptions:{srcformat: 'Y-m-d',newformat: 'm/d/Y'},
			edittype:"text", editrules: {edithidden:true},editoptions:{size:22,maxlength:22}},
			{name:'waterLevel', index:'waterLevel', label:'Water Level Depth', 
			align:'right', width:100,editable:true, edittype:"text",editoptions:{size:10,maxlength:10}},
			{name:'dtAdded', index:'dtAdded', label: 'Added', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'addedBy', index:'addedBy', label:'Added By', 
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}},
			{name:'dtLastModified', index:'dtLastModified', label: 'Date LastModified',
			hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:22,maxlength:22}},
			{name:'modifiedBy', index:'modifiedBy', label: 'Modified By',
			hidden: true, editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:45,maxlength:45}} 		
			],		
			pager:jQuery("#p_"+listName),
			rowNum:12,
		    height:280,
		    viewrecords: true,
		    sortname: 'idWell asc, rptYear desc, rptMonth ',
		    sortorder: 'desc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'Well Monthly Water Level',		    		    		    
			loadComplete: function() {
				select_options = jQuery("#"+listName).getUserData();
				jQuery("#"+listName).setColProp('idNCDCStation',{'editoptions': {'value':select_options['NCDCStation']}});
			},
		    gridComplete: function() {
				var recs = parseInt(jQuery("#"+listName).getGridParam("records"),10);
				if (recs == 0) {
					jQuery("#gridWrapper").hide();
				}else {
					jQuery('#gridWrapper').show(); 
				}	    
			}	 			
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,view:true,search:true,refresh:true},
			    {height:280,width:400,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm:setBackground,
		  		afterSubmit:processResult}, // edit options
				{height:280,width:400,
		  		beforeShowForm:	beforeShow,
		  		onInitializeForm:setBackground,
		  		afterSubmit:processResult}, // add options
				{height:80,width:300,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
		  		{height:80,width:400},     // search options
		  		{height:300,width:500,reloadAfterSubmit:false}, // view options
				{}// refresh options
		)
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idWell = jQuery("#"+listName).getCell(sr,0);
			var rptYear = jQuery("#"+listName).getCell(sr,2);
			var rptMonth = jQuery("#"+listName).getCell(sr,3);
			keyId= {"idWell":idWell,
					"rptYear":rptYear,
					"rptMonth":rptMonth}; 
			return keyId;
		}
		function setBackground(formid) {
			jQuery("#nameWell").css({'background-color':'#CCCCCC'});
			jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
			jQuery("#addedBy").css({'background-color':'#CCCCCC'});
			jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
			jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
	    }
})
}
function jqLoadContact(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
		url:'../../includes/forms/routeHandlerXML.php?reqType=contactlist',
		editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=contact&user='+user,
		datatype: 'xml',      
		colModel:[ 	          
					{name:'idContact', index:'idContact', label:'Contact ID',
					hidden:true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
					{name:'nameCompany', index:'nameCompany', label: 'Company',
					width:100,editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'nameLast', index:'nameLast',label:'Last',
					width:80, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'nameFirst', index:'nameFirst', label:'First',
					width:60, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}},
					{name:'idRole', index:'idRole', label:'Role',
					hidden: true,editable:true, edittype:"select", editrules: {edithidden:true}},
					{name:'idAddress', index:'idAddress', label: 'Address ID',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
					{name:'addressLine1', index:'addressLine1', label:'Address 1',
					width:120, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'addressLine2', index:'addressLine2', label:'Address 2',
					width:120, hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'addressCity', index:'addressCity', label:'City',
					width:80,editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'addressState', index:'addressState', label:'State',
					width:8,hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}}, 
					{name:'addressZip', index:'addressZip', label:'Zip',
					hidden:true, editable:true, edittype:"text",editoptions:{size:10,maxlength:10}},
					{name:'phonePrimary', index:'phonePrimary', label: 'Phone Primary',
					width:120,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'phoneAlternate', index:'phoneAlternate', label: 'Phone Alternate',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'phoneFax', index:'phoneFax', label: 'Fax',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'email', index:'email', label: 'Email',
					width:120,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:100,maxlength:100}}		],		
	    pager:jQuery("#p_"+listName),
	    rowNum:24,
	    height:260,
	    sortname: 'nameCompany, nameLast',
	    sortorder: 'asc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    loadComplete: function() {
			select_options = jQuery("#"+listName).getUserData();
			jQuery("#"+listName).setColProp('idRole',{'editoptions': {'value':select_options['role']}});
		},
	    caption: 'Contact List'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:true,refresh:true},
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
	  		afterSubmit:processResult}, // edit options
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
	  		afterSubmit:processResult}, // add options
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		afterSubmit:processResult,
	  		onclickSubmit: function() {
				var sr = jQuery("#" +listName).getGridParam('selrow');
				var idContact = jQuery("#" +listName).getCell(sr,0);
				var idAddress = jQuery("#" +listName).getCell(sr,5);
				keyId = {"idContact":idContact,"idAddress":idAddress}; 
				return keyId;
				}
  			},  // del options
			{}, // search options
			{}// refresh options
	)
	function setBackground(formid) {
		jQuery("#idContact").css({'background-color':'#CCCCCC'});
		jQuery("#idAddress").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }
});
}
function jqLoadDriller(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
		url:'../../includes/forms/routeHandlerXML.php?reqType=drillerlist',
		editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=driller&user='+user,
		datatype: 'xml',      
		colModel:[ 	          
					{name:'idContact', index:'idContact', label:'Contact ID',
					hidden:true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{readonly:true,size:10,maxlength:10}},
					{name:'nameCompany', index:'nameCompany', label: 'Company',
					width:100,editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'nameLast', index:'nameLast',label:'Last',
					width:80, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'nameFirst', index:'nameFirst', label:'First',
					width:60, editable:true, edittype:"text",editoptions:{size:45,maxlength:45}},
					{name:'idAddress', index:'idAddress', label: 'Address ID',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{readonly:true, size:10,maxlength:10}},
					{name:'addressLine1', index:'addressLine1', label:'Address 1',
					width:120, editable:true, edittype:"text", editoptions:{size:45,maxlength:45}}, 
					{name:'addressLine2', index:'addressLine2', label:'Address 2',
					width:120, hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'addressCity', index:'addressCity', label:'City',
					width:80,editable:true, edittype:"text",editoptions:{size:45,maxlength:45}}, 
					{name:'addressState', index:'addressState', label:'State',
					width:8,hidden: true,editable:true, edittype:"text", editrules: {edithidden:true},editoptions:{size:2,maxlength:2}}, 
					{name:'addressZip', index:'addressZip', label:'Zip',
					hidden:true, editable:true, edittype:"text",editrules: {edithidden:true},editoptions:{size:10,maxlength:10}},
					{name:'phonePrimary', index:'phonePrimary', label: 'Phone Primary',
					width:120,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'phoneAlternate', index:'phoneAlternate', label: 'Phone Alternate',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'phoneFax', index:'phoneFax', label: 'Fax',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:45,maxlength:45}}, 
					{name:'email', index:'email', label: 'Email',
					width:120,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:100,maxlength:100}}, 
					{name:'numTCEQ', index:'numTCEQ', label: 'TCEQ',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}, 
					{name:'numLicense', index:'numLicense', label: 'License',
					hidden: true,editable:true, edittype:"text",  editrules: {edithidden:true},editoptions:{size:10,maxlength:10}}
		],		
	    pager:jQuery("#p_"+listName),
	    rowNum:24,
	    height:260,
	    sortname: 'nameCompany',
	    sortorder: 'asc',
	    viewrecords: true,
	    imgpath: '../../includes/scripts/jquery/themes/steel/images',
	    caption: 'Driller List'
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:true,refresh:true},
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
	  		afterSubmit:processResult}, // edit options
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		onInitializeForm: setBackground,
	  		afterSubmit:processResult}, // add options
			{height:200,width:500,
	  		beforeShowForm:	beforeShow,
	  		afterSubmit:processResult,
	  		onclickSubmit: function() {
	  			var sr = jQuery("#" +listName).getGridParam('selrow');
				var idContact = jQuery("#" +listName).getCell(sr,0);
				var idAddress = jQuery("#" +listName).getCell(sr,4);
				keyId = {"idContact":idContact,"idAddress":idAddress}; 
				return keyId;
				}
	  		}, // del options
			{}, // search options
			{}// refresh options
	)
	function setBackground(formid) {
		jQuery("#idContact").css({'background-color':'#CCCCCC'});
		jQuery("#idAddress").css({'background-color':'#CCCCCC'});
		jQuery("#dtAdded").css({'background-color':'#CCCCCC'});
		jQuery("#addedBy").css({'background-color':'#CCCCCC'});
		jQuery("#dtLastModified").css({'background-color':'#CCCCCC'});
		jQuery("#modifiedBy").css({'background-color':'#CCCCCC'});
    }
});
}
function jqLoadUserAttach(listName){
	jQuery(document).ready(function(){
		var user = document.getElementById('user').value;
		jQuery("#"+listName).jqGrid({
			url:'../../includes/forms/routeHandlerXML.php?reqType=userlist',
		    editurl: '../../includes/forms/routeHandlerUpdate.php?reqType=userList&user='+user,
			datatype: 'xml',      
			colModel:[ 
			{name:'idLogin', index:'idLogin', label:'Login', 
			align:'left', width:100,editable:true, editoptions:{size:20,maxlength:20}},
			{name:'user_name', index:'user_name', label:'Name', 
			align:'left', width:200,editable:true, edittype:"text",editoptions:{readonly:true,size:120,maxlength:120}},
			{name:'idPermitEntity', index:'idPermitEntity', label:'Permitted Entity',
			width:200,editable:true, search:false,edittype:"select"},
			{name:'action', index:'action', label:'action', 
			hidden: true ,editable:true, edittype:"text",editoptions:{readonly:true}}
			],
			pager: jQuery("#p_"+listName),
		    rowNum:10,
		    sortname: 'user_login',
		    sortorder: 'asc',
		    imgpath: '../../includes/scripts/jquery/themes/steel/images',
		    caption: 'District',
	  loadComplete: function() {
			select_options = jQuery("#"+listName).getUserData();
			jQuery("#"+listName).setColProp('idPermitEntity',{'editoptions': {'value':select_options['permitEntity']}});
	  }
	  }).navGrid("#p_"+listName,{edit:true,add:true,del:true,search:false,refresh:true},
			    {height:160,width:700,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // edit options
				{height:160,width:700,
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // add options
				{height:160,width:700,
		  		onclickSubmit:sendId, 
		  		beforeShowForm:	beforeShow,
		  		afterSubmit:processResult}, // del options
				{}, // search options
				{}// refresh options
		);
		function sendId (eparams) {
			var sr = jQuery("#"+listName).getGridParam('selrow');
			var idDistrict = jQuery("#"+listName).getCell(sr,0);
			keyId= {"idLogin":idLogin}; 
			return keyId;
		}
});
}
function fetchSubGrid(listName,mainGrid,id){
	if (mainGrid) {
		jQuery("#"+listName).setGridParam({url:"../../includes/forms/routeHandlerXML.php?reqType=wellregsg&q=2&id="+id,page:1})
	}else {
		if(id == null) {
			id=0;
			if(jQuery("#"+listName).getGridParam('records') >0 )
			{
				jQuery("#"+listName)
				.setGridParam({url:"../../includes/forms/routeHandlerXML.php?reqType=wellregsg&q=2&id="+id,page:1})
				.setCaption("Well Registration Detail: "+id)
				.trigger('reloadGrid');
			}
		} else {
			jQuery("#"+listName)
			.setGridParam({url:"../../includes/forms/routeHandlerXML.php?reqType=wellregsg&q=2&id="+id,page:1})
			.setCaption("Well Registration Detail: "+id)
			.trigger('reloadGrid');			
		}
	}
}
function fetchSubGridPermit(listName,mainGrid,id){
	if(id == null) {
		id=0;
	}
	jQuery("#"+listName)
		.setGridParam({url:"../../includes/forms/routeHandlerXML.php?reqType=permitsg&q=2&id="+id,page:1})
		.setCaption("Permit Detail: "+id)
		.trigger('reloadGrid');			
}
function fetchSubGridPermitWell(listName,mainGrid,id){
	if(id == null) {
		id=0;
	}	
	jQuery("#"+listName)
		.setGridParam({url:"../../includes/forms/routeHandlerXML.php?reqType=permitwellsg&q=3&id="+id,page:1})
		.setCaption("Permit Well Detail: "+id)
		.trigger('reloadGrid');
}
function ajaxReq (reqType,aurl,formData,grid,form,element,gsr) {
	jQuery.ajax({
		type: reqType,
		url: aurl,
		data: formData,
		error : function (XMLHttpRequest, textStatus, errorThrown){
	    	jQuery("#processResult").html("Update failed.");
		},
		complete : function(html){
			if (html.responseText.substring(0,2) != "OK"){
	        	jQuery("#processResult").html("Update failed.\n"+html.responseText);
			}else{	
				jQuery(grid).FormToGrid(gsr,form); 
				jQuery(grid).trigger("reloadGrid");
				var resp= html.responseText;
				var dtnew = resp.substring(resp.indexOf("%")+1,resp.lastIndexOf("%"));
				jQuery("#mainTable #dtLastModified").val(dtnew);
	        	jQuery("#processResult").html("Update complete.\n");
	        	//toggleImage(element); 
			}
		}
	});	
}
function ajaxReq2 (reqType,aurl,formData,grid,form,element,gsr) {
	jQuery.ajax({
		type: reqType,
		url: aurl,
		data: formData,
		error : function (XMLHttpRequest, textStatus, errorThrown){
	    	jQuery("#processResult").html("Update failed.");
		},
		complete : function(html){
			if (html.responseText.substring(0,2) != "OK"){
	        	jQuery("#processResult").html("Update failed.\n"+html.responseText);
			}else{	
				jQuery(grid).FormToGrid(gsr,form); 
				jQuery(grid).trigger("reloadGrid");
				var resp= html.responseText;
				jQuery("#processResult").html("Update complete.\n");
				jQuery("#processResultModal").html(resp+"\n");
			}
		}
	});	
}
function setFormData(inputs){
	var formData = {};
	inputs.each(function(i, el) { 
		if (jQuery(el).attr("type") == "checkbox") {
			if(jQuery(el).attr("checked")) {
				formData[el.name] = jQuery(el).val();
			}else {
				var ofv = jQuery(el).attr("offval");
				if (ofv != undefined) {
					formData[el.name] = ofv;
				}else {formData[el.name] = "0";}
			}
		}else {
			formData[el.name] = jQuery(el).val();
		}
	});
	return formData;
} 
function findId(inputs,key){
	var value;
	
	for(e in inputs) {
		if (inputs[e].name == key) {
			value = inputs[e].value;
			break;
		}
	};
	return value;
}
function formatLink(fileName) {
	if(!fileName) return; 
	fileName = fileName.toString().replace(/\$|\,/g,''); 
	if (fileName.substr(0,8)== '/output/') {
		return fileName;
	}else {
		return ('/output/'+fileName);
	}
}
function beforeShow(formid) {
	jQuery("#processResult").html("");
}

function processResult(response, postdata){
	var success = true;
	if (response.responseText.substring(0,2) != "OK"){
    	alert("Update failed.\n"+response.responseText); 
    	jQuery("#processResult").html("Update failed.\n"+response.responseText);
	}else{	
    	jQuery("#processResult").html("Update complete.\n"+response.responseText.substring(2));
	}
	return [success];
}
function wrWRSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wellregupdate&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#mainDiv input, #mainDiv textarea, #mainDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#mainTable", gsr);	
}
function wrPurposeSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wellregupdate2&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#purposeDiv input, #purposeDiv textarea, #purposeDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#purposeTable", gsr);			
}

function wrOwnerSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=ownerupdate&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#ownerDiv input, #ownerDiv textarea, #ownerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs); 
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#ownerTable", gsr);		
}
function wrDrillerSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=drillerupdate&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#drillerDiv input, #drillerDiv textarea, #drillerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#drillerTable", gsr);	
}
function wrPumpSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=pumpupdate&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#pumpDiv input, #pumpDiv textarea, #pumpDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs); 
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#pumpTable", gsr);	
}
function wrPreparerSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=preparerupdate&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#preparerDiv input, #preparerDiv textarea, #preparerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#subWR_d","#wellRegForm","#preparerTable", gsr);	
}
function wrRegApprove(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wrregapprove&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#wellRegForm input, #wellRegForm textarea, #wellRegForm select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq2("POST",aurl,formData,"#wellregpend","#wellRegForm","#mainTable", gsr);			
}
function wrRegDeny(){
	var gsr = jQuery("#sfSelRow").val();
	if (jQuery("#wellregpend").getCell(gsr,"dtApproved")== ""){
		var user = jQuery("#user").val();
		var id = findId(jQuery("#mainTable input"),"idWellReg");
		var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wrregdeny&id="+id+"&user="+user;
		formData = {};
		ajaxReq2("POST",aurl,formData,"#wellregpend","#wellRegForm","#mainTable", gsr);	
	}else{
		jQuery("#processResultModal").html("Well Registration previously approved.  Can not be denied.\n");
	}
}
function wrPNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wellregupdate_pnd&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#mainDiv input, #mainDiv textarea, #mainDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#mainTable", gsr);
}
function wrPurposePNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=wellregupdate2_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #purposeDiv input, #purposeDiv textarea, #purposeDiv select');  
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#purposeTable", gsr);			
}
function wrLocationPNDSave() {
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=locationupdate_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #locationDiv input, #locationDiv textarea, #locationDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs); 
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#locationTable", gsr);		
}
function wrOwnerPNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=ownerupdate_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #ownerDiv input, #ownerDiv textarea, #ownerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs); 
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#ownerTable", gsr);		
}
function wrDrillerPNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=drillerupdate_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #drillerDiv input, #drillerDiv textarea, #drillerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#drillerTable", gsr);	
}
function wrPumpPNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=pumpupdate_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #pumpDiv input, #pumpDiv textarea, #pumpDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs); 
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#pumpTable", gsr);	
}
function wrPreparerPNDSave(){
	var gsr = jQuery("#sfSelRow").val();
	var user = jQuery("#user").val();	
	var id = findId(jQuery("#mainTable input"),"idWellReg");
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=preparerupdate_pnd&id="+id+"&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#dtLastModified, #preparerDiv input, #preparerDiv textarea, #preparerDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	ajaxReq("POST",aurl,formData,"#wellregpend","#wellRegForm","#preparerTable", gsr);	
}
function permitWellSave(){
	var user = jQuery("#user").val();	
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=permitwellupdate&user="+user;
	// get all the inputs into an array.
	var inputs = jQuery('#sfPermittedEntity, #mainDiv input, #mainDiv textarea, #mainDiv select');   
	// get an associative array of just the values.    
	formData = setFormData(inputs);
	formData['oper'] = 'add';
	ajaxReq("POST",aurl,formData,"#subPermit_w","#permitWellForm","#mainTable", 0);	
}
function cancel(elementId){
	toggleImage(elementId); 
}
function showDriller(idDriller, suffix){
	var user = jQuery("#user").val();	
	var aurl = "../../includes/forms/routeHandlerXML.php?reqType=drillerinfo&id="+idDriller+"&user="+user;
	jQuery.ajax({
		type: 'GET',
		url: aurl,
		datatype: 'xml',
		error : function (XMLHttpRequest, textStatus, errorThrown){
	    	jQuery("#processResult").html("Get failed.");
		},
		complete : function(xml){
			var rtn = jQuery(xml.responseXML).find('rtn').text();
			if (rtn != 'OK'){
				jQuery('#nameCompany' + suffix).val('');
				jQuery('#nameFirst' + suffix).val('');
				jQuery('#nameLast' + suffix).val('');
				jQuery('#addressLine1' + suffix).val('');
				jQuery('#addressCity' + suffix).val('');
				jQuery('#addressState' + suffix).val('');
				jQuery('#addressZip' + suffix).val('');
				jQuery('#numLicense' + suffix).val('');
				jQuery('#phonePrimary' + suffix).val('');
				jQuery('#phoneFax' + suffix).val('');
				jQuery('#email' + suffix).val('');
			}else{
				jQuery(xml.responseXML).find('driller').each(function(){
					jQuery('#nameCompany' + suffix).val(jQuery(this).find('nameCompany').text());
					jQuery('#nameFirst' + suffix).val(jQuery(this).find('nameFirst').text());
					jQuery('#nameLast' + suffix).val(jQuery(this).find('nameLast').text());
					jQuery('#addressLine1' + suffix).val(jQuery(this).find('addressLine1').text());
					jQuery('#addressCity' + suffix).val(jQuery(this).find('addressCity').text());
					jQuery('#addressState' + suffix).val(jQuery(this).find('addressState').text());
					jQuery('#addressZip' + suffix).val(jQuery(this).find('addressZip').text());
					jQuery('#numLicense' + suffix).val(jQuery(this).find('numLicense').text());
					jQuery('#phonePrimary' + suffix).val(jQuery(this).find('phonePrimary').text());
					jQuery('#phoneFax' + suffix).val(jQuery(this).find('phoneFax').text());
					jQuery('#email' + suffix).val(jQuery(this).find('email').text());
				})
			}
		}
	});	
}
function createLink(elementId){
	var hasInnerText =
		(document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;
	if (jQuery('textarea#'+ elementId).val() != undefined) {
		var content = jQuery('textarea#'+ elementId).val().length;
		if (content > 0) {
			var fileName = jQuery('textarea#'+ elementId).val();
			var elementLink = document.getElementById(elementId+"Link");
			if (fileName.length>0){
				elementLink.href=fileName;
				if(!hasInnerText){
					elementLink.textContent = 'View Document';
				} else{
					elementLink.innerText = 'View Document';
				}
			} else{
				elementLink.href='';
				if(!hasInnerText){
					elementLink.textContent = ''
				} else{		
					elementLink.innerText = '';
				}
			}
		}
	}
}
function convertLatLongWellReg() {
	var latdeg = document.wellRegForm.dms_lat_deg.value;
	var latmin = document.wellRegForm.dms_lat_min.value;
	var latsec = document.wellRegForm.dms_lat_sec.value;
	var lathem = document.wellRegForm.dms_lat_hem.value;
	var longdeg = document.wellRegForm.dms_long_deg.value;
	var longmin = document.wellRegForm.dms_long_min.value;
	var longsec = document.wellRegForm.dms_long_sec.value;
	var longhem = document.wellRegForm.dms_long_hem.value;
	vals = convertLatLong(latdeg,latmin,latsec,lathem,longdeg,longmin,longsec,longhem);
	document.wellRegForm.latitude.value  = vals[0];
	document.wellRegForm.longitude.value = vals[1];
}
function convertLatLongWell(listName,rowId,fldArray) {
	
	var latdeg = fldArray['dms_lat_deg'];
	var latdeg = fldArray['dms_lat_deg'];
	var latmin = fldArray['dms_lat_min'];
	var latsec = fldArray['dms_lat_sec'];
	var lathem = fldArray['dms_lat_hem'];
	var longdeg = fldArray['dms_long_deg'];
	var longmin = fldArray['dms_long_min'];
	var longsec = fldArray['dms_long_sec'];
	var longhem = fldArray['dms_long_hem'];
	vals = convertLatLong(latdeg,latmin,latsec,lathem,longdeg,longmin,longsec,longhem);
	fldArray['latitude'] = vals[0];
	fldArray['longitude'] = vals[1];
}
function convertLatLong(latdeg,latmin,latsec,lathem,longdeg,longmin,longsec,longhem) {
	// find decimal latitude
	ddLatVal = latdeg*1 + latmin/60 + latsec/3600;
	ddLatVal = lathem * ddLatVal;
	// find decimal longitude
	ddLongVal = longdeg*1 + longmin/60 + longsec/3600;
	ddLongVal = longhem * ddLongVal;
	// round down a bit
	ddLatVal  = round100000(ddLatVal);
	ddLongVal = round100000(ddLongVal);
	var decLatLong = {};
	decLatLong[0] = ddLatVal;
	decLatLong[1] = ddLongVal;
	return decLatLong;
}
function unconvertLatLong(listName, rowId){
	// got dashes?
	rowData =jQuery("#"+listName).getRowData(rowId);
	ddLat = rowData.latitude;
	ddLong = jQuery("#"+listName).getCell(rowId,'longitude');
	if (ddLat.substr(0,1) == "-") {
		jQuery("#"+listName).setCell(rowId,'dms_lat_hem',-1);
		ddLatVal = ddLat.substr(1,ddLat.length-1);
	} else {
		jQuery("#"+listName).setCell(rowId,'dms_lat_hem',1);
		ddLatVal = ddLat;
	}
	
	if (ddLong.substr(0,1) == "-") {
		jQuery("#"+listName).setCell(rowId,'dms_long_hem', 1);
		ddLongVal = ddLong.substr(1,ddLong.length-1);
	} else {
		jQuery("#"+listName).setCell(rowId,'dms_long_hem',-1);
		ddLongVal = ddLong;
	}
	// degrees = degrees
	ddLatVals = ddLatVal.split(".");
	jQuery("#"+listName).setCell(rowId,'dms_lat_deg', ddLatVals[0]);
	ddLongVals = ddLongVal.split(".");
	jQuery("#"+listName).setCell(rowId,'dms_long_deg',ddLongVals[0]);
	// * 60 = mins
	ddLatRemainder  = ("0." + ddLatVals[1]) * 60;
	dmsLatMinVals   = ddLatRemainder.toString().split(".");
	jQuery("#"+listName).setCell(rowId,'dms_lat_min',dmsLatMinVals[0]);
	ddLongRemainder  = ("0." + ddLongVals[1]) * 60;
	dmsLongMinVals   = ddLongRemainder.toString().split(".");
	jQuery("#"+listName).setCell(rowId,'dms_long_min',dmsLongMinVals[0]);
	// * 60 again = secs
	ddLatMinRemainder = ("0." + dmsLatMinVals[1]) * 60;
	jQuery("#"+listName).setCell(rowId,'dms_lat_sec',Math.round(ddLatMinRemainder*100000)/100000);
	ddLongMinRemainder = ("0." + dmsLongMinVals[1]) * 60;
	jQuery("#"+listName).setCell(rowId,'dms_long_sec',Math.round(ddLongMinRemainder*100000)/100000);
}
function round100000(v) {
	return Math.round(v * 100000) / 100000;
}
function toggleImage(elementId){
	jQuery("#"+elementId).toggle(); 
	var elementImage = document.getElementById(elementId+"Img")
	if (elementImage!= null) {
		srcStr = elementImage.src;
		srcLastSlash = srcStr.lastIndexOf("/");
		if (srcStr.substring(srcLastSlash) == "/up.gif"){
			srcStr = srcStr.substring(0, srcLastSlash) + "/down.gif";
		}else {
			srcStr = srcStr.substring(0, srcLastSlash) + "/up.gif";
		}
		elementImage.src = srcStr;
	}
}
function createReport(listname){
	var rptname = listname;
	var user = jQuery("#user").val();
	var dtStart = jQuery("#startDate").val();
	var dtEnd = jQuery("#endDate").val();
	var listType = jQuery("input[name='wellList']:checked").val();
	var contact = jQuery("input[name='ownerContact']:checked").val();
	var aurl = "../../includes/forms/routeHandlerUpdate.php?reqType=printreport&user="+user+"&list="+listname+"&dtStart="+dtStart+"&dtEnd="+dtEnd;
	if (listType != undefined){
		aurl += "&ltype="+listType;
		rptname = listType;
	}
	if (contact != undefined){
		aurl += "&contact="+contact;
	}
	ajaxReportReq("GET",aurl,user,rptname);	
}
function ajaxReportReq (reqType,aurl,user,listname) {
	jQuery.ajax({
		type: reqType,
		url: aurl,
		error : function (XMLHttpRequest, textStatus, errorThrown){
	    	jQuery("#reportResult").html("Report Failed. " +textStatus );
		},
		complete : function(html){
			if (html.responseText.substring(0,2) != "OK"){
	        	jQuery("#reportResult").html("Report failed.\n"+html.responseText);
			}else{	
				var resp= html.responseText;
				jQuery("#reportResult").html(html.responseText);
				jQuery("#reportAnchor").attr("href", "../../output/"+user+"_REPT_"+listname+".xls");
				jQuery("#reportAnchor").html("Link to Report");
	 		    //window.open("../../output/"+user+"_REPT_"+listname+".xls","Report");
				//window.open("../../forms/reports","Report");
			}
		}
	});	
}
function nextPage() {
	var elementSaveCurrent = document.getElementById("currentPage");
	var pageId = elementSaveCurrent.value;
	if (pageId == 1){
		var elementPage1Hdr = document.getElementById("page" + pageId + "Hdr");
		elementPage1Hdr.style.display = "none";
	}
	if (checkPageRequired(pageId)) {
		var nextPageId = parseInt(pageId) + 1;
		if (nextPageId <= 9) {
			var elementCurrent = document.getElementById("page" + pageId);
			elementCurrent.style.display = "none";
			var elementNext = document.getElementById("page" + nextPageId);
			elementNext.style.display = "block";
			elementSaveCurrent.value = nextPageId;
		}
		var elementNextLink = document.getElementById("nextLink");
		var elementPrevLink = document.getElementById("prevLink");
		elementPrevLink.style.visibility = "visible";
		if (nextPageId >= 9) {
			elementNextLink.style.visibility = "hidden";
		} else {
			elementNextLink.style.visibility = "visible";		
		}
		setAllOtherHidden(nextPageId);
	}
	var elementPageNum = document.getElementById("pageNum");
	var hasInnerText =
		(document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;
		if(!hasInnerText){
			elementPageNum.textContent = "Page " + elementSaveCurrent.value  + " of 9";
		} else{
			elementPageNum.innerText = "Page " + elementSaveCurrent.value  + " of 9";
		}

}
function prevPage() {
	var elementSaveCurrent = document.getElementById("currentPage");
	var pageId = elementSaveCurrent.value;

	var prevPageId = parseInt(pageId) - 1;
	if (prevPageId >= 0) {
		var elementCurrent = document.getElementById("page" + pageId);
		elementCurrent.style.display = "none";
		var elementPrev = document.getElementById("page" + prevPageId);
		elementPrev.style.display = "block";
		elementSaveCurrent.value = prevPageId;
	}
	var elementNextLink = document.getElementById("nextLink");
	elementNextLink.style.visibility = "visible";		
	var elementPrevLink = document.getElementById("prevLink");	
	if (prevPageId <= 1) {
		elementPrevLink.style.visibility = "hidden";
	} else {
		elementPrevLink.style.visibility = "visible";		
	}

	if (prevPageId == 1){
		var elementPage1Hdr = document.getElementById("page" + prevPageId + "Hdr");
		elementPage1Hdr.style.display = "block";
	}
	setAllOtherHidden(prevPageId);
	
	var elementPageNum = document.getElementById("pageNum");
	var hasInnerText =
		(document.getElementsByTagName("body")[0].innerText != undefined) ? true : false;

		if(!hasInnerText){
			elementPageNum.textContent = "Page " + elementSaveCurrent.value  + " of 9";
		} else{
			elementPageNum.innerText = "Page " + elementSaveCurrent.value  + " of 9";
		}
}
function setAllOtherHidden(pageId) {
	for (i=1;i<=9;i++) {
		if (i!=pageId) {
			var elementCurrent = document.getElementById("page" + i);
			elementCurrent.style.display = "none";
		}
	}
	
}
function checkPageRequired(editPage){
	pageClean = true;
	var page = parseInt(editPage);

	switch(page)
	{
	case 1:
	  if (!validate_required(document.wellRegForm.nameFirst_Owner,'Owner First Name must be completed.')){
		  pageClean= false;
	  }
	  if (!validate_required(document.wellRegForm.nameLast_Owner,'Owner Last Name must be completed.')){
		  pageClean= false;
	  }
	  if (!validate_required(document.wellRegForm.addressLine1_Owner,'Address must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressCity_Owner,'City must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressState_Owner,'State must be selected.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressZip_Owner,'Zip must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.phonePrimary_Owner,'Phone must be completed.')){
		  pageClean= false;
	  }
//	  if (!validate_required(document.wellRegForm.email_Owner,'Email must be completed.')){
//		  pageClean= false;
//	  }
	  break;
	case 2:
	  convertLatLongWellReg();
	  if (isNaN(document.wellRegForm.latitude.value) ||
		isNaN(document.wellRegForm.longitude.value)) {
		  alert('Latitude and Longitude must be numeric.');
		  pageClean=false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressLine1_Location,'Address must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressCity_Location,'City must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressState_Location,'State must be selected.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.addressZip_Location,'Zip must be completed.')){
		  pageClean= false;
	  }	  
	  break;
	case 3:
	  if (!validate_required_radio(document.wellRegForm.idWellRegPurpose,'One registration reason must be selected.')){
		  pageClean= false;
	  }	 		
	  break;
	case 4:
	  if (!validate_required(document.wellRegForm.ftClosestPropertyLine,'Distance to closest property line must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.ftExistingWell,'Distance from an existing well must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.ftContaminate,'Distance from a concentrated source of potential contamination must be selected.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.ftWasteWater,'Distance from a septic system drain field or wastewater irrigation system must be completed.')){
		  pageClean= false;
	  }	  
	  if (!validate_required(document.wellRegForm.ftSepticTank,'Distance from a septic tank must be completed.')){
		  pageClean= false;
	  }	 
	  if (!validate_required_radio(document.wellRegForm.flWithin50ftPWS,'Public water system service area distance must be completed.')){
		  pageClean= false;
	  }	 	    
	  break;
	case 5:
		if (document.wellRegForm.idContactDriller != undefined){
		if (document.wellRegForm.idContactDriller.selectedIndex < 1) {
			  if (!validate_required(document.wellRegForm.nameCompany_Driller,'Drilling Company must be completed.')){
				  pageClean= false;
			  }
			  if (!validate_required(document.wellRegForm.addressLine1_Driller,'Address must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressCity_Driller,'City must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressState_Driller,'State must be selected.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressZip_Driller,'Zip must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.numLicense_Driller,'License must be completed.')){
				  pageClean= false;
			  }
			  if (!validate_required(document.wellRegForm.phonePrimary_Driller,'Phone must be completed.')){
				  pageClean= false;
			  }  
			  if (!validate_required(document.wellRegForm.phoneFax_Driller,'Fax number must be completed.')){
				  pageClean= false;
			  }  
		  }}
		  break;
	case 6:
		if (document.wellRegForm.idContactInstaller != undefined){
		  if (document.wellRegForm.idContactInstaller.selectedIndex < 1) {
			  if (!validate_required(document.wellRegForm.nameCompany_Installer,'Company must be completed.')){
				  pageClean= false;
			  }
			  if (!validate_required(document.wellRegForm.addressLine1_Installer,'Address must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressCity_Installer,'City must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressState_Installer,'State must be selected.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.addressZip_Installer,'Zip must be completed.')){
				  pageClean= false;
			  }	  
			  if (!validate_required(document.wellRegForm.numLicense_Installer,'License must be completed.')){
				  pageClean= false;
			  }
			  if (!validate_required(document.wellRegForm.phonePrimary_Installer,'Phone must be completed.')){
				  pageClean= false;
			  }  
			  if (!validate_required(document.wellRegForm.phoneFax_Installer,'Fax number must be completed.')){
				  pageClean= false;
			  }  
		  }}
		  break;
	case 7:
		  if (!validate_required(document.wellRegForm.sizeCasing,'Casing Size must be completed.')){
			  pageClean= false;
		  }
		  if (!validate_required(document.wellRegForm.depthWell,'Well Depth must be completed.')){
			  pageClean= false;
		  }	
		  if (!validate_required(document.wellRegForm.sizePump,'Pump Size must be completed.')){
			  pageClean= false;
		  }	
		  if (!validate_required(document.wellRegForm.capProduction,'Production Capability must be completed.')){
			  pageClean= false;
		  }			  
		break;
	case 8:
		break;
	case 9:
		  if (document.wellRegForm.agrees_to_conditions.checked==false){
			 alert('You must agree to the conditions.');
			 pageClean= false;
		  }
//		  if (!validate_required(document.wellRegForm.nameLast_Preparer,'Owner/Agent Name must be completed.')){
//			pageClean= false; 
//		  }	 		
		break;
	default:
	}
	return pageClean;
}
function validate_required(field,alerttxt){

	with (field)
	  {
	  if (value==null||value=="")
	    {
	    alert(alerttxt);return false;
	    }
	  else
	    {
	    return true;
	    }
	  }
}

function validate_required_radio(field,alerttxt){

	myOption = -1;
	for (i=field.length-1; i > -1; i--) {
		if (field[i].checked) {
			myOption = i; 
			i = -1;
		}
	}
	if (myOption == -1) {
		alert(alerttxt);
		return false;
	} else {
		return true;
	}
}

function locationSameAsOwner(form){

	if(form.location_copy.checked){

	     form.addressLine1_Location.value = form.addressLine1_Owner.value;
	     form.addressCity_Location.value = form.addressCity_Owner.value;
	     form.addressZip_Location.value = form.addressZip_Owner.value;
	     
	     if(form.addressState_Owner.type == "select-one"){
	          var bStateIdx = form.addressState_Owner.selectedIndex;
	          form.addressState_Location.options[bStateIdx].selected = true;
	     }
	     else{
	          form.addressState_Location.value = form.addressState_Owner.value;
	     }
	}
	else{

	     form.addressLine1_Location.value = "";
	     form.addressCity_Location.value = "";
	     if(form.addressState_Location.type == "select-one"){
	          form.addressState_Location.options[0].selected = true;
	     }
	     else{
	          form.addressState_Location.value = "";
	     }
	     form.addressZip_Location.value = "";
	}
}
function installerSameAsDriller(form){

	if(form.driller_copy.checked){

		 form.idContactInstaller.value = form.idContactDriller.value;
		 form.nameCompany_Installer.value = form.nameCompany_Driller.value;
		 form.addressLine1_Installer.value = form.addressLine1_Driller.value;
	     form.addressCity_Installer.value = form.addressCity_Driller.value;
	     form.addressZip_Installer.value = form.addressZip_Driller.value;
	     form.numLicense_Installer.value = form.numLicense_Driller.value;
	     form.phonePrimary_Installer.value = form.phonePrimary_Driller.value;
	     form.phoneFax_Installer.value = form.phoneFax_Driller.value;
	     
	     if(form.addressState_Driller.type == "select-one"){
	          var bStateIdx = form.addressState_Driller.selectedIndex;
	          form.addressState_Installer.options[bStateIdx].selected = true;
	     }
	     else{
	          form.addressState_Installer.value = form.addressState_Driller.value;
	     }
	}
	else{

		 form.idContactInstaller.options[0].selected = true;
		 form.nameCompany_Installer.value = "";
		 form.addressLine1_Installer.value = "";
	     form.addressCity_Installer.value = "";
	     if(form.addressState_Installer.type == "select-one"){
	          form.addressState_Installer.options[0].selected = true;
	     }
	     else{
	          form.addressState_Installer.value = "";
	     }
	     form.addressZip_Installer.value = "";
	     form.numLicense_Installer.value = "";
	     form.phonePrimary_Installer.value = "";
	     form.phoneFax_Installer.value = "";

	}
}
function clearQtrlyForm(){
	
	jQuery('#totGWPumped').html('');
	jQuery('#totOtherSrcs').html('');
	jQuery('#totSold').html('');
	jQuery('#totLoss').html('');
	jQuery('#totLossPct').html('');
	
	var i = 0;
	while (i < 3){
		i++;
		var elemNamePumped = 'totMonth' + i + 'GWPumped';
		var elemNameOther = 'totMonth' + i + 'OtherSrcs';
		var elemNameSold = 'totMonth' + i + 'Sold';
		var elemNameConnection = 'totMonth' + i + 'Connections';
		var elemNameExplain = 'totMonth' + i + 'LossExplain';
		var elemNameLoss = 'totMonth' + i + 'Loss';
		var elemNameLossPct = 'totMonth' + i + 'LossPct';

		jQuery('#' + elemNamePumped).val('');
		jQuery('#' + elemNameOther).val('');
		jQuery('#' + elemNameSold).val('');
		jQuery('#' + elemNameConnection).val('');
		jQuery('#' + elemNameExplain).val('');
		jQuery('#' + elemNameLoss).html('');
		jQuery('#' + elemNameLossPct).html('');	
	}	
	var num = jQuery('.clonedInput').length; 
	var w = num;
	while (w > 1) {
		jQuery('#input' + w).remove(); 
		w--;
	}
	
	w = 1;
	var elemNameWellNum = 'rptWellNum' + w;
	var elemNameWellName = 'rptWellName' + w;	
	
	jQuery('#' + elemNameWellNum).val('');
	jQuery('#' + elemNameWellName).val('');
	
	var i = 0;
	while (i < 3){
		i++;
		var elemNameWaterLevel = 'gMonth' + i + 'WaterLevel' + w;
		var elemNameWLDate = 'gMonth' + i + 'WLDate' + w;
		jQuery('#' + elemNameWaterLevel).val('');
		jQuery('#' + elemNameWLDate).val('');

	}
		
	jQuery('#lossExplainRow').attr('style','display:none');
	jQuery('#processResult').html(''); 
}
//function calcTotal(monthVal) {
//	var num = jQuery('.clonedInput').length; 
//	var total = 0;
//	var i = 1;
//	for (i=1;i<=num;i++) {
//		var elemName = '#gMonth'+ monthVal + 'Pumped' + i;
//		var elemValue = parseInt(stripCommas(jQuery(elemName).val())); 
//		if (!isNaN(elemValue)) {
//			total = total + elemValue;
//		}
//	}
//	var totalName = '#totMonth' + monthVal + 'GWPumped';
//	var dispTotal = addCommas(total);
//	jQuery(totalName).val(dispTotal);
//	calcLoss(monthVal);
//}
function calcLoss(monthVal) {

	var gwPumped =  0;
	tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'GWPumped').val()));
	if(!isNaN(tmp)){
		gwPumped = tmp; 
	}
	var otherSources =  0;
	tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'OtherSrcs').val())); 
	if(!isNaN(tmp)){
		otherSources = tmp; 
	}
	var sold = 0;
	tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'Sold').val()));
	if(!isNaN(tmp)){
		sold = tmp; 
	}
	
	loss = gwPumped + otherSources - sold;
	lossPct = loss / (gwPumped + otherSources)* 100;
	lossPct = Math.round(lossPct * 100)/ 100;
	if(!isNaN(loss)){
		var lossName = '#totMonth' + monthVal + 'Loss';
		var dispLoss = addCommas(loss);
		jQuery(lossName).html(dispLoss);
	}
	
	if(!isNaN(lossPct)){
		var lossPctName = '#totMonth' + monthVal + 'LossPct';
		jQuery(lossPctName).html(lossPct + ' %');
	}
}
function addCommas(nStr)
{
	nStr += '';
	x = nStr.split('.');
	x1 = x[0];
	x2 = x.length > 1 ? '.' + x[1] : '';
	var rgx = /(\d+)(\d{3})/;
	while (rgx.test(x1)) {
		x1 = x1.replace(rgx, '$1' + ',' + '$2');
	}
	return x1 + x2;
}
function stripCommas(numString) {
	if (typeof(numString) != undefined){
	    var re = /,/g;
	    return numString.replace(re,"");
	}
}
function displayLossExplain() {
	if (parseInt(jQuery('#totMonth1LossPct').html()) > 15 ){
		jQuery('#lossExplainRow').attr("style","");
		jQuery('#totMonth1LossExplain').attr("style", "display:inline;");
	}else{
		jQuery('#totMonth1LossExplain').attr("style", "display:none;");
		jQuery('#totMonth1LossExplain').val('');
	}
	if (parseInt(jQuery('#totMonth2LossPct').html()) > 15 ){
		jQuery('#lossExplainRow').attr("style","");
		jQuery('#totMonth2LossExplain').attr("style", "display:inline;");
	}else{
		jQuery('#totMonth2LossExplain').attr("style", "display:none;");
		jQuery('#totMonth2LossExplain').val('');
	}
	if (parseInt(jQuery('#totMonth3LossPct').html()) > 15 ){
		jQuery('#lossExplainRow').attr("style","");
		jQuery('#totMonth3LossExplain').attr("style", "display:inline;");
	}else{
		jQuery('#totMonth3LossExplain').attr("style", "display:none;");
		jQuery('#totMonth3LossExplain').val('');
	}
	if (parseInt(jQuery('#totMonth1LossPct').html()) <= 15 && 
			parseInt(jQuery('#totMonth2LossPct').html()) <= 15 &&
					parseInt(jQuery('#totMonth3LossPct').html()) <= 15){
			jQuery('#lossExplainRow').attr("style","display:none");
	}
}
function checkPumpage() {
	var subOK = true;

	calcLoss(1);
	calcLoss(2);
	calcLoss(3);
	
	displayLossExplain();
	
	if (parseInt(jQuery('#totMonth1LossPct').html()) > 15 &&
		jQuery('#totMonth1LossExplain').val() == '') {
		subOK = false;
		jQuery('#totMonth1LossExplain').focus();
		alert ("Please explain monthly losses exceeding 15%.");
	} else {
		if (parseInt(jQuery('#totMonth2LossPct').html()) > 15 &&
			jQuery('#totMonth2LossExplain').val() == '') {
			subOK = false;
			jQuery('#totMonth2LossExplain').focus();
			alert ("Please explain monthly losses exceeding 15%.");
		} else {
			if (parseInt(jQuery('#totMonth3LossPct').html()) > 15 &&
				jQuery('#totMonth3LossExplain').val() == '') {
				subOK = false;
				jQuery('#totMonth3LossExplain').focus();
				alert ("Please explain monthly losses exceeding 15%.");
			}
		}
	}
	
	var totGWPumped = 0;
	var totOtherSrcs = 0;
	var totSold = 0;
	
	for (monthVal=1;monthVal<=3;monthVal++) {
		var gwPumped =  0;
		var otherSrcs = 0;
		var sold = 0;
		tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'GWPumped').val()));
		if(!isNaN(tmp)){
			gwPumped = tmp;
		}
		tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'OtherSrcs').val()));
		if(!isNaN(tmp)){
			otherSrcs= tmp;
		}
		tmp = parseInt(stripCommas(jQuery('#totMonth' + monthVal + 'Sold').val()));
		if(!isNaN(tmp)){
			sold= tmp;
		}
		if (sold > (gwPumped + otherSrcs) &&
			jQuery('#warnShown').val() == 'false') {
			alert("Sold greater than sum of Pumped and Other Sources for " + jQuery('#rptMonth'+monthVal+' :selected').text()+ 
					"\nPlease correct if in error.");	
			jQuery('#warnShown').val('true');
			subOK = false;
		}
		
		totGWPumped += gwPumped;
		totOtherSrcs += otherSrcs;
		totSold += sold;
	}
	
	var totLoss = totGWPumped + totOtherSrcs - totSold;
	var totLossPct = totLoss / (totGWPumped + totOtherSrcs)* 100;
	totLossPct = Math.round(totLossPct * 100)/ 100;

	jQuery('#totGWPumped').html(addCommas(totGWPumped));
	jQuery('#totOtherSrcs').html(addCommas(totOtherSrcs));
	jQuery('#totSold').html(addCommas(totSold));
	jQuery('#totLoss').html(addCommas(totLoss));
	jQuery('#totLossPct').html(totLossPct + ' %');		
	
	if (subOK) {
		var user = jQuery("#user").val();
		var id = jQuery("#idContactPermitHolder").val();
		var inputs = jQuery('#formstyle input, #formstyle textarea, #formstyle select');   
		// get an associative array of just the values.    
		var formData = setFormData(inputs);
		var num = jQuery('.clonedInput').length; 
		formData['wellRows'] = num;
		jQuery.ajax({
			type: 'POST',
			url: '../../includes/permit/qtrlyPumpReport_p.php?id='+id+'&user='+user, 
			data: formData,
			datatype: 'xml',
			error : function (XMLHttpRequest, textStatus, errorThrown){
		    	jQuery('#processResult').html('Update failed. '+textStatus+' '+errorThrown);
			},
			complete : function(xml){
				var rtn = jQuery(xml.responseXML).find('rtn').text();
				if (rtn != 'OK'){
					if (rtn == 'Errors Found') {
						displaymsg = "<div style='border:1px solid black;font-weight:bold;color:Red;padding:5px;'>Please correct the following errors:\n<ul>";					
						jQuery(xml.responseXML).find('error').each(function() { 
							displaymsg = displaymsg + '<li>'+jQuery(this).text()+'</li>\n';
						});
						displaymsg = displaymsg + '</ul></div>';
						jQuery('#msgLine').html(displaymsg); 
						jQuery('#processResult').html(''); 
					} else {
						displaymsg = "<div style='font-weight:bold;color:Red;padding:5px;'>\n";					
						displaymsg = displaymsg + rtn +'\n';
						displaymsg = displaymsg + '</div>';
						jQuery('#msgLine').html(''); 
						jQuery('#processResult').html(displaymsg); 
					}
				}else{	
					jQuery('#msgLine').html(''); 
		        	jQuery('#processResult').html('Update complete.\n');
				}
			}
		});	
	}
}
