var choix=false;
var erreurSaisie=0;
var err=0;
function control_form(f){

// valeurs par défaut pour la phase de test
/***************************************************************************/

/*

document.forms["don_en_ligne"].amount[5].checked=true;

// fixer éventuellement la valeur a un euro pendant les tests

montant=document.forms["don_en_ligne"].amount[6].value=1;

document.forms["don_en_ligne"].titre[2].checked=true;
document.forms["don_en_ligne"].nom.value="Donateur"
document.forms["don_en_ligne"].prenom.value="Magnanime"
document.forms["don_en_ligne"].adresse.value="14 rue de la Générosité"
document.forms["don_en_ligne"].codePostal.value="91000";
document.forms["don_en_ligne"].ville.value="Evry";
document.forms["don_en_ligne"].pays.value="France";
document.forms["don_en_ligne"].email_address.value="";
document.forms["don_en_ligne"].maPriere.value="Que toutes les précautions soient prises pour que le système fonctionne correctement et soit au service de tous.";
document.forms["don_en_ligne"].anneeNaissance.value=1952;

*/

/***************************************************************************/


// controle du montant
ctrl_check=0;
for (i=0; i<=5; i++){
     if(document.forms["don_en_ligne"].amount[i].checked) {
     choix=i;
     //alert( choix);
     ctrl_check++;
                  if (i==5) { // don libre
                      //alert(document.forms["don_en_ligne"].amount[6].value*1);
                      if (document.forms["don_en_ligne"].amount[6].value *1<=0 || isNaN(document.forms["don_en_ligne"].amount[6].value*1) || document.forms["don_en_ligne"].amount[6].value==undefined ) { // on n'a rien mis ou une fausse valeur
                          erreurMontant();
                          return;
                      }
                  }
          } // checked ok
     }// i

     // renseigner le bouton caché du montant d'après les choix du donateur :
     if(ctrl_check==0) {
       erreurMontant();
       return;
     }
         if(choix==5) {
            choix=6; // choix 5 = le commentaire de choix 6
            montant=document.forms["don_en_ligne"].amount[choix].value;
            }
         if(choix<=4) {      // virer le préfixe "euros" dans eurosNN ou eurosNNN
            montant=document.forms["don_en_ligne"].amount[choix].value.substring(5,document.forms["don_en_ligne"].amount[choix].value.length);
            }
         document.forms["don_en_ligne"].ctrl_amount.value=montant;
         //alert (document.forms["don_en_ligne"].ctrl_amount.value);
         //return;

// controle du titre coché
ctrl_check=0;

for (i=0; i<=3; i++){
     if(document.forms["don_en_ligne"].titre[i].checked) ctrl_check++;
     }
     if ( ctrl_check==0)
         {
         alert ('Vous avez omis la case "titre".');
         document.forms["don_en_ligne"].titre[0].focus();
         return;
         }
ctrl_check=0;
// controle des champs obligatoires
if(document.forms["don_en_ligne"].nom.value.length==0) ctrl_check="nom";
if(document.forms["don_en_ligne"].prenom.value.length==0) ctrl_check="prenom";
if(document.forms["don_en_ligne"].adresse.value.length==0) ctrl_check="adresse";
if(document.forms["don_en_ligne"].codePostal.value.length==0||document.forms["don_en_ligne"].codePostal.value.length!=5) ctrl_check="codePostal";
if(document.forms["don_en_ligne"].ville.value.length==0) ctrl_check="ville";
if(document.forms["don_en_ligne"].pays.value.length==0) ctrl_check="pays";
if(document.forms["don_en_ligne"].email_address.value.length==0) ctrl_check="email_address";
if(document.forms["don_en_ligne"].maPriere.value.length>500) ctrl_check="maPriere";


// controle des caracteres interdits hors espace
// si contition vrai pas de submit
if(listeInterdictions(document.forms["don_en_ligne"].nom.value)){     replay();return;   }
if(listeInterdictions(document.forms["don_en_ligne"].prenom.value)){  replay();return;   }
if(listeInterdictions(document.forms["don_en_ligne"].adresse.value)){ replay();return;   }
if(listeInterdictions(document.forms["don_en_ligne"].ville.value)){   replay();return;   }
if(listeInterdictions(document.forms["don_en_ligne"].pays.value)){    replay();return;   }
if(listeInterdictions(document.forms["don_en_ligne"].paroisse.value)){replay();return;   }

// pour la prière, on tolère un peu de ponctuation
if(listeInterdictionsRestreintes(document.forms["don_en_ligne"].maPriere.value)){  replay();return;   }
// controle syntaxe mail
if(listeInterdictionsRestreintes(document.forms["don_en_ligne"].email_address.value)){replay();return;   }
if (!syntaxeMail(document.forms["don_en_ligne"].email_address.value))ctrl_check="email_address";

//Si on a une date de naissance valide
if(document.forms["don_en_ligne"].anneeNaissance.value * 1 >1900) {
  var ma_date=new Date();
  age=ma_date.getFullYear()-document.forms["don_en_ligne"].anneeNaissance.value;
  document.forms["don_en_ligne"].age.value=age;  
}



// on compte les erreurs :
if  (ctrl_check!=0) {
      alert( "Votre saisie est incomplète ou erronée dans un ou plusieurs champs obligatoires.\n Merci de contrôler et corriger votre saisie");
      eval('document.forms["don_en_ligne"].'+ctrl_check+'.focus()');
      return;
     }

// il n'y a pas d'erreur, on envoie
     //alert("submit neutralisé");
     document.forms["don_en_ligne"].submit();
}


function erreurMontant() {
         alert ('Vous n\'avez saisi aucun montant ou votre saisie est erronée. \n Le montant de votre don doit être indiqué en euros, sans décimale.');
         document.forms["don_en_ligne"].amount[0].focus();
         return;
}

function listeInterdictions(mot){
no=new Array("<" , ">" , "?" , "+" , "*" , "\\"  , ";"  );
for (i=0; i<=no.length; i++){
     if (controle_interdictions(mot,no[i]))
          { //alert("erreur detectée pour "+no[i]);
          return true; //1
          }
     } // i
return false ;  // 0 pas d'erreur
}

function listeInterdictionsRestreintes(mot){
no=new Array("<" , ">" , "+" , "*" , "\\" );
for (i=0; i<=no.length; i++){
     if (controle_interdictions(mot,no[i]))
          { //alert("erreur detectée pour "+no[i]);
          return true; //1
          }
     } // i
return false ;  // 0 pas d'erreur
}

function controle_interdictions(mot,n) {
      if(mot.lastIndexOf(n)!=-1) {
      alert("Caractère interdit !");
      messagesInterdits(n);
      return true; //1
      }else{
      return false; //0
      }
}

function messagesInterdits(c){
alert ("Certains caractères ne sont pas valides.\nMerci de revoir votre saisie en évitant les caractères spéciaux.");
return;
}

function replay(){
document.forms["don_en_ligne"].nom.focus();
return;
}

