var theForm = document.forms['form'];
if (!theForm) {
    theForm = document.form;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() != false)) {
        theForm.__EVENTTARGET.value = eventTarget;
        theForm.__EVENTARGUMENT.value = eventArgument;
        theForm.submit();
    }
}

function getHTTPObject(){
	if (window.ActiveXObject) { 
		return new ActiveXObject("microsoft.XMLHTTP");
	} else if (window.XMLHttpRequest) {
		return new XMLHttpRequest();
	} else {
		alert("Your browser does not support AJAX");
		return null;
	}
}

function validateThis() {

	var name = document.getElementById('contact_name').value;
	var telephone = document.getElementById('contact_telephone').value;
	var email = document.getElementById('contact_email').value;
	var postcode = document.getElementById('contact_postcode').value;
	var message = document.getElementById('contact_message').value;
	var consent = (document.getElementById('contact_consent').checked ? "true" : "false");
	
	
	var error = false;
	
	if (name == "") {
		error = true;	
	}
	
	
	
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false) {
		error = true;	
	}
	
	
	if(!validatePhoneNumber(telephone)) {
		error = true;
	}

	
	if(!error) {
	
	sendThis(name,telephone,email,postcode,message, consent);
		
	} else {
		showError();
	}
}

function validateThisBooking() {

	var name = document.getElementById('booking_name').value;
	var telephone = document.getElementById('booking_number').value;
	var email = document.getElementById('booking_email').value;
	var postcode = document.getElementById('booking_postcode').value;
	var message = document.getElementById('booking_message').value;
	var consent = (document.getElementById('booking_consent').checked ? "true" : "false");
	
	var error = false;
	
	if (name == "") {
		error = true;	
	}
	
	
	
	var reg = /^([A-Za-z0-9_\-\.])+\@([A-Za-z0-9_\-\.])+\.([A-Za-z]{2,4})$/;
	if(reg.test(email) == false) {
		error = true;	
	}
	
	
	if(postcode == "") {
		error = true;	
	}
	
	if(!validatePhoneNumber(telephone)) {
		error = true;
	}

	
	if(!error) {
	
	sendThisBooking(name,telephone,email,postcode,message, consent);
		
	} else {
		showBookingError();
	}
}


function sendThis(name, telephone, email, postcode, message, consent) {

	var urlString = "contact_engine.php?func=Contact";
	urlString += "&name=" + name;
	urlString += "&telephone=" + telephone;
	urlString += "&email=" + email;
	urlString += "&postcode=" + postcode;
	urlString += "&message=" + message;
	urlString += "&consent=" + consent;
	
	httpObject = getHTTPObject();
	
	if(httpObject != null) {
		
			var mytime= "&ms="+new Date().getTime();
			httpObject.open("GET", urlString+mytime,true);
			httpObject.send(null);
			httpObject.onreadystatechange = setOutput;				
		}
	
}

function sendThisBooking(name, telephone, email, postcode, message, consent) {

	var urlString = "contact_engine.php?func=Booking";
	urlString += "&name=" + name;
	urlString += "&telephone=" + telephone;
	urlString += "&email=" + email;
	urlString += "&postcode=" + postcode;
	urlString += "&message=" + message;
	urlString += "&consent=" + consent;
	
	httpObject = getHTTPObject();
	
	if(httpObject != null) {
		
			var mytime= "&ms="+new Date().getTime();
			httpObject.open("GET", urlString+mytime,true);
			httpObject.send(null);
			httpObject.onreadystatechange = setBookingOutput;				
		}
	
}

function setOutput() {

	if(httpObject.readyState == 4) {
	
		var output = httpObject.responseText;
		//alert (output);
		if(output == 1) {
		//success
			document.getElementById('email_Form').style.display = "none";
			document.getElementById('error').style.display = "none";
			document.getElementById('confirmation').style.display = "block";
			
		} else {
		//fail	
			document.getElementById('email_Form').style.display = "none";
			document.getElementById('error').style.display = "none";
			document.getElementById('sendFail').style.display = "block";
		}	
	}	
}

function setBookingOutput() {

	if(httpObject.readyState == 4) {
	
		var output = httpObject.responseText;
		//alert (output);
		if(output == 1) {
		//success
			document.getElementById('booking_form').style.display = "none";
			document.getElementById('booking_error').style.display = "none";
			document.getElementById('booking_confirmation').style.display = "block";
			
		} else {
		//fail	
			document.getElementById('booking_emailForm').style.display = "none";
			document.getElementById('booking_error').style.display = "none";
			document.getElementById('booking_sendFail').style.display = "block";
		}	
	}	
}

function showError() {

	document.getElementById('error').style.display = "block";
	
}

function showBookingError() {

	document.getElementById('booking_error').style.display = "block";
	
}

function validatePhoneNumber(number) {
	newnumber = number.split("");
	var numCount = 0;
	
	for (var i in newnumber) {
		if(checkIfValid(newnumber[i])) {	
			if(checkIfNumber(newnumber[i])) {	
				numCount ++;	
			}
		} else {
			return false;
		}
	}
	
	if(numCount >=10) {
		return true;
	} else {
		return false;
	}
}

function checkIfValid(char) {
	var validCharacters = "0123456789 +-()";
	validCharacters = validCharacters.split("");
	
	for(var i in validCharacters) {
	
		if(validCharacters[i] == char) {
			
			return true;
		}
	
	}
	return false;

}

function checkIfNumber(char) {
	var numbers = "0123456789";
	numbers = numbers.split("");
	
	for (var i in numbers) {
	
		if(numbers[i] == char) {
			return true;
		}
	
	}
	return false;

}

