/*
Created 09/27/09
Questions/Comments: jorenrapini@gmail.com
COPYRIGHT NOTICE
Copyright 2009 Joren Rapini
*/

var required;
var email;
var errornotice;
var emptyerror;
var emailerror;

function validateForm(){
		// Validate required fields
		for (var i=0;i<required.length;i++) {
			var input = jQuery('#'+required[i]);
			if ((input.val() == "") || (input.val() == emptyerror)) {
				input.addClass("needsfilled");
				input.val(emptyerror);
				errornotice.fadeIn(750);
			} else {
				input.removeClass("needsfilled");
			}
		}
		// Validate the e-mail.
		if (!/^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/.test(email.val())) {
			email.addClass("needsfilled");
			email.val(emailerror);
		}

		// if any inputs on the page have the class 'needsfilled' the form will
		// not submit
		if (jQuery(":input").hasClass("needsfilled")) {
			return false;
		} else {
			errornotice.hide();
			return true;
		}
}
jQuery(document).ready(function(){
	// Place ID's of all required fields here.
	jQuery.noConflict();
	required = ["name", "email", "message"];
	// If using an ID other than #email or #error then replace it here
	email = jQuery("#email");
	errornotice = jQuery("#error");
	// The text to show up within a field when it is incorrect
	emptyerror = "Please fill out this field.";
	emailerror = "Enter a valid e-mail.";

	jQuery("#contactForm").submit(validateForm);

	// Clears any fields in the form when the user clicks on them
	jQuery(":input").focus(function(){
	   if (jQuery(this).hasClass("needsfilled") ) {
		   jQuery(this).val("");
		   jQuery(this).removeClass("needsfilled");
	   }
	});
});
