$(document).ready(function() {
	jQuery.validator.addMethod("firstName", function(value, element) {
    	return this.optional(element) || value.match(/^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/);
	});	
	
	jQuery.validator.addMethod("lastName", function(value, element) {
    	return this.optional(element) || value.match(/^[a-zA-Z]+(([\'\,\.\- ][a-zA-Z ])?[a-zA-Z]*)*$/);
	});	
	
	jQuery.validator.addMethod("phoneAll", function(phone_number, element) {
    	phone_number = phone_number.replace(/\s+/g, ""); 
		return this.optional(element) || phone_number.match(/^[1-9]+(([\.\- ][0-9 ])?[0-9])*$/);
	});
	
	$("#contactForm").validate({
		rules: {
			firstName: {
				required: true,
				firstName: true
			},
			lastName: {
				required: true,
				lastName: true
			},
			phone: {
				required: true,
				phoneAll: true
			},
			email: {
				required: true,
				email: true
			},
			date: "required",
			type: "required",
			how: "required"
		},
		messages: {
			firstName: "Enter your first name.",
			lastName: "Enter your last name.",
			phone: "Enter a valid phone number.",
			email: "Enter valid e-mail address.",
			date: "Enter event date.",
			type: "Select event type.",
			how: "Select how did you hear about us."
		},
		submitHandler: function(form) {
			$(form).ajaxSubmit({
				success: function() {
					$('#contactForm').hide(250);
					$('#thankYou').show(500);
				}
			});
		}
	});
});
