/* Clear all messages */
function resetFields() {
	var allCells = document.getElementsByTagName('td');
	for (var i=0; i < allCells.length; i++) {
		if (allCells[i].className == 'validateVisible') {
			allCells[i].className = '';
		}
	}

	document.getElementById('validateMsg').className = 'validateHidden';
}

function validateContactForm() {
	resetFields();

	if (document.infoForm.surname.value == "") {
		alert("Please enter your surname.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('surnameRow').className = 'validateVisible';
		document.infoForm.surname.focus();
		return false;
	}

	if (document.infoForm.postcode.value == "") {
		alert("Please enter your postcode.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('postcodeRow').className = 'validateVisible';
		document.infoForm.postcode.focus();
		return false;
	}

	// Convert postcode to upper case
	if (document.infoForm.postcode.value != "") {
		document.infoForm.postcode.value = document.infoForm.postcode.value.toUpperCase();
	}

	if (document.infoForm.address1.value == "") {
		alert("Please enter your address.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('address1Row').className = 'validateVisible';
		document.infoForm.address1.focus();
		return false;
	}

	if (document.infoForm.email.value == "") {
		alert("Please enter your email.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('emailRow').className = 'validateVisible';
		document.infoForm.email.focus();
		return false;
	}

	if (!isValidEmail('email')) {
		alert("Please enter a valid email.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('emailRow').className = 'validateVisible';
		document.infoForm.email.focus();
		return false;
	}

	if (document.infoForm.email.value != "") {
		if (document.infoForm.email.value != document.infoForm.emailconfirm.value) {
			alert("Your email doesn't match with the confirm email.");
			document.getElementById('validateMsg').className = 'validateVisible';
			document.getElementById('emailconfirmRow').className = 'validateVisible';
			document.infoForm.emailconfirm.focus();
			return false;
		}
	}

	if (document.infoForm.subject.value == "") {
		alert("Please enter a subject.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('subjectRow').className = 'validateVisible';
		document.infoForm.subject.focus();
		return false;
	}

	if (document.infoForm.txtQuery.value == "") {
		alert("Please enter your query.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('queryRow').className = 'validateVisible';
		document.infoForm.txtQuery.focus();
		return false;
	}

	if (!document.infoForm.chkEmail.checked && !document.infoForm.chkPhone.checked && !document.infoForm.chkLetter.checked) {
		alert("You must check at least one of the preferred method of response.");
		document.getElementById('validateMsg').className = 'validateVisible';
		document.getElementById('responseRow').className = 'validateVisible';
		document.infoForm.chkEmail.focus();
		return false;
	}


	document.infoForm.process.value='1';
	document.infoForm.submit();
}


/*	Check the email */
function isValidEmail(EmailValField)
{
	var Email = document.getElementById(EmailValField).value;
	var filter  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (filter.test(Email)) {
		return true;
	} else {
		return false;
	}
}

/* Reset form */
function resetForm() {
	resetFields();
	document.infoForm.reset();
}

