/**
 * @author Dylan Spurgin
 */
jQuery(document).ready(function() {
	jQuery('#contactForm').validate({
		rules: {
			firstName: "required",
			lastName: "required",
			subject: "required",
			message: "required",
			state: "required",
			zip: {
				required: true,
				email: true
			},
			clearPassword: "required",
			confirmPassword: {
				required: true,
				equalTo: "#clearPassword"
			}
		},
		messages: {
			firstName: "First Name is a required field.",
			lastName: "Last Name is a required field.",
			subject: "Subject is a required field.",
			message: "Message is a required field.",
			state: "",
			zip: {
				required: "We need your email address to contact you",
				email: "Your email address must be in the format of name@domain.com"
			},
			clearPassword: "Password is a required field.",
			confirmPassword: {
				equalTo: "Passwords must match.",
				required: "Confirm Password is a required field."
			},
			terms: "You must agree to the Master Service Agreement."
		},
		highlight: function(element, errorClass) {
			jQuery(element).addClass(errorClass);
			if (jQuery(element).attr("type")==="checkbox") {
				jQuery(element).parent().parent().find("label[for=" + element.id + "]").removeClass("valid");
				jQuery(element).parent().parent().find("label[for=" + element.id + "]").addClass(errorClass);
			} else {
				jQuery(element).parent().find("img").remove();
				jQuery(element).parent().append("<img class='registerIcon' src='/html/wp-content/themes/invodo.com/images/exclamation.png' />");
			}
		},
		unhighlight: function(element, errorClass) {
			jQuery(element).removeClass(errorClass);
			jQuery(element).addClass("valid");
			if (jQuery(element).attr("type") === "checkbox") {
				jQuery(element).parent().parent().find("label[for=" + element.id + "]").removeClass(errorClass);
				jQuery(element).parent().parent().find("label[for=" + element.id + "]").addClass("valid");
			} else {
				jQuery(element).parent().find("img").remove();
				jQuery(element).parent().append("<img class='registerIcon' src='/html/wp-content/themes/invodo.com/images/check_sml.png' />");
			}
		},
		errorElement: "span",
		errorContainer: "#errorBox",
		errorLabelContainer: "#errorBox ul",
		wrapper: "li"
	});
});
