var geocoder = false;
var viewport = false;
var inputfield = false;
var feedbackdiv = false;
var q1div = false;
var q2div = false;
var progressicon = false;
var wx;

function reloadTable(){
	var formOb=document.getElementById("getLocationWT");
	var checked='';;
	var duration='';
	var interval='';
	if (formOb.table!=null){
		if (formOb.table[0].checked){
			checked='&table=custom';
		}else if (formOb.table[1].checked){
			checked='&table=xml';
		}else if (formOb.table[2].checked){
			checked='&table=totalf';
		}else if (formOb.table[3].checked){
			checked='&table=pfm';
		}else if (formOb.table[4].checked){
			checked='&table=tab';
		}else if (formOb.table[5].checked){
			checked='&table=graph';
		}
		if (formOb.duration[0].checked){
			duration='&duration=1';
		}else if (formOb.duration[1].checked){
			duration='&duration=2';
		}else if (formOb.duration[2].checked){
			duration='&duration=3';
		}else if (formOb.duration[3].checked){
			duration='&duration=4';
		}else if (formOb.duration[4].checked){
			duration='&duration=5';
		}else if (formOb.duration[5].checked){
			duration='&duration=6';
		}else if (formOb.duration[6].checked){
			duration='&duration=7';
		}
		if (formOb.interval[0].checked){
			interval='&interval=1';
		}else if (formOb.interval[1].checked){
			interval='&interval=3';
		}else if (formOb.interval[2].checked){
			interval='&interval=6';
		}
		lat=formOb.rlat.value;
		lon=formOb.rlon.value;
	}
	var list='?lat='+lat+'&lon='+lon;
	parent.location.href='/forecast/wxtables/index.php'+list+checked+duration+interval;
}

function getLocationResultsWT(objInput, objFeedback, objProgress,clrindex){
	if (document.pressed=='Reload Table'){
		reloadTable();
		return;
	}else if (document.pressed=='q1'){
		target=document.getElementById('q1div');
		while(target.firstChild != target.lastChild) target.removeChild(target.firstChild); // empty any previous results
		target.insertBefore(document.createTextNode('Change the Hour and Day Values, OR change the type of weather format, then select Reload Table to get the new format for the same location.'), target.lastChild);
		target.insertBefore(document.createElement('br'), target.lastChild);
	target.style.display = '';
		return;
	}else if (document.pressed=='q2'){
		target=document.getElementById('q2div');
		while(target.firstChild != target.lastChild) target.removeChild(target.firstChild); // empty any previous results
		target.insertBefore(document.createTextNode('Example Searches: '),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('83204 '),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('Springfield MO'),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('42.86 -112.42'),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('1945 Beechcraft Ave, Pocatello ID'),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('Bryce Canyon'),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		target.insertBefore(document.createTextNode('Bingham County'),target.lastChild);
		target.insertBefore(document.createElement('br'),target.lastChild);
		//target.insertBefore(document.createTextNode('Example Searches: 83204; Springfield MO; 42.86 -112.42 ;1945 Beechcraft Ave, Pocatello ID'), target.lastChild);
		target.insertBefore(document.createElement('br'), target.lastChild);
	target.style.display = '';
	}else{
	wx=clrindex;
	if(objFeedback) feedbackdiv = objFeedback;
	if(objProgress) progressicon = objProgress;
	if(!geocoder){
		geocoder = new GClientGeocoder();
		geocoder.setBaseCountryCode('US');
		if(viewport) geocoder.setViewport(viewport);
	}
	inputfield = objInput;
	geocoder.getLocations(objInput.value, locationSearchCallbackWT);
	feedbackdiv.style.display = 'none';
	progressicon.src = '/images/progress.gif';
	}
}

function getPointLinkWT(point){
	var formOb=document.getElementById("getLocationWT");
	var checked='';;
	var duration='';
	var interval='';
	if (formOb.table!=null){
		if (formOb.table[0].checked){
			checked='&table=custom';
		}else if (formOb.table[1].checked){
			checked='&table=xml';
		}else if (formOb.table[2].checked){
			checked='&table=totalf';
		}else if (formOb.table[3].checked){
			checked='&table=pfm';
		}else if (formOb.table[4].checked){
			checked='&table=tab';
		}else if (formOb.table[5].checked){
			checked='&table=graph';
		}
		if (formOb.duration[0].checked){
			duration='&duration=1';
		}else if (formOb.duration[1].checked){
			duration='&duration=2';
		}else if (formOb.duration[2].checked){
			duration='&duration=3';
		}else if (formOb.duration[3].checked){
			duration='&duration=4';
		}else if (formOb.duration[4].checked){
			duration='&duration=5';
		}else if (formOb.duration[5].checked){
			duration='&duration=6';
		}else if (formOb.duration[6].checked){
			duration='&duration=7';
		}
		if (formOb.interval[0].checked){
			interval='&interval=1';
		}else if (formOb.interval[1].checked){
			interval='&interval=3';
		}else if (formOb.interval[2].checked){
			interval='&interval=6';
		}
	}
	var list='?lat='+point.y+'&lon='+point.x+'&clrindex='+wx;
	return '/forecast/wxtables/index.php'+list+checked+duration+interval;
}

function locationSearchCallbackWT(response){
	var target = feedbackdiv;
	while(target.firstChild != target.lastChild) target.removeChild(target.firstChild); // empty any previous results
	if (!response || response.Status.code != 200) {
		target.insertBefore(document.createTextNode('Sorry, the location you searched for was not found. Please try another search.'), target.lastChild);
		target.insertBefore(document.createElement('br'), target.lastChild);
	} else {
		for(i=0; i < response.Placemark.length; i++){
			if(response.Placemark[i].AddressDetails && response.Placemark[i].AddressDetails.Country){
				var country = response.Placemark[i].AddressDetails.Country.CountryNameCode;
				if(country != 'US' && country != 'GU' && country != 'PR'){
					response.Placemark.splice(i,1);
					i--;
				}
			}
		}
		if(response.Placemark.length <= 0){
			target.insertBefore(document.createTextNode('The location you searched for was not found. Please try another search.'), target.lastChild);
			target.insertBefore(document.createElement('br'), target.lastChild);
		} else if(response.Placemark.length == 1){
			var place = response.Placemark[0];
			inputfield.form.action = getPointLinkWT(new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]));
			action = getPointLinkWT(new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0]));
			parent.location.href=action;
			inputfield.form.method = 'post';
			inputfield.form.submit();
		} else {
			target.insertBefore(document.createTextNode('Multiple locations were found. Please select one of the following:'), target.lastChild);
			target.insertBefore(document.createElement('br'), target.lastChild);
			for(i in response.Placemark){
				var place = response.Placemark[i];
				var opt = document.createElement('a');
				opt.setAttribute('href', getPointLinkWT(new GLatLng(place.Point.coordinates[1], place.Point.coordinates[0])));
				opt.appendChild(document.createTextNode(place.address));
				target.insertBefore(opt, target.lastChild);
				target.insertBefore(document.createElement('br'), target.lastChild);
			}
		}
	}
	if(target.firstChild != target.lastChild){
		target.style.display = 'block';
	}
	progressicon.src = '/images/clear.gif';

}


