function validFormSup(passForm)
{
	function mandCheck (formElement, errorText)
	{
		if(formElement.value == "")
		{
			alert(errorText);
			formElement.focus();
			return false;
		}
	}
	function isValidEmail (formElement, sText)
	{
        	var reEmail = /^(?:\w+\.?)*\w+@(?:[-\w]+\.)+\w+$/;
        	if (reEmail.test(sText) == false)
        	{
                	alert("Your e-mail address doesn't seem to be in a standard format.\nPlease double-check it and try again.");
                	formElement.focus();
                	return false;
        	}
	}
	function dropDownCheck (formElement, errorText)
	{
		if (formElement.value == "NO")
		{
			alert("Please select " + errorText + " from the drop-down list.");
			formElement.focus();
			return false;
		}
	}

	if (mandCheck(passForm.fullname, "Please enter your full name.") == false)
	{
		return false;
	}
	if ((passForm.telephone.value == '') && (passForm.mobile.value == ''))
	{
		alert("Please enter at least one contact telephone number (can be landline or mobile).");
		passForm.telephone.focus();
		return false;
	}
	if ((mandCheck(passForm.email, "Please enter your e-mail address.") == false) || (isValidEmail(passForm.email, passForm.email.value) == false))
	{
		return false;
	}
	if (mandCheck(passForm.address, "Please enter your address.") == false)
	{
		return false;
	}
	if (mandCheck(passForm.postcode, "Please enter your postcode.") == false)
	{
		return false;
	}
	if (dropDownCheck(passForm.county, "your county") == false)
	{
		return false;
	}
	if (dropDownCheck(passForm.etype, "your enquiry type") == false)
	{
		return false;
	}
	if ((passForm.etype.value == 'OT') && (passForm.other.value == ''))
	{
		alert("Please describe type of enquiry you have using the 'Other' box.");
		passForm.other.focus();
		return false;
	}
	return true;
}
