function ClearCounty()
{
	idx = 0;
	if (document.criteria.county) {
		if (document.criteria.county.selectedIndex != -1) {
			while (idx < document.criteria.county.length) {
				if (document.criteria.county.options[idx].selected) {
					document.criteria.county.options[idx].selected = false;
				}
				idx++;
			}
		}
	}
	return 1;
}

function ClearCountycode()
{
	idx = 0;
	if (document.criteria.countycode) {
		if (document.criteria.countycode.selectedIndex != -1) {
			while (idx < document.criteria.countycode.length) {
				if (document.criteria.countycode.options[idx].selected) {
					document.criteria.countycode.options[idx].selected = false;
				}
				idx++;
			}
		}
	}
	return 1;
}

function ClearCity()
{
	idx = 0;
	if (document.criteria.city) {
		if (document.criteria.city.selectedIndex != -1) {
			while (idx < document.criteria.city.length) {
				if (document.criteria.city.options[idx].selected) {
					document.criteria.city.options[idx].selected = false;
				}
				idx++;
			}
		}
	}
	return 1;
}

function ClearCitycode()
{
	idx = 0;
	if (document.criteria.citycode) {
		if (document.criteria.citycode.selectedIndex != -1) {
			while (idx < document.criteria.citycode.length) {
				if (document.criteria.citycode.options[idx].selected) {
					document.criteria.citycode.options[idx].selected = false;
				}
				idx++;
			}
		}
	}
	return 1;
}

function ClearArea()
{
	idx = 0;
	if (document.criteria.area) {
		if (document.criteria.area.selectedIndex != -1) {
			while (idx < document.criteria.area.length) {
				if (document.criteria.area.options[idx].selected) {
					document.criteria.area.options[idx].selected = false;
				}
				idx++;
			}
		}
	}
	return 1;
}

function VerifyCityCountySelection( )
{
	if (document.criteria.city && document.criteria.county) {
		if (document.criteria.city.selectedIndex == -1 && document.criteria.county.selectedIndex == -1) {
			alert( "Please choose at least one City or County");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.city) {
		if (document.criteria.city.selectedIndex == -1) {
			alert( "Please choose at least one City");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.county) {
		if (document.criteria.county.selectedIndex == -1) {
			alert( "Please choose at least one County");
			return false;
		} else {
			return true;
		}
	}

	return true;
}

function VerifyCityCountycodeSelection( )
{
	if (document.criteria.citycode && document.criteria.countycode) {
		if (document.criteria.citycode.selectedIndex == -1 && document.criteria.countycode.selectedIndex == -1) {
			alert( "Please choose at least one City or County");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.citycode) {
		if (document.criteria.citycode.selectedIndex == -1) {
			alert( "Please choose at least one City");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.countycode) {
		if (document.criteria.countycode.selectedIndex == -1) {
			alert( "Please choose at least one County");
			return false;
		} else {
			return true;
		}
	}

	return true;
}

function VerifyCityAreaSelection( )
{
	if (document.criteria.city && document.criteria.area) {
		if (document.criteria.city.selectedIndex == -1 && document.criteria.area.selectedIndex == -1) {
			alert( "Please choose at least one City or Area");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.city) {
		if (document.criteria.city.selectedIndex == -1) {
			alert( "Please choose at least one City");
			return false;
		} else {
			return true;
		}
	}
	if (document.criteria.area) {
		if (document.criteria.area.selectedIndex == -1) {
			alert( "Please choose at least one Area");
			return false;
		} else {
			return true;
		}
	}

	return true;
}

function VerifyZipSelection( )
{

	if (document.criteria.zip) {
		if (document.criteria.zip.selectedIndex == -1) {
			alert( "Please choose at least one Zip Code");
			return false;
		} else {
			return true;
		}
	}

	return true;
}

// Check whether string s is empty.

	function IsEmpty(str) {
		return ((str == null) || (str.length == 0));
	}

	function IsDigit(ch) {
		return ((ch >= "0") && (ch <= "9"));
	}

	// Is the string a valid 5 digit zip code
	function IsZip(str) {
		if (IsEmpty(str)) {
			return false;
		}
		if (str.length != 5) {
			return false;
		}
		for (i=0; i < str.length; i++) {
			if (IsDigit(str.charAt(i))) {
				// Keep Going
			} else {
				return false;
			}
		}
		return true;
	}

	function IfValidZipClearCity() {
		var thelist = document.forms.criteria.citycode;
		var i;

		if (IsZip(document.forms.criteria.zip.value)) {
			for(i=0; i < thelist.length; i++) {
				thelist.options[i].selected=0;
			}
		}
	}
	function IsCitySelected() {
		if (document.criteria.citycode.selectedIndex == -1) {
			return false;
		} else {
			return true;
		}
	}
	function IfCityClearZip() {
		if (IsCitySelected()) {
			document.forms.criteria.zip.value = '';
		}
	}
	function CheckCityZip() {
		if (IsZip(document.criteria.zip.value)) {
			IfValidZipClearCity();
			return true;
		} else {
		    if (IsCitySelected()) {
				// Ok
			} else {
				alert('Please select atleast one area or zip code');
				return false;
			}
		}
		return true;
	}