
//<![CDATA[
		   
function isEmail(emailAddress){
emailAddressValue=emailAddress.value.toLowerCase();
var countryTLDs=/^(ac|ad|ae|af|ag|ai|al|am|an|ao|aq|ar|as|at|au|aw|az|ba|bb|bd|be|bf|bg|bh|bi|bj|bm|bn|bo|br|bs|bt|bv|bw|by|bz|ca|cc|cd|cf|cg|ch|ci|ck|cl|cm|cn|co|cr|cu|cv|cx|cy|cz|de|dj|dk|dm|do|dz|ec|ee|eg|eh|er|es|et|eu|fi|fj|fk|fm|fo|fr|ga|gd|ge|gf|gg|gh|gi|gl|gm|gn|gp|gq|gr|gs|gt|gu|gw|gy|hk|hm|hn|hr|ht|hu|id|ie|il|im|in|io|iq|ir|is|it|je|jm|jo|jp|ke|kg|kh|ki|km|kn|kp|kr|kw|ky|kz|la|lb|lc|li|lk|lr|ls|lt|lu|lv|ly|ma|mc|md|mg|mh|mk|ml|mm|mn|mo|mp|mq|mr|ms|mt|mu|mv|mw|mx|my|mz|na|nc|ne|nf|ng|ni|nl|no|np|nr|nu|nz|om|pa|pe|pf|pg|ph|pk|pl|pm|pn|pr|ps|pt|pw|py|qa|re|ro|ru|rw|sa|sb|sc|sd|se|sg|sh|si|sj|sk|sl|sm|sn|so|sr|st|sv|sy|sz|tc|td|tf|tg|th|tj|tk|tm|tn|to|tp|tr|tt|tv|tw|tz|ua|ug|uk|um|us|uy|uz|va|vc|ve|vg|vi|vn|vu|wf|ws|ye|yt|yu|za|zm|zw)$/;
var gTLDs=/^(aero|biz|com|coop|edu|gov|info|int|mil|museum|name|net|org|jobs)$/;
var basicAddress=/^(.+)@(.+)$/;
var specialChars='\\(\\)><@,;:\\\\\\\"\\.\\[\\]';
var validChars='\[^\\s'+specialChars+'\]';
var validCharset='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\'-_.';
var quotedUser='(\"[^\"]*\")';
var atom=validChars+'+';
var word='('+atom+'|'+quotedUser+')';
var validUser=new RegExp('^'+word+'(\.'+word+')*$');
var symDomain=new RegExp('^'+atom+'(\.'+atom+')*$');
var matchArray=emailAddressValue.match(basicAddress);
if(emailAddress.value==''||emailAddress==null){
return true;
}
if(matchArray==null){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier la syntaxe.');
emailAddress.focus();
return false;
}else{
var user=matchArray[1];
var domain=matchArray[2];
for(i=0;i<user.length;i++){
if(validCharset.indexOf(user.charAt(i))==-1){
alert('L\'adresse e-mail contient des caracteres invalides,\nveuillez verifier la partie avant l\'arobase (@).');
emailAddress.focus();
return false;
}
}
for(i=0;i<domain.length;i++){
if(validCharset.indexOf(domain.charAt(i))==-1){
alert('L\'adresse e-mail contient des caracteres invalides,\nveuillez verifier l\'extension du domaine apres l\'arobase (@).');
emailAddress.focus();
return false;
}
}
if(user.match(validUser)==null){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier la partie avant l\'arobase (@).');
emailAddress.focus();
return false;
}
var atomPat=new RegExp('^'+atom+'$');
var domArr=domain.split('.');
var len=domArr.length;
for(i=0;i<len;i++){
if(domArr[i].search(atomPat)==-1){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier l\'extension du domaine apres l\'arobase (@).');
emailAddress.focus();
return false;
}
}
if((domArr[domArr.length-1].length==2)&&(domArr[domArr.length-1].search(countryTLDs)==-1)){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier le suffixe du domaine (.COM, .ORG, .NET, ...).');
emailAddress.focus();
return false;
}
if((domArr[domArr.length-1].length>2)&&(domArr[domArr.length-1].search(gTLDs)==-1)){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier le suffixe du domaine (.COM, .ORG, .NET, ...).');
emailAddress.focus();
return false;
}
if((domArr[domArr.length-1].length<2)||(domArr[domArr.length-1].length>6)){
alert('L\'adresse e-mail semble incorrecte,\nveuillez verifier le suffixe du domaine (.COM, .ORG, .NET, ...).');
emailAddress.focus();
return false;
}
if(len<2){
alert('L\'adresse e-mail semble incorrecte.');
emailAddress.focus();
return false;
}
}
return true;
}
String.prototype.trim = function() { return this.replace(/^\s*(\b.*\b|)\s*$/, "$1"); }

function mandatoryText(input,fieldName){
	if(input.value.trim()=='' || input.value=='Veuillez saisir votre nom' || input==null){
		alert('Veuillez saisir votre '+fieldName+'.');
		input.focus();
		return false;
	}
	else {
		var charInvalidName = "\²\%\*\,\.\?\;\:\§\!\#\$\£\¤\(\)\~\/\\\'\=\+\{\}\[\]|^@&\"\"\<\>\©\®\À\Á\Â\Ã\Ä\Å\Æ\Ç\È\É\Ê\Ë\Ì\Í\Î\Ï\Ð\Ñ\Ò\Ó\Ô\Õ\Ö\Ø\Ù\Ú\Û\Ü\Ý\Þ\ß\à\á\â\ã\ä\å\æ\ç\è\é\ê\ë\ì\í\î\ï\ð\ñ\ò\ó\ô\õ\ö\ø\ù\ú\û\ü\ý\þ\ÿ";

		var i=0;
		Result = true;

//Boucle qui extrait chaque lettre de 'chaine' et qui regarde si elle correspond à un caractère interdit
		for(var i=0; i<document.newsletter.NAME.value.length; i++) {
			carac = document.newsletter.NAME.value.substring(i,i+1);
			if(charInvalidName.indexOf(carac)!=(-1)){;
         		Result = false;
      		}
   		}
		if(Result==false){
			alert("Votre nom contient un ou plusieurs caractères invalides\nVeuillez éviter les caractères spéciaux");
		   	input.focus();
			Result=false;
			return false;

			}

	}
	return true;
}

function validForm(){

		if(!mandatoryText(document.getElementById('NAME'), 'nom')) return;
		
		if(!mandatoryText(document.getElementById('EMAIL_FIELD'), 'email')) return;
//detect(document.newsletter.NAME.value);
		if(!isEmail(document.getElementById('EMAIL_FIELD'))) return;
		document.forms.newsletter.action="newsl/save_newsletter.php";
		document.forms.newsletter.submit();
	
			
}

//]]>

