function validate(){
	return  checkName() && checkNumberOrEmail() && checkContactMethod() &&  checkPostCode() && checkGuests()
}

function checkName(){
	if (document.contactForm.name.value == ""){
		alert("Please enter your full name." + "\n")
		return false
	}
	else
	        return true
}

function checkNumberOrEmail(){
	if(document.contactForm.telephoneNumber.value=="" && document.contactForm.email.value==""){
		alert("You must enter either a valid telephone number or email address for us to contact you by")
		return false
	}
	if(document.contactForm.telephoneNumber.value!=""){
		return checkTelNumber()
	}
	if(document.contactForm.email.value!=""){
		return checkEmail()
	}
}

function checkNumber(){
        var x=document.contactForm.telephoneNumber.value
        var anum=/(^\d+$)|(^\d+\.\d+$)/
        if (anum.test(x))
                testresult=true
        else{
                alert("Your telephone number cannot have characters other than numbers.\nPlease check and resubmit.")
                testresult=false
        }
return (testresult)
}

function checkBan(){
if (document.layers||document.all||document.getElementById)
	return checkNumber()
else
	return true
}

function checkPost(){
	if(document.contactForm.contactPreference.value == "Post"){
		if(document.contactForm.address1.value == "" || document.contactForm.town.value == "" || document.contactForm.city.value == "" || document.contactForm.postCode.value == ""){
			alert("If you wish to be contacted by post, please enter yout full postal address")
			return false
		}
	}
}

function checkEmail() {
	email = document.contactForm.email.value
	AtPos = email.indexOf("@")
	StopPos = email.lastIndexOf(".")
	Message = ""

	if (email == "") {
		alert("Please enter a valid Email address" + "\n")
		return false
	}

	if (AtPos == -1 || StopPos == -1) {
		alert("Please enter a valid Email address" + "\n")
		return false
	}

	if (StopPos < AtPos) {
		alert("Please enter a valid Email address" + "\n")
		return false
	}

	if (StopPos - AtPos == 1) {
		alert("Please enter a valid Email address" + "\n")
		return false
	}

	else
	return true
}

function checkTelNumber(){
	if(document.contactForm.telephoneNumber.value!=""){
		return checkChars9() && checkBan()
	}
	else
		return true
}

function checkChars9(){
	var minlength=9
	if (document.contactForm.telephoneNumber.value.length<minlength)
		{
		alert("Your Telephone number seems to be too short, please check and resubmit with full area code.")
		return false
		}
	else
		return true
}

function removeSpaces(string) {
	var tstring = "";
	string = '' + string;
	splitstring = string.split(" ");
	for(i = 0; i < splitstring.length; i++)
	tstring += splitstring[i];
	return tstring;
}

function checkContactMethod() {
	if(document.contactForm.contactPreference.value == "Please Select"){
		alert("Please select the means you wish us to contact you by.")
		return false
		}
else
	return true
}

function checkPostCode(){
	if(document.contactForm.postCode.value!=""){
		if (document.contactForm.postCode.value.length<5){
			alert("Your Post Code must contain at least 5 digits.")
			return false
			}
		else
			return true
	}
}


function checkGuests(){
	if(document.contactForm.numberOfAdults.value == 0){
		alert("There must be at least 1 adult in the party")
		return false
	}
	else if((parseInt(document.contactForm.numberOfAdults.value) + parseInt(document.contactForm.numberOfChildren.value)) > 6){
		alert("There may only be a maximum of 6 guests")
		return false
	}
	else
		return true

}

function checkAddInfo(){
	if (document.contactForm.addInfo.value == ""){
			alert("Please enter any additional information relating to your request.")
			return false
	}
	else
		return true
}

