jQuery().ready(function() {
						
	jQuery.validator.addMethod("zip", function(value, element) {
                        return this.optional(element) || value.match(/^((\d{5}-\d{4})|(\d{5})|([a-z]\d[a-z]\s?\d[a-z]\d))$/i);
                }, "US or Canadian postal code only") 
				

	// Configuration de la validation
	$("#f").validate({
		
		showErrors: function(errorMap, errorList) {
			this.defaultShowErrors();
		},
		
		// Conteneur de la liste d'erreurs
		errorLabelContainer: "#errorsBox ul",
		wrapper: "li", 
		
		highlight: function(element, errorClass) {
			if ($(element).attr("id") == "noTel1" || $(element).attr("id") == "noTel2" || $(element).attr("id") == "noTel3") {
				$("label[for=noTel]").addClass(errorClass);
			} else {
				$("label[for=" + element.name + "]").addClass(errorClass);
			}
		},
		
		unhighlight: function(element, errorClass) {
			if ($(element).attr("id") == "noTel1" || $(element).attr("id") == "noTel2" || $(element).attr("id") == "noTel3") {
				$("label[for=noTel]").removeClass(errorClass);
			} else {
				$("label[for=" + element.id + "]").removeClass(errorClass);
			}
		},
		
		rules: {	
			nom : "required",
			courriel: {
				required: true, 
                email: true 
			},
			Postal: {
				required: true, 
                zip: true 
			}
			
		},
		
		messages: {
			nom : "Votre nom est requis.",
			courriel: {
				required: "Votre courriel est requis.",
				email: "Votre courriel n'est pas valide."
			},
			Postal: {
				required: "Votre code postal est requis.",
				zip: "Votre code postal n'est pas valide."
			}
			
		}
		
	});

});