//Fonctions communes
function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}
function update_newsletter()
{
      document.newsletter.email.value = document.newsletter.email.value.toLowerCase();
}

//Fonction d'ouverture de popup centré
var ouvert=0;
function popupcentree(page,largeur,hauteur,options)
{
 var top=(screen.availHeight/2)-hauteur/2;
 var left=(screen.availWidth/2)-largeur/2;

 if(typeof(fenetre)!="object"  || fenetre.closed) {
   fenetre=window.open (page,"pop1","top="+top+",left="+left+",width="+largeur+",height="+hauteur+","+options);
   fenetre.focus();
 } else {
   fenetre.focus();
   fenetre.moveTo(top,left);
 }
}

//Fonction déclenchant l'impression de la page
function printWindow() {
 bV = parseInt(navigator.appVersion);
 if (bV >= 4 && window.print) window.print();
 else newAlert(title_tip,cant_print,icon_info,0);
}

//////////////////////////////////////////////////////
//Définit les fonctions de validation du formulaire
//
//Utilise les fonction d'affichage VB script
//////////////////////////////////////////////////////

//Teste la présence d'un message
function check_message(form_to_check)
{
 if (document[form_to_check].message.value.length==0) {
         newAlert(title_alert,missing_message,icon_info,0);
         document[form_to_check].message.focus();
         return false;
 }

 return true;
}

//Teste la présence du nom
function check_first_name(form_to_check)
{
 if (document[form_to_check].nom.value.length==0) {
         newAlert(title_alert,missing_name,icon_info,0);
         document[form_to_check].nom.focus();
         return false;
 }

 return true;
}

//Teste la présence du prénom
function check_last_name(form_to_check)
{
 if (document[form_to_check].prenom.value.length==0) {
         newAlert(title_alert,missing_last_name,icon_info,0);
         document[form_to_check].prenom.focus();
         return false;
 }

 return true;
}

//Teste la validité du mail
function check_mail(form_to_check)
{
 if (document[form_to_check].email.value.length==0) {
         newAlert(title_alert,missing_mail,icon_info,0);
         document[form_to_check].email.focus();
         return false;
 } else {
         var emailFilter=/^.+@.+\..{2,3}$/;
         if (!(emailFilter.test(document[form_to_check].email.value))) {
            newAlert(title_alert,invalid_mail,icon_info,0);
            document[form_to_check].email.focus();
            return false;
         } else {
            //test email for illegal characters
            var illegalChars= /[\(\)\<\>\,\;\:\\\"\[\]]/
            if (document[form_to_check].email.value.match(illegalChars)) {
                        newAlert(title_alert,invalid_mail_chars,icon_info,0);
                        document[form_to_check].email.focus();
                        return false;
            }
         }
 }

 return true;
}

//Teste la présence de l'adresse
function check_adress(form_to_check)
{
 if (document[form_to_check].adresse.value.length==0) {
         newAlert(title_alert,missing_adress,icon_info,0);
         document[form_to_check].adresse.focus();
         return false;
 }

 return true;
}

//Teste la présence du codepostal
function check_zip(form_to_check)
{
 if (document[form_to_check].codepostal.value.length==0) {
         newAlert(title_alert,missing_zip,icon_info,0);
         document[form_to_check].codepostal.focus();
         return false;
 } else if (document[form_to_check].codepostal.value.length<5) {
       newAlert(title_alert,invalid_zip,icon_info,0);
       document[form_to_check].codepostal.focus();
       return false;
 }

 return true;
}

//Teste la présence de la ville
function check_town(form_to_check)
{
 if (document[form_to_check].ville.value.length==0) {
         newAlert(title_alert,missing_town,icon_info,0);
         document[form_to_check].ville.focus();
         return false;
 }

 return true;
}

//Teste la présence du pays (champ texte)
function check_country(form_to_check)
{
 if (document[form_to_check].pays.value.length==0) {
         newAlert(title_alert,missing_country,icon_info,0);
         document[form_to_check].pays.focus();
         return false;
 }

 return true;
}

//Teste la présence du pays (liste déroulante)
function check_country_list(form_to_check)
{
 if (document[form_to_check].pays.selectedIndex==undefined || document[form_to_check].pays.selectedIndex==0) {
         newAlert(title_alert,missing_country,icon_info,0);
         document[form_to_check].pays.focus();
         return false;
 }

 return true;
}

//Teste la présence du mot de passe
function check_password(form_to_check)
{
  if (document[form_to_check].pwd.value.length>0) {
    if (document[form_to_check].pwd.value.length<4) {
       newAlert(title_alert,invalid_passord_length,icon_info,0);
       document[form_to_check].pwd.focus();
       return false;
    }
  } else {
       newAlert(title_alert,missing_password,icon_info,0);
       document[form_to_check].pwd.focus();
       return false;
  }

 return true;
}

//Teste la présence de la confirmation du mot de passe
function check_password_confirm(form_to_check)
{
  if (document[form_to_check].pwd_confirm.value!=document[form_to_check].pwd.value) {
       newAlert(title_alert,invalid_password_confirm,icon_info,0);
       document[form_to_check].pwd.focus();
       document[form_to_check].pwd_confirm.value="";
       return false;
  }

 return true;
}

//Teste la présence du téléphone
function check_phone(form_to_check)
{
 if (document[form_to_check].telephone.value.length==0) {
         newAlert(title_alert,missing_phone,icon_info,0);
         document[form_to_check].telephone.focus();
         return false;
 }

 return true;
}

//Teste la validité du téléphone
function check_phone_validity(form_to_check)
{
  if (document[form_to_check].telephone.value.length>0) {
    if (document[form_to_check].telephone.value.length<5) {
       newAlert(title_alert,invalid_phone_length,icon_info,0);
       document[form_to_check].telephone.focus();
       return false;
    } else {
         var legalChars=/[0-9]|[\(\)\+\-\[\]]/
         if (!(legalChars.test(document[form_to_check].telephone.value))) {
            newAlert(title_alert,invalid_phone,icon_info,0);
            document[form_to_check].telephone.focus();
            return false;
         }
    }
 }

 return true;
}

//Teste la présence du fax
function check_fax_validity(form_to_check)
{
  if (document[form_to_check].fax.value.length>0) {
    if (document[form_to_check].fax.value.length<5) {
       newAlert(title_alert,invalid_fax_length,icon_info,0);
       document[form_to_check].fax.focus();
       return false;
    } else {
         var legalChars=/[0-9]|[\(\)\+\-\[\]]/
         if (!(legalChars.test(document[form_to_check].fax.value))) {
            newAlert(title_alert,invalid_fax,icon_info,0);
            document[form_to_check].fax.focus();
            return false;
         }
    }
 }

 return true;
}

//////////////////////////////////////////////////////
// Fonction liées à la gestion du caddie
//////////////////////////////////////////////////////

function reset(form_name,element_id) {
    if(confirm(product_to_be_deleted)) {
         window.document.forms[form_name].elements[element_id].value = 0;
         window.document.forms[form_name].submit();
    }
}

//Vérifie que toutes les quantités sont correctes (>0)
function check_cart_data(form_name)
{
 //Suppose que les champs de quantité sont précédés d'un champs caché stockant l'id => incrément de boucle =2
 for (i=2; i<window.document.forms[form_name].length; i+=2) {
         //var legalChars=/[0-9]|[\(\)\+\-\[\]]/
         var legalChars=/[0-9]/
         if (!(legalChars.test(window.document.forms[form_name].elements[i].value))) {
            newAlert(title_alert,invalid_quantity,icon_info,0);
            window.document.forms[form_name].elements[i].focus();
            return false;
         }
         if (window.document.forms[form_name].elements[i].value <= 0) {
         newAlert(title_alert,invalid_positive,icon_info,0);
         window.document.forms[form_name].elements[i].focus();
         return false;
        }
 }

 return true;
}