/*******************************************************************************************/
function $(id){
  return document.getElementById(id);
}

/*******************************************************************************************/
//Equivalent de la fonction addslashes du php mais en javascript
function addslashes(str){
  return str.replace(/\\("|'|\\)/g, "$1");
}

/*******************************************************************************************/
//Equivalent de la fonction stipslashes du php mais en javascript
function stripslashes(str){
  return str.replace(/("|'|\\)/g, "\\$1");
}

/*******************************************************************************************/
//Vérifie si la chaine est au format mail
function isValidEmail(emailAddress) {
  var re = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/
  return re.test(emailAddress);
}

/*******************************************************************************************/
//Vérifie si la chaine est au format code postal franÃ§ais
function isValidCP(cp){
  var reg_cp = /^[0-9]{5}$/
  //code postal francais ^(0[1-9]|[1-9][0-9])[0-9]{3}$
  // code postal belge ^(F-[0-9]{4,5}|B-[0-9]{4})$
  if (!(reg_cp.exec(cp)!=null)) return(false);
  return(true);
}

/*******************************************************************************************/
//Vérifie si la chaine est au format numéro de téléphone franÃ§ais
function isValidTel(tel){
  var reg_cp = /^[0-9]{10}$/
  if (!(reg_cp.exec(tel)!=null)) return(false);
  return(true);
}

/*******************************************************************************************/
//Vérifie si la chaine est au format date franÃ§ais jj/mm/aaaa
function isValidDate(d) {
  if (d == "") return false;

  e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
  if (!e.test(d)) return false; // On teste si a colle  l'expression rgulire

  // On spare la date en 3 variables pour vrification, parseInt() converti du texte en entier
  j = parseInt(d.split("/")[0], 10); // jour
  m = parseInt(d.split("/")[1], 10); // mois
  a = parseInt(d.split("/")[2], 10); // année

  // Si l'anne n'est compose que de 2 chiffres on complte automatiquement
  if (a < 1000) {
  if (a < 89) a+=2000; // Si a < 89 alors on ajoute 2000 sinon on ajoute 1900
  else a+=1900;
  }

  // Définition du dernier jour de février
  // Anne bissextile si annnée divisible par 4 et que ce n'est pas un siÃ¨cle, ou bien si divisible par 400
  if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  else fev = 28;

  // Nombre de jours pour chaque mois
  nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);

  // Enfin, retourne vrai si le jour est bien entre 1 et le bon nombre de jours, idem pour les mois, sinon retourn faux
  return ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] );
}

/*******************************************************************************************/
//Vérifie que l'adresse mail n'est pas déjÃ  présente dans w_tie_rappro
function emailInBdd(email){
  res = AjaxRequestSynchroneReturnResult('/php/cpt_action.php?pa=3&tir_mail='+email);
  //alert(res);
  return res;
}

/*******************************************************************************************/
/* Fonctions de vérification de formulaire              */
/*******************************************************************************************/
// id : balise contenant le champ Ã  vérifier
// did : balise contenant les descriptif de l'input; couleur passée en rouge si le champs est mal rempli
// eid : balise servant Ã  afficher le type de problÃ¨me quand le champs est mal renseigné
// valide : est passé Ã  false quand il y a une erreur dans le formulaire

var valide=true;

/*******************************************************************************************/
//Vérifie les entrées par champs 'text'
function verif_form_text(url,mini,id,did,eid,msg){
  //if(mini>0){
    if (typeof(msg) == 'undefined' ) msg = '(trop court)';
    if( $(id).value.length < mini ){  //si trop court
      redFont(1,did,eid,msg);
      valide=false;
    }
    else{ // si ok
      redFont(0,did,eid,msg);
      //alert( $(id).value );
      url+="&"+id+"="+ $(id).value;
    }
  //}
  return url;
}

/*******************************************************************************************/
//Vérifie les entrées par champs 'text' devant contenir un format précis

function verif_form_text_formate(format,url,id,did,eid,msg){

  var func;
  var facultatif = 0;

  if (format == "date") { func="!isValidDate( $('"+id+"').value )"; if (typeof(msg) == 'undefined' ) msg = '(attention au format; jj/mm/aaaa)'; }  //date
  if (format == "cp"  ) { func="!isValidCP($('"+id+"').value )";    if (typeof(msg) == 'undefined' ) msg = '(attention au format; 5 chiffres)'; }  //code postal
  if (format == "tel" ) { func="!isValidTel($('"+id+"').value )";   if (typeof(msg) == 'undefined' ) msg = '(attention au format; 10 chiffres)'; } //format téléphonique franÃ§ais
  if (format == "mail") { func="!isValidEmail($('"+id+"').value )"; if (typeof(msg) == 'undefined' ) msg = '(format d\'adresse non valide)'; }     //adresse mail
  if (format == "tel_facultatif" ){ func="!isValidTel($('"+id+"').value)"; facultatif = 1; if (typeof(msg) == 'undefined' ) msg = '(attention au format; 10 chiffres)'; } //format téléphonique franÃ§ais

  if (format == "verif_mail") { func="!isValidEmail($('"+id+"').value )"; if (typeof(msg) == 'undefined' ) msg = '(format d\'adresse non valide)'; }     //adresse mail non existante dans la bdd


  if( ! (($(id).value.length == 0) && facultatif) ){


    if( eval(func) ){
      redFont(1,did,eid,msg);
      valide=false;
    }
    else{

      if( format == "verif_mail" ){
        if( emailInBdd( $(id).value ) == '1' ){
          msg = 'Cette adresse est déjà  utilisée.'
          redFont(1,did,eid,msg);
          valide=false;
        }
        else{
          redFont(0,did,eid);
          url+="&"+id+"="+$(id).value;
        }
      }
      else{

        redFont(0,did,eid);
        url+="&"+id+"="+$(id).value;
      }
    }
  }
  return url;
}


/*******************************************************************************************/
//Vérifie les entrées par bouton 'radio'
function verif_form_radio(formulaire,url,id,did,eid){

  if (typeof(eid) == 'undefined'){ eid=did; }

  var check =0;
  for (var l=0; l<eval('document.'+formulaire+'.elements.length'); l++){
    if( eval('document.'+formulaire+'.elements[l].checked') ){
      url+="&"+id+"="+eval('document.'+formulaire+'.elements[l].value');
      redFont(0,did, msg);
      check=1;
    }
  }
  if(!check){
          var  msg = 'Champs incomplets !';
    redFont(1,did, eid, msg);

    valide=false;
  }
  return url;
}
/*******************************************************************************************/
//Vérifie les entrées par bouton 'checkbox'
function verif_form_checkbox(formulaire,url,id,did,check){

  //Si on ne veut pas que la fonction vérifie si il y a eu un choix ou non (cas de la checkbox unique) on met le paramÃ¨tre check Ã  1
  if (typeof(check) == 'undefined') check = 0;

  var url_tmp='';

  for (var l=0; l<eval('document.'+formulaire+'.elements.length'); l++){
    if( eval('document.'+formulaire+'.elements[l].checked') ){
      url_tmp+=","+eval('document.'+formulaire+'.elements[l].name');
      redFont(0,did);
      check=1;
    }
  }
  if(!check){
    redFont(1,did);
    valide=false;
  }
  else{
    url+= "&"+id+"=" + url_tmp.substr(1);
  }
  return url;
}

/*******************************************************************************************/
function redFont(etat, idBaliseText, idBaliseMessage, msg){
  //si etat == 1 => erreur donc
  //Transforme le contenu de la balise 'idBalise' en rouge  puis ajoute le texte 'message' dans la balise 'idBaliseMessage'
  //si etat == 0 => bon donc
  //Transforme le contenu de la balise 'idBalise' en noir  puis efface les message d'erreur de la balise 'idBaliseMessage'
  //alert(etat+' '+idBaliseText+' '+idBaliseMessage+' '+msg);
  if(etat){
    //alert("a1");
    if(typeof(idBaliseText) != "undefined"){

        if( $(idBaliseText).innerHTML.substr(0,5) == "<font"){
          $(idBaliseText).innerHTML = $(idBaliseText).innerHTML.substr(18, ($(idBaliseText).innerHTML.length - 25) );
        }
        //alert("a2");
        $(idBaliseText).innerHTML = "<font color='red'>"+$(idBaliseText).innerHTML+"</font>";
        //alert("a3");
        if( $(idBaliseMessage) ){
          //alert("a4");
          $(idBaliseMessage).innerHTML = "<font color='red'>"+msg+"</font>";
          //alert("a5");
              }
          }


  }
  else{
    if( $(idBaliseText).innerHTML.substr(0,5) == "<font"){
      $(idBaliseText).innerHTML = $(idBaliseText).innerHTML.substr(18, ($(idBaliseText).innerHTML.length - 25) );
      if( $(idBaliseMessage) ){ $(idBaliseMessage).innerHTML = "&nbsp;";}
    }

  }
}


/*******************************************************************************************/
//On vérifie la pertinence des donnes entres dans le formulaire et on construit l'url
//Pour celÃ  on regarde si l'élément existe dans la page et ensute on effectue les tests selon le type d'Input
function verif_form(url){
  valide=true;

  //login
  if($('tir_login')){
    url = verif_form_text(url,5, 'tir_login','dtir_login' ,'etir_login');
  }
  //Civilité
  if($('form_tir_civ')){
    url = verif_form_radio('form_tir_civ',url,'tir_civ','dtir_civ' ,'etir_civ');
  }
  //Nom
  if( $("tir_nom") ){
    url = verif_form_text(url,2,'tir_nom','dtir_nom','etir_nom');
  }
  //Prenom
  if( $("tir_prenom") ){
    url = verif_form_text(url,2,'tir_prenom','dtir_prenom','etir_prenom');
  }
  //Contact
  if( $("tir_ctc") ){
    url = verif_form_text(url,5,'tir_ctc','dtir_ctc','etir_ctc');
  }
  //Date de naissance
  if( $("tir_datnai") ){
    if( $("tir_datnai").value !='' ){
      url = verif_form_text_formate('date',url,'tir_datnai','dtir_datnai','etir_datnai');
    }
  }
  if( $("tir_newsletter") ){
	  if($("tir_newsletter").checked)
			url = url+"&tir_newsletter=1";
	  else 
		url = url+"&tir_newsletter=0";	
  }
  if( $("tir_codpos") ){
    url = verif_form_text_formate('cp',url,'tir_codpos','dtir_codpos','etir_codpos');
  }
  //Téléphone
  if( $("tir_tel") ){
    url = verif_form_text_formate('tel',url,'tir_tel','dtir_tel','etir_tel');
  }
  //Fax
  if( $("tir_fax") ){
    url = verif_form_text_formate('tel_facultatif',url,'tir_fax','dtir_fax','etir_fax');
  }
  //Mail
  if( $("tir_mail") ){
    url = verif_form_text_formate('verif_mail',url,'tir_mail','dtir_mail','etir_mail');
  }
     //Mail sans vérif bdd
  if( $("tir_mail_2") ){
    url = verif_form_text_formate('mail',url,'tir_mail_2','dtir_mail','etir_mail');
  }

  //Livraison Contact
  if( $("tie_liv_ctc") ){
    url = verif_form_text(url,5,'tie_liv_ctc','dtie_liv_ctc','etie_liv_ctc');
  }
  //Livraison Adresse1
  if( $("tie_liv_adr1") ){
    url = verif_form_text(url,5,'tie_liv_adr1','dtie_liv_adr1','etie_liv_adr1');
  }
  //Livraison Adresse2
  if( $("tie_liv_adr2") ){
    url = verif_form_text(url,0,'tie_liv_adr2','dtie_liv_adr2','etie_liv_adr2');
  }
  //Livraison Adresse3
  if( $("tie_liv_adr3") ){
    url = verif_form_text(url,0,'tie_liv_adr3','dtie_liv_adr3','etie_liv_adr3');
  }
  //Livraison Lieux dit
  if( $("tie_liv_locali") ){
    url = verif_form_text(url,0,'tie_liv_locali','dtie_liv_locali','etie_liv_locali');
  }
  //Livraison Code postal
  if( $("tie_liv_codpos") ){
    url = verif_form_text_formate('cp',url,'tie_liv_codpos','dtie_liv_codpos','etie_liv_codpos');
  }
  //Livraison Ville
  if( $("tie_liv_ville") ){
    url = verif_form_text(url,1,'tie_liv_ville','dtie_liv_ville','etie_liv_ville');
  }
  //Nature du client: pro/particulier
  if($('form_tir_nature')){
    url = verif_form_radio('form_tir_nature',url,'tir_nature','dtir_nature');
  }
  //Numéro Insee si le type est pro
  if( $("tir_insee")){
    if( $("nature_pro").checked ){
      url = verif_form_text(url,6,'tir_insee','dtir_insee','etir_insee','Le code INSEE comporte au moins 6 caractÃ¨res');
    }
  }
  //Choix catalogue
  if( $("form_cad")){
    url = verif_form_checkbox('form_cad',url,'cad_cat_liscod','dcad_cat_liscod')
  }
  //Message1 contact auteur
  if( $("ctc_msg1_contenu") ){
    url = verif_form_text(url,10,'ctc_msg1_contenu','dctc_msg1_contenu','ectc_msg1_contenu');
  }
  //Message2 contact auteur
  if( $("ctc_msg2_contenu") ){
    url = verif_form_text(url,10,'ctc_msg2_contenu','dctc_msg2_contenu','ectc_msg2_contenu');
  }
  //Choix contact service client métropole ou dom tom/autre
  if($('form_ctc_pers1')){
    url = verif_form_radio('form_ctc_pers1',url,'ctc_pers1','dctc_pers1' ,'ectc_pers1');
  }
  //Newsletter oui ou non
  if( $("form_tir_newsletter")){
    //url = verif_form_checkbox('form_tir_newsletter',url,'tir_newsletter','dtir_newsletter',1);
  }
     //Champ Générix pour rappro
  if( $("tir_generix") ){
    url = verif_form_text(url,12,'tir_generix','dtir_generix','etir_generix','Le code générix est composé de 12 caractÃ¨res');
  }
  //Champ Générix pour rappro
  if( $("tir_etat") ){
    url = verif_form_text(url,1,'tir_etat','tir_etat');
  }
  //Choix de la réduction Ã  appliquer Ã  l'établissement
  if($('form_tir_reduction')){
    url = verif_form_radio('form_tir_reduction',url,'tir_reduction','dtir_reduction' ,'etir_reduction');
  }
  //Choix du type d'établissement
  if($('form_type_etb')){
    url = verif_form_radio('form_type_etb',url,'tir_type_etb','dtir_type_etb');
  }
  //Champ nom de l'établissement
  if( $("tir_fonction") ){
    url = verif_form_text(url,3,'tir_fonction','dtir_fonction','etir_fonction','Veuillez indiquer votre fonction au sein de l établissement svp');
  }
  //Champ nom de l'établissement
  if( $("tir_nom_etb") ){
    url = verif_form_text(url,3,'tir_nom_etb','dtir_nom_etb','etir_nom_etb','Veuillez indiquer le nom de votre établissement svp');
  }
  //Type de paiement
  if( $("form_cde_reglement_type") ){
    url = verif_form_radio('form_cde_reglement_type',url,'cde_reglement_type','dcde_reglement_type','phantom');
  }
  //Approuve condition générale de vente
  if( $("form_cgv")){
    url = verif_form_checkbox('form_cgv',url,'cgv','dcgv');
  }
          if( $("tir_password_old")){
    url =verif_form_text(url,1,'tir_password_old','dtir_password_old','etir_password_old');
  }
     //Password du client
  if( $("tir_password")){
    url =verif_form_text(url,5,'tir_password','dtir_password','etir_password');
  }
     // re-password
  if( $("tir_password2")){
    url =verif_form_text(url,5,'tir_password2','dtir_password2','etir_password2');
  }
     //ADRESSE LIVRAISON
     //Checkbox nouvelle ou ancienne adresse
  if( $('adresse_livraison_check') ){
          if( $('adresse_livraison_check').checked ){
               url = url +'&adr_check=1';
          }
     }
     //Liste déroulante adresses connues
  if( $("num_adresse")){
          url =url+'&num_adresse='+$("num_adresse").value;
     }

   // alert(url);

  if(valide) return encodeURI(url);
  //else return 0;
}

/*******************************************************************************************/
// Permet de redimmenssioner une image
/*******************************************************************************************/
// Permet de redimmenssioner une image
function redimImage(inImg, idImg, inMW, inMH){

 // Cette function recoit 3 parametres
 // inImg : Chemin relatif de l'image
 // inMW : Largeur maximale
 // inMH : Hauteur maximale
 var maxWidth = inMW;
 var maxHeight = inMH;
 // Declarations des variables "Nouvelle Taille"
 var dW = 0;
 var dH = 0;
 // Declaration d'un objet Image
 var oImg = new Image();
 // Affectation du chemin de l'image a l'objet
 oImg.src = inImg;
 // On recupere les tailles reelles
 var h = dH = oImg.height;
 var w = dW = oImg.width;
 // Si la largeur ou la hauteur depasse la taille maximale
 if ((h >= maxHeight) || (w >= maxWidth)) {
 // Si la largeur et la hauteur depasse la taille maximale
 if ((h >= maxHeight) && (w >= maxWidth)) {
 //On cherche la plus grande valeur
 if (h > w) {
 dH = maxHeight;
// On recalcule la taille proportionnellement
 dW = parseInt((w * dH) / h, 10);
 }
 else {
 dW = maxWidth;
 // On recalcule la taille proportionnellement
 dH = parseInt((h * dW) / w, 10);
 }
 }
 else if ((h > maxHeight) && (w < maxWidth)) {
 // Si la hauteur depasse la taille maximale
 dH = maxHeight;
 // On recalcule la taille proportionnellement
 dW = parseInt((w * dH) / h, 10);
 }
 else if ((h < maxHeight) && (w > maxWidth)) {
 // Si la largeur depasse la taille maximale
 dW = maxWidth;
 // On recalcule la taille proportionnellement
 dH = parseInt((h * dW) / w, 10);
}
 }
 // On ecrit l'image dans le document
 //document.writeln("<img src=\"" + inImg + "\" width=\"" + dW + "\" height=\"" + dH + "\" border=\"0\">"); };
 //alert("<img src=\"" + inImg + "\" width=\"" + dW + "\" height=\"" + dH + "\" border=\"0\">");
 if(dH ==0 && dW == 0){
  dW= 100;
  dH=55;
}

 $(idImg).height = dH;
 $(idImg).width = dW;
 $(idImg).src = inImg;

}


/*******************************************************************************************/
//function afficheInsee(choix){
//  //Affiche/ Désaffiche le champs Insee
//  if(choix){
//    $("dtir_insee").innerHTML = "Numro INSEE *";
//    $("insee2").innerHTML = '<input type="text" style="width:220;" id="tir_insee" maxlength="15">';
//  }
//  else{
//    $("dtir_insee").innerHTML = "";
//    $("insee2").innerHTML = "";
//  }
//}

/*******************************************************************************************/
//function afficheNomEtb(choix){
//  //Affiche/ Désaffiche le champs Nom de l'établiessemnt
//  if(choix){
//    $("nom_etb").innerHTML = '<td id="dtir_nom_etb">Nom de l\'établissement *</td><td>&nbsp;<input type="text" style="width:220;" id="tir_nom_etb" maxlength="15"></td><td id="etir_nom_etb"></td>';
//  }
//  else{
//    $("nom_etb").innerHTML = "";
//  }
//}

/*******************************************************************************************/
//Affiche les parties du formulaire d'inscription selon la nature du client
function switchTypeCtc(choix){
  afficheFonctionCtc(choix);
  afficheNomEtb(choix);
  afficheTypeEtb(choix);
  afficheInsee(choix);
}


/*******************************************************************************************/
function afficheInsee(choix){
  //Affiche/ Désaffiche le champs Insee
  if(choix){
    $("dtir_insee").innerHTML = '&nbsp;Numéro INSEE de votre établissement *';
    //$("insee").innerHTML = '&nbsp;<input type="text" id="tir_insee" maxlength="15" value="'+ $('insee').value +'">';
    $("insee2").innerHTML = '&nbsp;<input type="text" id="tir_insee" maxlength="15" value="" style="width:220;">';
    $("etir_insee").innerHTML = '&nbsp;';
  }
  else{
    $("dtir_insee").innerHTML = '';
    $("insee2").innerHTML = '';
    $("etir_insee").innerHTML = '';
  }
}

/*******************************************************************************************/
function afficheNomEtb(choix){
  //Affiche/ Désaffiche le champs Nom de l'établissement
  if(choix){
    $("dtir_nom_etb").innerHTML = '&nbsp;Nom de votre établissement *';
    //$("nom_etb").innerHTML = '&nbsp;<input type="text" id="tir_nom_etb" value="'+ $("h_nom_etb").value +'" maxlength="40" width="220px">';
    $("nom_etb").innerHTML = '&nbsp;<input type="text" id="tir_nom_etb" value="" maxlength="40" style="width:220;">';
    $("etir_nom_etb").innerHTML = '&nbsp;';
  }
  else{
    $("dtir_nom_etb").innerHTML ='';
    $("nom_etb").innerHTML = '';
    $("etir_nom_etb").innerHTML ='';
  }
}

/*******************************************************************************************/
function afficheTypeEtb(choix){
  //Affiche/ Désaffiche le champs Type de l'établissement

  if(choix){

    $("dtir_type_etb").innerHTML = '&nbsp;Type d\'établissement *';

    var txt;
    txt ='  <form name="form_type_etb" id="form_type_etb">';
    txt+='  <input type="radio" name="tir_type_etb" value="creche" class="radio" >CrÃ¨che';
    txt+='  <input type="radio" name="tir_type_etb" value="ecole"  class="radio" >Ecole';
    txt+='  <input type="radio" name="tir_type_etb" value="autre"  class="radio" >Autre';
    txt+='  </form>';
    $("type_etb").innerHTML = txt;
    $("etir_type_etb").innerHTML = '&nbsp;';

  }
  else{
    $("dtir_type_etb").innerHTML = '';
    $("type_etb").innerHTML = '';
    $("etir_type_etb").innerHTML = '';
  }

}

/*******************************************************************************************/
function afficheFonctionCtc(choix){
  //Affiche/ Désaffiche la fonction du contact
  if(choix){
    $("dtir_fonction").innerHTML = '&nbsp;Fonction dans l\'établissement *';
    //$("nom_etb").innerHTML = '&nbsp;<input type="text" id="tir_nom_etb" value="'+ $("h_nom_etb").value +'" maxlength="40" width="220px">';
    $("fonction").innerHTML = '&nbsp;<input type="text" id="tir_fonction" value="" maxlength="20" style="width:220;">';
    $("etir_fonction").innerHTML = '&nbsp;';
  }
  else{
    $("dtir_fonction").innerHTML ='';
    $("fonction").innerHTML = '';
    $("etir_fonction").innerHTML ='';
  }
}



/*******************************************************************************************/
function afficheCoordSelonDest(email){
  if( $("pays").value == "1" ){
    if(email) {
      AjaxDivRequest("../html/form_inscription.php?email="+email,"inscription");
    } else {
      AjaxDivRequest("../html/form_inscription.html","inscription");
      }
  }
  else{
    $("inscription").innerHTML = "<br><br><b>Attention:</b><br><br>Les tarifs affichés sur notre site ne sont valables qu'en France métropolitaine<br>Pour une livraison hors France métropolitaine, des frais supplémentaires pourront être répercutés sur votre commande<br><br>Si vous souhaitez être livré hors France métropolitaine, merci de contacter notre service international:<br /><p>&nbsp;-&nbsp;Fax: 0033 3 22 66 69 20</p><p>&nbsp;-&nbsp;Email: <a href='mailto:international@bssl.fr'>international@bssl.fr</a></p>";
  }
}


/*******************************************************************************************/
//Pour les recherches
function hid_sch(){
  $('sch_champs1').disabled=true;
  $('sch_champs2').disabled=true;
}

function aff_sch(){
  $('sch_champs1').disabled=false;
  $('sch_champs2').disabled=false;
}

/*******************************************************************************************/
function setElementAttribute(elem,attr,value){

     if( elem == 'image' ){ value = 'this.src="'+value+'";';}

  if (navigator.appName.toLowerCase() == "microsoft internet explorer"){
    switch (attr.toLowerCase()){
      case 'onclick':
        elem.onclick = function() { eval(value) };
        break;
      case 'onmouseover':
        elem.onmouseover = function() { eval(value) };
        break;
      case 'onmouseout':
        elem.onmouseout = function() { eval(value) };
        break;
               case 'onerror':
        elem.onerror = function() { eval(value) };
        break;
      case 'class':
        elem.setAttribute("className",value);
        break;
      case 'style':
        elem.style.setAttribute("cssText",value);
        break;
    }
  }
  else{
    $( elem ).setAttribute(attr, value );
          //$('image').setAttribute( 'onError', value );
  }
}

/******************************************************************************************/
//Débloque les champs disabled
function debloque_formulaire(formulaire, tmp){

     //Si la case "nouvelle adresse" n'est pas cochée on n'affiche pas le lien pour vider le formulaire
  if( $('adresse_livraison_check').checked ){
          //eval('document.'+formulaire+'.reset();');
          if( $("adr_div") ){ $("adr_div").style.display=""; }
          val="false";
     }
     else{
          if( $("adr_div") ){ $("adr_div").style.display="none"; }
          val="true";

     }

    if(typeof(tmp) != 'undifined'){
        for (var l=0; l<eval('document.'+formulaire+'.elements.length'); l++){
          eval('if( document.'+formulaire+'.elements[l].type == "text" ){ document.'+formulaire+'.elements[l].value="";}');
      }
    }
  for (var l=0; l<eval('document.'+formulaire+'.elements.length'); l++){
          eval('if( document.'+formulaire+'.elements[l].type == "text" ){ document.'+formulaire+'.elements[l].disabled='+val+';}');
  }

}

/******************************************************************************************/
//Efface le contenu des champs d'un formulaire
function vide_formulaire(formulaire){
  for (var l=0; l<eval('document.'+formulaire+'.elements.length'); l++){
          eval('if( document.'+formulaire+'.elements[l].type == "text" ){ document.'+formulaire+'.elements[l].value="";}');
  }
}

/*******************************************************************************************/
// ONGLETS MENU
function getLeft(MyObject){
    if (MyObject.offsetParent)
        return (MyObject.offsetLeft + getLeft(MyObject.offsetParent));
    else
        return (MyObject.offsetLeft);
}

//
// DEROULE UN ONGLET
//
function deroule(parent,enfant){

     var Num = 1;

     while ($('M'+Num)) {
          Num++;
     }

     var max = Num -1;
  var curleft = 0;
  var obj = document.getElementById(parent);
  if (obj.offsetParent) {

          var onglet_width = 200;
          var taille_onglet = obj.offsetWidth;
          var pos_actuelle = obj.offsetLeft+100;
          //var pos_actuelle = obj.offsetLeft;

          var resolution_width = document.body.offsetWidth;
          var total = pos_actuelle+onglet_width;

          if(total>resolution_width) {
               style = obj.offsetLeft-(onglet_width-taille_onglet);
          } else  {
                    style = pos_actuelle-100;
             }


    while (obj = obj.offsetParent) {

               curleft += obj.offsetLeft;
    }
  }
     curleft += style;

     $(enfant).style.left=curleft+"px";
     //alert(curleft);
  $(enfant).style.display = "inline";
}

function enroule(enfant){
  $(enfant).style.display = "none";
}

//
// LORSQU'ON SURVOLE UN ONGLET
//
function SurvolOnglet(id) {
  if($('M'+id).className=='onglet'+id+'_off'){
       $('M'+id).className='onglet'+id+'_on';
   }

}
//
// LORSQU'ON NE SURVOLE PLUS L'ONGLET
//
function DesactiveOnglet(id) {
  if($('M'+id).className=='onglet'+id+'_on'){
       $('M'+id).className='onglet'+id+'_off';
   }
}
//
// LORSQU'ON CLIQUE SUR UN ONGLET
//
function ActiveOnglet(id) {
  CacheTout();
  var ActiveOnglet = id;
  //$('titre').className='titre';
  //$('L'+id).className='onglet_on active';
  $('B'+id).className='onglet_'+id+' onglet_bordure_active';
  $('M'+id).className='onglet2_on onglet_'+id;
  //$('coloration').className='bg_bare_search_'+id;

}
//
// REMET A BLANC TOUS LES ONGLETS
//
function CacheTout()
{


     $('coloration').className='bare_search_defaut';
     var Num = 1;
     while ($('M'+Num)) {
          $('M'+Num).className='onglet2_off onglet_'+Num;
          $('L'+Num).className='onglet_off onglet_'+Num;
          $('B'+Num).className='onglet_'+Num+' onglet_bordure';
          Num++;
     }
}


function setBordure() {

   if(  $('modifAdrTable').className =='modifChampBordure' ){
         $('modifAdrTable').className ='modifChampBordureVide' ;
         $('valideAdrLiv').style.display = 'none';
         choixAdresseLivraison($('num_adresse').value);
   } else {
         $('modifAdrTable').className ='modifChampBordure' ;
         $('tie_liv_ctc').focus();
         $('valideAdrLiv').style.display = '';
        }
}

function verif_pays(){
    var doc = document.getElementById("pays");
    if( doc.value == 1 ) {
      var cp = document.getElementById("tie_liv_codpos").value;
         if(cp.substring(0, 2) < 01 || cp.substring(0, 2) >95 ){
           return false;
         } else {
            return true;
          }
    }
    else
      return true;
}
