// onclick event for submit

function onSubmit()
{
	if (!document.getElementById("contactus")) return false; // check if the form exists (stops error on form submitted confirmation
	document.forms["contactus"].onsubmit = validateFields;
	return true; 
}

addLoadEvent(onSubmit);

//

// Clear existing error messages created on the page

function clearErrors(){
	if (!document.getElementById("error")) return false;
	var spanMarkup = document.getElementById("error");
	var labelMarkup = spanMarkup.parentNode;
	labelMarkup.removeChild(spanMarkup);
}

//

// Validation functions with inline error messages

function validateFields() {
	
	var emailAddress = document.forms["contactus"]["emailaddress"];
	
// validate email address exists
	
	if (emailAddress.value == "") {
		clearErrors();
		var errorSpan = document.createElement("span");
		var errorMessage = document.createTextNode("is required");
		
		errorSpan.appendChild(errorMessage);
		errorSpan.className = "errorMSG";
		errorSpan.id = "error";
		
		var fieldLabel = emailAddress.previousSibling;
		
		while (fieldLabel.nodeName.toLowerCase() != "label")
		{
		  fieldLabel = fieldLabel.previousSibling;
		}
		fieldLabel.appendChild(errorSpan);
		fadeUpErrors();
		return false;
	}
	else {
		clearErrors();
	}
	
// validate email address is valid
	
	if (emailAddress.value.indexOf('@') < 0 || document.contactus.emailaddress.value.indexOf('.') < 0 || document.contactus.emailaddress.value.length<5) {
		clearErrors();
		var errorSpan = document.createElement("span");
		var errorMessage = document.createTextNode("must be a valid email address");
		
		errorSpan.appendChild(errorMessage);
		errorSpan.className = "errorMSG";
		errorSpan.id = "error";
		
		var fieldLabel = emailAddress.previousSibling;
		
		while (fieldLabel.nodeName.toLowerCase() != "label")
		{
		  fieldLabel = fieldLabel.previousSibling;
		}
		fieldLabel.appendChild(errorSpan);
		fadeUpErrors();
		return false;
	}
	else {
		clearErrors();
	}

// validate subject  

	var emailSubject = document.forms["contactus"]["subject"];
	if (emailSubject.value == "") {
		var errorSpan = document.createElement("span");
		var errorMessage = document.createTextNode("is required");
		
		errorSpan.appendChild(errorMessage);
		errorSpan.className = "errorMSG";
		errorSpan.id = "error";
		
		var fieldLabel = emailSubject.previousSibling;
		
		while (fieldLabel.nodeName.toLowerCase() != "label")
		{
		fieldLabel = fieldLabel.previousSibling;
		}
		fieldLabel.appendChild(errorSpan);
		fadeUpErrors();
		return false;
	}
	else {
		clearErrors();
	}

// validate message  

	var emailMessage = document.forms["contactus"]["message"];
	if (emailMessage.value == "") {
		var errorSpan = document.createElement("span");
		var errorMessage = document.createTextNode("is required");
		
		errorSpan.appendChild(errorMessage);
		errorSpan.className = "errorMSG";
		errorSpan.id = "error";
		
		var fieldLabel = emailMessage.previousSibling;
		
		while (fieldLabel.nodeName.toLowerCase() != "label")
		{
		fieldLabel = fieldLabel.previousSibling;
		}
		fieldLabel.appendChild(errorSpan);
		fadeUpErrors();
		return false;
	}
	else {
		clearErrors();
	}
// if everything validates then...	 
	
	return true;
}
