// JavaScript Document



function submitForm() {
	var output = "";
	var errors = 0;
	
	//check the fields that we require
	if($('#form_name').val().length < 1) {
		output += "- Please enter your name.\n";
		$('#label_name').css("color","#ff0000");
		errors++;
	} else {
		$('#label_name').css("color","#868686");	
	}
	if(!isValidEmailAddress($('#form_email').val())) {
		output += "- Please enter a valid email address.\n";
		$('#label_email').css("color","#ff0000");
		errors++;
	} else {
		$('#label_email').css("color","#868686");	
	}
	if($('#form_message').val().length < 1) {
		output += "- Please provide a message.\n";
		$('#label_message').css("color","#ff0000");
		errors++;
	} else {
		$('#label_message').css("color","#868686");	
	}
	
	//if there are errors tell the user
	if(errors > 0) {
		output = "There are " + errors + " errors in your form:\n\n" + output;
		alert(output);
		return false;
	} else {
		$('#form_contact').submit();
	}
	
}


function isValidEmailAddress(emailAddress) {
	var pattern = new RegExp(/^(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){255,})(?!(?:(?:\x22?\x5C[\x00-\x7E]\x22?)|(?:\x22?[^\x5C\x22]\x22?)){65,}@)(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22))(?:\.(?:(?:[\x21\x23-\x27\x2A\x2B\x2D\x2F-\x39\x3D\x3F\x5E-\x7E]+)|(?:\x22(?:[\x01-\x08\x0B\x0C\x0E-\x1F\x21\x23-\x5B\x5D-\x7F]|(?:\x5C[\x00-\x7F]))*\x22)))*@(?:(?:(?!.*[^.]{64,})(?:(?:xn--)?[a-z0-9]+(?:-[a-z0-9]+)*\.){0,126}(?:(?:[a-z][a-z0-9]*)|(?:(?:xn--)[a-z0-9]+))(?:-[a-z0-9]+)*)|(?:\[(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){7})|(?:(?!(?:.*[a-f0-9][:\]]){7,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,5})?)))|(?:(?:IPv6:(?:(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){5}:)|(?:(?!(?:.*[a-f0-9]:){5,})(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3})?::(?:[a-f0-9]{1,4}(?::[a-f0-9]{1,4}){0,3}:)?)))?(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))(?:\.(?:(?:25[0-5])|(?:2[0-4][0-9])|(?:1[0-9]{2})|(?:[1-9]?[0-9]))){3}))\]))$/i);
	return pattern.test(emailAddress);
}