$.validator.addMethod("codeNaf", function(code, element) {
	   return (code=="" || code.match(/^[0-9]{4}[a-zA-Z]$/));
	}, "Code invalide (4 chiffres + 1 lettre)");

$.validator.addMethod("tvaIntra",function(code, element) {
	var codePays = $("#codePays").val();
	if (code=="") return true;
	switch(codePays) {
		case '10000' : //France
			return code.match(/^FR[0-9]{11}$/);
			break;
		case '13100' : //Belgique
			return code.match(/^BE0\w{9}\w?$/);
			break;
		case '13700' : //Luxembourg
			return code.match(/^LU[0-9]{8}$/);
			break;
		case '13500' : //PaysBas
			return code.match(/^NL\w{12}$/);
			break;
	} 
	return true;
}, "Erreur de saisie");

$.validator.addMethod("tvaIntraRequired",function(code, element) {
	var codePays = $("#codePays").val();
	if ($.trim(code).length == 0) {
		if( codePays == '10000' || codePays == '13100' || codePays == '13700' || codePays == '13500') {
			return false;
		}
	} 
	return true;
}, "Champ obligatoire");

$.validator.addMethod("telephoneFr", function(phone_number, element) {
	var regexp = new RegExp("[( )+]","g");
	phone_number = phone_number.replace(regexp, "");
	if (phone_number.length == 0) return true;
	var verif = /^[0-9]+$/
	if (verif.exec(phone_number) == null) return false;
	return true;
	
}, "Num&eacute;ro invalide");

$.validator.addMethod("numeroVoie", function(value, element, params) {
		var mot = $.trim(value);
		if (mot.length > 0)
		{
			if( ! /^[a-zA-Z0-9 ]*\d[a-zA-Z0-9 ]*$/.test(mot) )
				return false;
		}
		return true;
	}, "Saisir au moins un chiffre");
	
	
$.validator.addMethod("siteInternet", function(value, element) {
	var mot = $.trim(value);
	if (mot.length > 0)
	{
		if (mot.substring(0,7) != "http://")
			mot = "http://"+mot;
		return this.optional(element) || /^(https?|ftp):\/\/(((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:)*@)?(((\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5]))|((([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|\d|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.)+(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])*([a-z]|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])))\.?)(:\d*)?)(\/((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)+(\/(([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)*)*)?)?(\?((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|[\uE000-\uF8FF]|\/|\?)*)?(\#((([a-z]|\d|-|\.|_|~|[\u00A0-\uD7FF\uF900-\uFDCF\uFDF0-\uFFEF])|(%[\da-f]{2})|[!\$&'\(\)\*\+,;=]|:|@)|\/|\?)*)?$/i.test(mot);
	}
	return true;
}, "URL invalide");