function validateFields() {
	var whiteSpace = /^[\s]+$/;
	
	var frmName = document.getElementById('Name');
	var frmEmail = document.getElementById('Email');
	var frmLocation = document.getElementById('Location');
	var frmMessage = document.getElementById('Message');

	if (frmName.value == '' || whiteSpace.test(frmName.value)) {
		alert("Please complete the name field before submitting");
		frmName.focus();
	}
	else if (frmEmail.value == '' || whiteSpace.test(frmEmail.value)) {
		alert("Please provide an email address we can contact you at");
		frmEmail.focus();
	}
	else if (!validEmail(frmEmail.value)) {
		alert("The provided email address does not appear to be valid");
		frmEmail.focus();
	}
	else if (frmMessage.value == '' || whiteSpace.test(frmMessage.value)) {
		alert("A message you want us to read must be provided");
		frmMessage.focus();
	}
	else {
		processForm();
	}
}

function processForm() {
	var dSuccess = document.getElementById('emailSuccess');
	var sContact = "/scripts/xmlHttpRequest.php?contact=true&xml=true";
	var sResult = false;
	
	showProgressBar();
	dSuccess.style.display = 'none';
	
	sResult = loadXMLPosDoc(sContact, "Name=" + ajaxUrlEncode(document.getElementById('Name').value) + "&Email=" + ajaxUrlEncode(document.getElementById('Email').value) + "&Location=" + ajaxUrlEncode(document.getElementById('Location').value) + "&Message=" + ajaxUrlEncode(document.getElementById('Message').value));	
	
	if (!sResult) document.cForm.submit();
}

addEvent(window, 'load', ajaxContactForm, false);
