/* Creation pour le plugin Propaganda
*  Michel RHO sept 2009
*  Contrôle à priori des données
*************************************/

function ctrl_propaganda(f){ 

 if (f.nom_expediteur.value.length<3)
   {
   niet_propaganda("Votre nom doit comporter au moins 3 caract\u00e8res"); return false;
   }

 if(!syntaxeMail(f.email_expediteur.value))
  {
   niet_propaganda("Votre adresse email est erron\u00e9e ou manquante"); return false;
   }

 if (f.email_destinataire.value.length<3)
  {
   niet_propaganda("L'adresse email du destinataire est manquante"); return false;
   }

// il peut y avoir plusieurs emails, mais pas plus de 5

if (f.email_destinataire.value.lastIndexOf(',')!=-1){
   var ensemble = f.email_destinataire.value;
   var tous_les_dest = new Array();
   tous_les_dest = ensemble.split(',');
   var lgdest=tous_les_dest.length;
   if (lgdest >5 )
      {
      niet_propaganda("Vous ne pouvez envoyer votre carte qu'\u00e0 5 destinataires");
      return false;
      }
   for (i=0; i<lgdest;i++)
       {
         if(!syntaxeMail(tous_les_dest[i]))
           {
           var mailbug=tous_les_dest[i]; alert (mailbug);
           niet_propaganda("L'adresse email du destinataire est erron\u00e9e", tous_les_dest[i]); return false;
           }
       }
   }
   else if(!syntaxeMail(f.email_destinataire.value))
   {
   niet_propaganda("L'adresse email du destinataire est erron\u00e9e ou manquante"); return false;
   }
 if (f.texte_message_auteur.value.length<3)
   {
   niet_propaganda("Votre message doit comporter au moins 3 caract\u00e8res"); return false;
   }
 if (f.texte_message_auteur.value.length>500)
    {
   niet_propaganda("Votre message est trop long. \nMerci de le limiter \u00e0 une quelques lignes \nenviron 500caract\u00e8res)"); return false;
   }
 return true;
}

function niet_propaganda(m, v){
if (typeof(v)=="undefined")v="";
         alert(m+"  "+v); return false;
}


function syntaxe_mail_propaganda(m){ 
  return syntaxeMail(m); // fonction fournie en standard sur les sites de MR
}


// si la fonction standard n'est pas présente, décommenter la fonction ci-dessous
/* 
function syntaxeMail(m){
var lg=m.length;
for(i=0; i<lg; ++i){
    if (m.charAt(i)=="@"&&i==0)return false;
    if (m.charAt(i)=="@"&&i==lg-1)return false;
    if (m.charAt(i)=="@"){
        for(j=i; j<lg; j++){
             if(m.charAt(j)=="."&& j==lg-1)return false;
             if(m.charAt(j)==".") return true;
            }//fin de j
        }//fin de if @ trouve
    }//fin de i
}//fin de fonction
*/

function propaganda_mr_ecrire(adr){
// Fonction spéciale propaganda appelée pour la réponse
// Dans cette version, pas de formulaire

   var adr_clt_01=adr;
   var adr_clt_02=adr_clt_01.substring(adr_clt_01.lastIndexOf("00000000")+8,adr_clt_01.length);
   adr_clt_01=adr_clt_01.substring(0,adr_clt_01.lastIndexOf("00000000"));

//alert(adr_clt_01 +" et "+adr_clt_02);
  // décodage de 1
  var adr1_clair ="";
  var adr2_clair ="";
  var lg = adr_clt_01.length;
  var prv;

//  alert (String.fromCharCode(101,102));

  for (i=0; i<= lg; i+=2)
  {
    prv = parseInt(adr_clt_01.substring(i,i+2),16);
    //alert (prv);
    if(parseInt(prv)*1 > 1)adr1_clair += parseInt(prv) + ",";
  }
  prv = adr1_clair.substring(0,adr1_clair.length-1);
  adr1_clair = eval("String.fromCharCode(" + prv + ")");

  // décodage de 2
  var lg = adr_clt_02.length;
  for (i=0; i<= lg; i+=2)
  {
    prv = parseInt(adr_clt_02.substring(i,i+2),16);
    //alert (prv);
    if(parseInt(prv)*1 > 1)adr2_clair += parseInt(prv) + ",";
  }
  prv = adr2_clair.substring(0,adr2_clair.length-1);
  adr2_clair = eval("String.fromCharCode(" + prv + ")");

   var d = "l";
   var c = "i";
   var e = "t";
   var b = "a";
   var a = "m";
   var f = "o";
   var g = ":";
   var h = "@";

  var adrcomplete=a+b+c+d+e+f+g+adr1_clair+h+adr2_clair;
  location.href=adrcomplete;


}


