
function sendit() {
	
	ready_to_send = true;
	$('sendError').update("<span onclick='clearErrMessage()' style='float:right;cursor:pointer; color:#D76464; clear:left'>[ x ]</span>"); // Clear!

	// Check fields
	var civi = $("Civi").getValue();
	var nom = $('Nom').getValue();
	var prenom = $('Prenom').getValue()
	var mail = $("Mail").getValue();
	var user = prenom +' '+ nom;
	
	
	// Civilité ?
	if(civi==""){ $('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#82B63D; clear:both'> Vous avez oubli&eacute; d'indiquer votre civilit&eacute;. </span>" +"<br />"); }

	// Nom
	if( (nom.length != "" && nom.length > 1) ){}
	else {
		$('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#82B63D; clear:both'> Vous devez entrer votre nom! </span>" +"<br />");
		ready_to_send = false;
	}

	// Prénoom
	if( (prenom.length != "" && prenom.length > 1) ){}
	else {
		$('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#82B63D; clear:both'> Vous devez entrer votre pr&eacute;nom! </span>" +"<br />");
		ready_to_send = false;
	}

	// Un mail ?
	//if(mail==""){ $('Mail').value =''; $('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#06AFFF; clear:both'> Vous ne serez pas contact&eacute; par mail. </span>" +"<br />"); }
	
	if(mail!="") {
		if( emailCheck(mail) ) { }
		else {
			$('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#D76464; clear:both'> "+ emailCheck(mail,{hilite:false,returnErrCode:true}) +" </span>" +"<br />");
			ready_to_send = false;
		}
	}else{
		$('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#D76464; clear:both'> Vous devez fournir une adresse mail valide. </span>" +"<br />"); 
		ready_to_send = false;
	}
	
	// Message...
	var message = $('Message').getValue();
	if( message.length != "" && message.length > 10){}
	else {
		$('sendError').update( $('sendError').innerHTML + "<span style='float:left; color:#D76464; clear:both'> Le message est trop court! </span>" +"<br />");
		ready_to_send = false;
	}

	if( ready_to_send ) {
		
		$('sendError').update(""); // Clear!
		
		$('send_button').value = "Envoi en cours...";
		$('send_button').disabled=true;
		$('send_button').onclick = null;
		
		var key = getKey(24,'ALNUM');
		var url = '/postmail.php?certified='+key;
	
		new Ajax.Request(url, {
			method: 'post',
			
			parameters: {
				Civi: $('Civi').getValue(),
				Nom: $('Nom').getValue(),
				Prenom: $('Prenom').getValue(),
				Mail: $('Mail').getValue(),
				Client: $('Client_Radiana').getValue(),
				Message: $('Message').getValue(),
				certified: key
			}, 
			onSuccess: function(transport) {
				var notice = $('sendForm');
				if (transport.responseText.match(/SEND OK/)){
					clearErrMessage();
					notice.update("Merci "+ user +",<br /><span style='color:#82B63D; clear:both'>Votre message a bien &eacute;t&eacute; envoy&eacute;.</span><br/><br />Votre demande sera trait&eacute;e, et nous y r&eacute;pondrons le plus rapidement possible.<br />Vous recevrez une r&eacute;ponse &agrave; l'adresse mail <label class='text'>"+ mail +"</label> que vous avez fournie.<br /><br /><a href='/fr/contact.php' class='navtoapage' onclick='getData(this.href); return false;' >Retour</a><br /><br /><br /><br /><br /><br /><br /><br />");
				}else	if (transport.responseText.match(/NOT SENT/)){
					$('sendError').update("<span style='float:left; color:#D76464; clear:both'>Erreur! Le message n'a pas &eacute;t&eacute;. Essayez d'ici quelques instants.</span>");
				}else{
					$('sendError').update("<span style='float:left; color:#D76464; clear:both'>Erreur! Le message n'a pas &eacute;t&eacute; envoy&eacute; correctement.</span>");
				}
					
				$('send_button').disabled = false;
				$('send_button').value = "Envoyer";
				$('send_button').onclick = sendit;												
			}	
		}); 
	
	}
	else{
		$('sendError').update( $('sendError').innerHTML+"<br />"+ "<span style='float:left; color:#D76464; clear:both'> <strong>Votre message n'a pas &eacute;t&eacute; envoy&eacute;.</strong> </span>");
		}
}

/* (c) Unknow Anonymous */
/* emailStr: [ valid email address ] - bool */
/* getError: [ to return the error ] - bool */
function emailCheck (emailStr , Options) {

	var checkTLD=1;
	var knownDomsPat=/^(com|net|org|edu|int|mil|gov|arpa|biz|aero|name|coop|info|pro|museum|asia|)$/;
	var emailPat=/^(.+)@(.+)$/;
	var specialChars="\\(\\)><@,;:\\\\\\\"\\.\\[\\]";
	var validChars="\[^\\s" + specialChars + "\]";
	var quotedUser="(\"[^\"]*\")";
	var ipDomainPat=/^\[(\d{1,3})\.(\d{1,3})\.(\d{1,3})\.(\d{1,3})\]$/;
	var atom=validChars + '+';
	var word="(" + atom + "|" + quotedUser + ")";
	var userPat=new RegExp("^" + word + "(\\." + word + ")*$");
	var domainPat=new RegExp("^" + atom + "(\\." + atom +")*$");
	var matchArray=emailStr.match(emailPat);

	/////verifier si le champ es vide
	if (emailStr ==''){
		if(Options && Options.returnErrCode){ return "Veuillez saisir votre adresse email."; }else{ return false; }
	}

	if (matchArray==null) {
		if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	}

	var user=matchArray[1];
	var domain=matchArray[2];

	for (i=0; i<user.length; i++) {
		if (user.charCodeAt(i)>127) {
			if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	  	}
	}

	for (i=0; i<domain.length; i++) {
		if (domain.charCodeAt(i)>127) {
			if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
		}
	}

	if (user.match(userPat)==null) {
		if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	}

	var IPArray=domain.match(ipDomainPat);
	if (IPArray!=null) {

		 for (var i=1;i<=4;i++) {
				 if (IPArray[i]>255) {
				 		if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	   		 }
		 }
		 return true;
	}

	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) {
			if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
		}
	}


	if (checkTLD && domArr[domArr.length-1].length!=2 &&
		domArr[domArr.length-1].search(knownDomsPat)==-1) {
		if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	}

	// Make sure there's a host name preceding the domain.

	if (len<2) {
		if(Options && Options.returnErrCode){ return "Votre adresse email est invalide !"; }else{ return false; }
	}
	
	return true;

}


/* (c) 2005 Tocra.org - Brémond Sébastien */
/* sMode: [ 'AL' , 'NUM' , 'ALNUM' ] - string */
function getKey(iLenKey,sMode){ if(iLenKey==0){return false;}else{ var sALchar = "abcdefghijklmnopqrstuvwxyz"; var sNUMchar = "0123456789"; var sALNUMchar = ""; switch(sMode){	case "AL": sALNUMchar = sALchar; break; case "NUM": sALNUMchar = sNUMchar; break; case "ALNUM": sALNUMchar = sALchar+sNUMchar; break; default: sALNUMchar = sALchar; } var tmpVal = ""; for(n=0;n<iLenKey;n++){ ip = Math.round(Math.random()*(sALNUMchar.length-1)); c = sALNUMchar.substring(ip,ip+1); tmpVal = tmpVal.concat(c); } return tmpVal; } }

function clearErrMessage(){ return $('sendError').update(''); }