function trim (chaine) {
 return chaine.replace(/(^\s*)|(\s*$)/g, "");
}

function isEmail(adresse_email){

arobase = adresse_email.indexOf("@");
point = adresse_email.indexOf(".",arobase);
mauvais_endroit_point = arobase+1;
double_point = adresse_email.indexOf("..",arobase);
nbre_carac = adresse_email.length - point;
double_arobase = adresse_email.indexOf("@",arobase+1);
   
if ( (arobase < 1) || (point <= mauvais_endroit_point) || (adresse_email.length < 5) || (double_point >= 0) || (nbre_carac < 3) || (double_arobase >= 0) )
{return false;}

else {return true}
}

function isInteger(s){
	var i;
    for (i = 0; i < s.length; i++){   
        // Check that current character is number.
        var c = s.charAt(i);
        if (((c < "0") || (c > "9"))) return false;
    }
    // All characters are numbers.
    return true;
}	


function isDept(dept) {
  
  var mydept = trim(dept);
  
  if ( (mydept == "2A") || (mydept == "2a") ||(mydept == "2B") || (mydept == "2b") || (mydept == "971") || (mydept == "972") || (mydept == "974")) {
  	return true;
  }
  
	if ( (mydept.length == 2) && isInteger(mydept) && (mydept != "00") && (mydept != "96") && (mydept != "97") && (mydept != "98") && (mydept != "99")) {return true;}
	
	
	else {return false;}
}


function Check_FormCompte(formulaire){
	
	var dept = formulaire.dept_id.value;
	
	if (dept == "") {
			alert ("Veuillez saisir votre n° de département");
			return(false);
		}
			
	if (!(isDept(dept))) {
			alert ("Le n° de département saisi est incorrect");
			return(false);
		}
	
	return(true);	
				

}	

function Check_FormPubli(formulaire){
		  	
	var email = formulaire.mail_publi.value;
	var check = formulaire.checkAbo.value;
	
	
	if (!(isEmail(email)) && email != '' && check == 1) {
		alert ("L'adresse e-mail est incorrect");
		return(false);
	}

	if(check == 0) formulaire.mail_publi.value = '';
	
	return(true);
}

function Check_FormPubliUK(formulaire){
		  	
	var email = formulaire.mail_publi.value;
	var check = formulaire.checkAbo.value;
	
	if (!(isEmail(email)) && email != '' && check == 1) {
		alert ("Your e-mail is not valid");
		return(false);
	}
	
	if(check == 0) formulaire.mail_publi.value = '';

	return(true);
}

function Check_FormPubli_mini(formulaire){
		  	
	var email = formulaire.mail_publi.value;
	var check = formulaire.checkAbo.value;
	
	
	if (!(isEmail(email)) && email != '' && check == 1) {
		alert ("L'adresse e-mail est incorrect");
		return(false);
	}

	if(check == 0) formulaire.mail_publi.value = '';
	
	return(true);
}

function Check_FormPubli_miniUK(formulaire){
		  	
	var email = formulaire.mail_publi.value;
	var check = formulaire.checkAbo.value;
	
	if (!(isEmail(email)) && email != '' && check == 1) {
		alert ("Your e-mail is not valid");
		return(false);
	}
	
	if(check == 0) formulaire.mail_publi.value = '';

	return(true);
}	

function Check_FormCaisse(formulaire){
	
	var dept = formulaire.dept_id.value;
	
	if (dept == "") {
		alert ("Veuillez saisir votre n° de département");
		return(false);
	}

 if (!(isDept(dept))) {
 	alert ("Le n° de département saisi est incorrect");
 	return(false);
 }
	
	return(true);
}	

function Check_FormRebonds(){
	
	var dept = document.formrebond.dept_id.value;
	
	if (dept == "") {alert ("Veuillez saisir votre n° de département"); return(false);}
	else {
		if (!(isDept(dept))) {alert ("Le n° de département saisi est incorrect"); return(false);}
		else 	{
					return (true);}
	}			
 return(false);
}	

function Check_FormPubliCentre(){
		  	
	var email = trim(document.formpubli.mail.value);
	var nom = trim(document.formpubli.nom.value);
	var prenom = trim(document.formpubli.prenom.value);
	var codepostal = trim(document.formpubli.cp.value);
	
	if (nom == "") {
			alert ("Veuillez saisir votre nom");
			return(false);
	}
	
	if (prenom == "") {
		alert ("Veuillez saisir votre prénom");
		return(false);
		}
	
	if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
	
	if (!(isEmail(email))) {
		alert ("L'adresse e-mail est incorrect");
		return(false);	
	}
	
	if (!( (isInteger(codepostal)) && (codepostal.length==5))) {
		alert("Votre code postal n'est pas valide");
		return(false);	
	
	}	

	if (!(Check_Publications())) {
		alert("Merci de choisir les publications auxquelles vous souhaitez vous abonner");
		return(false);	
	}
	
	return(true);	
		      	
}	

function Check_FormContact2(formulaire){
	
	var email = trim(formulaire.mail.value);
	var nom = trim(formulaire.nom.value);
	var prenom = trim(formulaire.prenom.value);
	var message = trim(formulaire.message.value);
	var security_code = trim(formulaire.security_code.value);
	
	if (nom == "") {
		alert ("Veuillez saisir votre nom");
		return(false);
		}
  
  if (prenom == "") {
		alert ("Veuillez saisir votre prénom");
		return(false);
		}
 
 if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
		
 if (!(isEmail(email))) {
 		alert ("L'adresse e-mail est incorrect");
 		return(false);
 		}
		        
 if (message == "") {
		alert ("Veuillez saisir votre message");
		return(false);
		}
	return(true);
	
	if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return(false);
		}
}	

function Check_FormTrouverAgence(formulaire)
{

  // Localité obligatoire pour les adresses
  if (formulaire.cityTxt.value == "") {
    alert("Le champ Ville ou Code postal doit être renseigné.");
    return (false);
  }
  // Le departement n'est pas un chiffre
  if ((formulaire.dept.value != "") && (formulaire.dept.value.search(/^\d[abAB0-9]?$/) < 0)) {
    alert("Département incorrect : saisissez des chiffres.");
    return (false);
  }
  if (formulaire.dept.value.length == 1 ) {
    // Ajouter un zéro devant
    formulaire.dept.value = "0" + formulaire.dept.value;
  }
  if (formulaire.rubrique[1].checked)
  {
    formulaire.dataMask.value = formulaire.rubrique[1].value;
  }
  else
  {
    formulaire.dataMask.value = "";
  }
  return (true);
}

function Check_FormEnvoiAmi(formulaire){
		  	
	var email1 = trim(formulaire.email1.value);
	var message = trim(formulaire.message.value);
	var nom = trim(formulaire.nom.value);
	var emailfrom = trim(formulaire.emailfrom.value);
	
	 
  if (email1 == "") {
		alert ("Veuillez saisir l'adresse e-mail du destinataire");
		return(false);
		}
		
 if (!(isEmail(email1))) {
 		alert ("L'adresse e-mail du destinataire est incorrect");
 		return(false);
 		}
		        
 if (message == "") {
		alert ("Veuillez saisir votre message");
		return(false);
		}
		
	if (nom == "") {
		alert ("Veuillez saisir votre nom");
		return(false);
		}
	
	 if (emailfrom == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
		
 if (!(isEmail(emailfrom))) {
 		alert ("votre adresse e-mail est incorrect");
 		return(false);
 		}
 	
 		
 			
	return(true);
}	

function Check_FormContact(formulaire){

var mybool = false;

if (
	(formulaire.rb_quest[0].checked) 
	||
	(formulaire.rb_quest[1].checked) 
	||
	(formulaire.rb_quest[2].checked) 
	||
	(formulaire.rb_quest[3].checked) 

	){ mybool = true;}
else {
	alert("Merci de choisir un sujet parmi la liste");

	}

return mybool;
}


function CheckLen(Targete,maxi,champ)
{
	
	StrLen = Targete.value.length
	
	if (StrLen > maxi )
	{
	Targete.value = Targete.value.substring(0,maxi);
	CharsLeft = maxi;
	}
	else
	{
	CharsLeft = StrLen;
	}
	var CharsLeft1 = maxi - CharsLeft;
	document.form_sendecard[champ].value = CharsLeft1;
}

function Check_Ecard(){

	var ecard_message = trim(document.form_sendecard.ecard_mess.value);
	var ecard_signature = trim(document.form_sendecard.ecard_sign.value);
	
	if (ecard_message == "" || ecard_signature == "") {
		alert("Merci de saisir un message et une signature");
		return false;
	}
	return true;
}
function Check_EcardEnvoi(){

var nom = trim(document.form_sendecard.ecard_nom.value);
var prenom = trim(document.form_sendecard.ecard_prenom.value);
var email = trim(document.form_sendecard.ecard_email.value);

var nbemail = document.form_sendecard.nb_email.value;

for (i=1;i<=nbemail;i++) {

	var emailtmp = document.form_sendecard["ecard_email"+i].value;
	 
	 if (!(isEmail(emailtmp))) {
		alert("L'email de votre destinataire n° " + i + " n'est pas valide");
		return false;
	 }
} 

if (nom == "" || prenom == "" || email == "") {
	alert("Merci de saisir vos coordonnées");
	return false;
}


return true;
}

function DesinscriptionFromForm(langue)
{
	desinscriptionPage = "../system/process/desinscription_publication.php";

	var mdp = trim(document.formpubli.mdp.value);
	var email = trim(document.formpubli.mail.value);
	var security_code = trim(document.formpubli.security_code.value);

	if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return false;
	}

	if (mdp == "") {
		alert ("Veuillez saisir votre mot de passe");
		return false;
	}

	if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return false;
	}

	if(security_code == "" || mdp == "" || email == ""){
		return false;
	}else{
		document.formpubli.action = desinscriptionPage;
		document.formpubli.method = "POST";
		document.formpubli.submit();
	}   
}

//check formulaire ppublication page site
function Check_FormMajAbonnement(){
	
	var nom = trim(document.formpubli.nom.value);
	var prenom = trim(document.formpubli.prenom.value);
	var email = trim(document.formpubli.mail.value);
	var security_code = trim(document.formpubli.security_code.value);
	var optinCom = trim(document.formpubli.optinCom.value);
	var form = document.formpubli;
	var countChecked = 0;
 
	
  if (nom == "") {
			alert ("Veuillez saisir votre nom");
			return(false);
	}
	
	if (prenom == "") {
		alert ("Veuillez saisir votre prénom");
		return(false);
		}
		
	
	
	if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
	
	if (!(isEmail(email))) {
		alert ("L'adresse e-mail est incorrect");
		return(false);	
	}
	
	if(document.formpubli.newmdp){
		var newmdp = trim(document.formpubli.newmdp.value);
		var confmdp = trim(document.formpubli.confmdp.value);
		if (newmdp == "") {
			alert ("Veuillez saisir votre mot de passe");
			return(false);
			}
		
		if (confmdp == "") {
			alert ("Veuillez confirmer votre mot de passe");
			return(false);
			}
	}

	if(document.formpubli.mdp){
		var mdp = trim(document.formpubli.mdp.value);
		if (mdp == "") {
			alert ("Veuillez saisir votre mot de passe");
			return(false);
			}
	}
	
	for ( var o in form )
	{
		if(form[o] != null && ( o.indexOf("cb2") != -1 || o.indexOf("cb3") != -1) && form[o].checked )countChecked +=1;
	}
	if(countChecked == 0)
	{	
		alert("Merci de choisir les publications auxquelles vous souhaitez vous abonner");
		return(false);	
	}						

	if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return(false);
		}
		
	if(optinCom == "ok"){
		alert(certif);
	}
	
	return(true);	
		      	
}

//check du formulaire de syndication classic
function Check_FormMajAbonnement_syndic(){
	
	var nom = trim(document.formpubli.nom.value);
	var prenom = trim(document.formpubli.prenom.value);
	var email = trim(document.formpubli.mail.value);
	var form = document.formpubli;
	var countChecked = 0;
 
  	if (nom == "") {
			alert ("Veuillez saisir votre nom");
			return(false);
	}

	if (prenom == "") {
		alert ("Veuillez saisir votre prénom");
		return(false);
		}

	if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
	
	if (!(isEmail(email))) {
		alert ("L'adresse e-mail est incorrect");
		return(false);	
	}
	
	
	for ( var o in form )
	{
		if(form[o] != null && ( o.indexOf("cb2") != -1 || o.indexOf("cb3") != -1) && form[o].checked )countChecked +=1;
	}
	if(countChecked == 0)
	{	
		alert("Merci de choisir les publications auxquelles vous souhaitez vous abonner");
		return(false);	
	}						
	
	return(true);		      	
}

//check du formulaire de syndication Optin Commercial
function Check_FormMajAbonnement_CR(){
	if(document.formpubli.formCom != ""){
		var formCom = trim(document.formpubli.formCom.value);
		var certif = document.formpubli.certif.checked;
		var optinComOui = document.formpubli.optinCom[0].checked;
		var optinComNon = document.formpubli.optinCom[1].checked;
	}
	var nom = trim(document.formpubli.nom.value);
	var prenom = trim(document.formpubli.prenom.value);
	var email = trim(document.formpubli.mail.value);
	var form = document.formpubli;
	var countChecked = 0;
 
  	if (nom == "") {
			alert ("Veuillez saisir votre nom");
			return(false);
	}
	
	if (prenom == "") {
		alert ("Veuillez saisir votre prénom");
		return(false);
		}

	if (email == "") {
		alert ("Veuillez saisir votre adresse e-mail");
		return(false);
		}
	
	if (!(isEmail(email))) {
		alert ("L'adresse e-mail est incorrect");
		return(false);	
	}
	
	
	for ( var o in form )
	{
		if(form[o] != null && ( o.indexOf("cb2") != -1 || o.indexOf("cb3") != -1) && form[o].checked )countChecked +=1;
	}
	if(countChecked == 0)
	{	
		alert("Merci de choisir les publications auxquelles vous souhaitez vous abonner");
		return(false);	
	}						
	
	if(formCom == "ok"){
		if(optinComOui == false && optinComNon == false){
			alert ("Vous devez accepter ou non de recevoir des e-mail, SMS ou MMS.");
			return(false);
		}
		if(certif == false){
			alert ("Vous devez certifier avoir pris connaissance des mentions CNIL");
			return(false);
		}
	}
	
	return(true);	
		      	
}

function Check_FormMDP(formulaire){

	var identifiant = trim(formulaire.identifiant.value);
	var oldmdp = trim(formulaire.oldmdp.value);
	var newmdp = trim(formulaire.newmdp.value);
	var confmdp = trim(formulaire.confmdp.value);
	var security_code = trim(formulaire.security_code.value);
	
  if (identifiant == "") {
		alert ("Veuillez saisir votre identifiant / e-mail");
		return(false);
		}
  
  if (oldmdp == "") {
		alert ("Veuillez saisir votre ancien mot de passe");
		return(false);
		}
 
  if (newmdp == "") {
		alert ("Veuillez saisir votre nouveau mot de passe");
		return(false);
		}

  if (confmdp == "") {
		alert ("Veuillez confirmer votre nouveau mot de passe");
		return(false);
		}
		
  if (!(isEmail(identifiant))) {
 		alert ("L'identifiant est incorrect");
 		return(false);
 		}
	
  if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return(false);
		}
		
		return(true);
}


function Check_FormDesinscription(formulaire){

	var password = trim(formulaire.password.value);
	var security_code = trim(formulaire.security_code.value);

  if (password == "") {
		alert ("Veuillez saisir votre mot de passe");
		return(false);
  }

  if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return(false);
		}

		return(true);
}

function Check_FormConnect(formulaire){

	var identifiant = trim(formulaire.identifiant.value);
	var mdp = trim(formulaire.mdp.value);
	
   if (identifiant == "") {
		alert ("Veuillez saisir votre identifiant / e-mail");
		return(false);
		}
  
  if (mdp == "") {
		alert ("Veuillez saisir votre mot de passe");
		return(false);
		}
		
  if (!(isEmail(identifiant))) {
 		alert ("L'identifiant est incorrect");
 		return(false);
 		}
	
	return true;
}

function mdpForgot(formulaire){

   var identifiant = trim(formulaire.identifiant.value);
	var security_code = trim(formulaire.security_code.value);

   if (identifiant == "") {
		alert ("Veuillez saisir votre identifiant / e-mail");
		return(false);
		}
  
  if (!(isEmail(identifiant))) {
 		alert ("L'identifiant est incorrect");
 		return(false);
 		}

	if (security_code == "") {
		alert ("Veuillez saisir le code de sécurité");
		return(false);
		}
	
	if(confirm('Confirmez-vous la demande de nouveau mot de passe ?')){
		formulaire.isforgot.value = true;
		return true;
	}
}

