
jQuery(document).ready(function()
{
	jQuery("#wpsf_contact_form").submit(function() {	
		errors = new Array();	
		jQuery(this).children().filter(function(){
				return 	jQuery(this).find("label:has(:input)").length > 0;
			}).each(function(i){
					labelTxt = (jQuery(this).text());
					inputVal = jQuery(this).find(":input").val()
					if (labelTxt.indexOf("*") != -1){
						var emailPattern = /^([0-9a-zA-Z]([-.\w]*[0-9a-zA-Z])*@([0-9a-zA-Z][-\w]*[0-9a-zA-Z]\.)+[a-zA-Z]{2,9})$/;
						//var emailPattern = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
						if (labelTxt.indexOf("Email") != -1 && !emailPattern.test(inputVal))
						//if (labelTxt.indexOf("Email") != -1 && inputVal.length == 0)
						{
							errors.push("A valid <strong>email address</strong> is required.");
						}else if (labelTxt.indexOf("Message") != -1 && inputVal.length < 25){
							errors.push("A <strong>message</strong> that is at least 25 characters is required.");
						}else if (inputVal.length == 0){							
							offset = labelTxt.length-4;
							niceTxt = labelTxt.substring(0, offset);
							errors.push(niceTxt+" is required.");
						}
					}
				});
		if (errors.length != 0){
			var errorMsg="";
			if (jQuery("#errorMsg").length==0)
			{
				errorContainer = '<p id="errorMsg" style="border:2px red solid; padding:10px;"></p>';
				jQuery(this).prepend(errorContainer)
			}
			for (var i=0; i < errors.length; i++){
				errorMsg += errors[i]+"<br />";
			}
			jQuery("#errorMsg").html(errorMsg);
			return false;
		}
	});	
});