﻿/*********************/
/*    CHECK FORMS    */
/*********************/



function checkForm(form) {

            var errmsg = "Merci de remplir l'intégralité des champs marqués d'un astérisque: \n";

            var lenInit = errmsg.length;

            if (!isChecked(form.civilite))         errmsg +=" - Votre civilité\n";
            if (isEmpty(form.nom))                           errmsg +=" - Votre nom\n";
            if (isEmpty(form.prenom))                      errmsg +=" - Votre prénom\n";
            if (!isEmail(form.email2))            errmsg +=" - Votre email\n";
            if (isEmpty(form.adresse))                      errmsg +=" - Votre adresse\n";
            if (!isCodePostal(form.cp))                      errmsg +=" - Votre code postal\n";
            if (!checkDate(form.jour[form.jour.selectedIndex].value, form.mois[form.mois.selectedIndex].value, form.annee[form.annee.selectedIndex].value)) errmsg +=" - Votre date de naissance\n";
            if (form.provenance[form.provenance.selectedIndex].value == 0) errmsg +=" - La façon dont vous avez connu le site vania.com\n";

            if (errmsg.length > lenInit) {

                        alert(errmsg);

                        return false;

            } else return true;

}

 
function checkFormReduction(form) {
	var errmsg = "Merci de remplir l'intégralité des champs marqués d'un astérisque: \n";
	var lenInit = errmsg.length;
		
	if (isChecked(form.civilite))	errmsg +=" - Votre civilité\n";
	if (isEmpty(form.nom)) 			errmsg +=" - Votre nom\n";
	if (isEmpty(form.prenom)) 		errmsg +=" - Votre prénom\n";
	if (!isEmail(form.email2))		errmsg +=" - Votre email\n";
	if (isEmpty(form.adresse))		errmsg +=" - Votre adresse\n";
	if (!isCodePostal(form.cp))		errmsg +=" - Votre code postal\n";
	if (!checkDate(form.jour[form.jour.selectedIndex].value, form.mois[form.mois.selectedIndex].value, form.annee[form.annee.selectedIndex].value)) errmsg +=" - Votre date de naissance\n";
	if (form.provenance[form.provenance.selectedIndex].value == 0) errmsg +=" - La façon dont vous avez connu le site vania.com\n";
	
	if (errmsg.length > lenInit) {
		alert(errmsg);
		return false;
	} else {
	    return confirm("Attention,\n\nVous ne pourrez imprimer un bon de réduction qu'une seule fois.\nAvant de poursuivre, assurez-vous :\n- Que vous disposez d'Adobe Reader 7.09 ou postérieur\n- Que votre imprimante est correctement connectée\n- Que l'imprimante sélectionnée par défaut ne soit ni un PDFwriter, ni en recto/verso, ni positionnée sur le format paysage et que vous disposez de suffisamment d'encre et de feuilles pour l'impression.");
	}
}



function checkFormQuestion(form) {
	var errmsg = "Merci de remplir l'intégralité des champs marqués d'un astérisque: \n";
	var lenInit = errmsg.length;
	
	
	if (isEmpty(form.nom)) 			errmsg +=" - Votre nom\n";
	if (isEmpty(form.prenom)) 		errmsg +=" - Votre prénom\n";
	if (!isEmail(form.mail))		errmsg +=" - Votre email\n";
	if (!checkDate(form.jour[form.jour.selectedIndex].value, form.mois[form.mois.selectedIndex].value, form.annee[form.annee.selectedIndex].value)) errmsg +=" - Votre date de naissance\n";
	if (isEmpty(form.message))		errmsg +=" - Votre question\n";
	if (form.conditions.checked==false) errmsg +=" - Accepter les conditions générales d’utilisation de www.vania.com\n";
	
	if (errmsg.length > lenInit) {
		alert(errmsg);
		return false;
	} else return true;
	
	

}



function checkFormSelection(form) {
	var errmsg = "Merci de sélectionner au moins un échantillon \n";
	var lenInit = errmsg.length;
	
	var initCheck = false;
	
	if(form.emailSend.value == '')
	{
		alert('Merci de saisir votre adresse mail');
		return false;
	}
	
	for(var i=0; i<form.elements.length; i++){ 
		if(form.elements[i].type == 'checkbox'){ 
			if(form.elements[i].checked == true) initCheck = true;
		}
	}
	
	if(initCheck == false) errmsg +=" \n";
	
	
	if (errmsg.length > lenInit) {
		alert(errmsg);
		return false;
	} else return true;
}




/*********************/
/* GENERIC FUNCTIONS */
/*********************/
function isEmpty(elm) {
    var elmstr = elm.value + "";
    if (elmstr.length == 0) return true;
    else return false;
}

function ReplaceAcc(elm) {
	var are = /[àâä]/gi;
	var ere = /[éèêë]/gi;
	var ire = /[ïî]/gi;
	var ure = /[ùûü]/gi;
	elm = elm.replace(are,"a");
	elm = elm.replace(ere,"e");
	elm = elm.replace(ire,"i");
	elm = elm.replace(ure,"u");
	return (elm);
}

function isValidDate(elm) {
	var elmstr = elm.value +"";
	var re = /[0-3][0-9]\/[0-1][0-9]\/[1-2][0-9]{3}/i;
	if (elmstr.search(re) == -1)	return false;
	return true;
}

/* is correct email */
function isEmail(elm) {
	if ((elm.value.indexOf(" ") + "" == "-1"
	&& elm.value.indexOf("@") + "" != "-1"
	&& elm.value.indexOf("@") + "" != "0"
	&& (elm.value.lastIndexOf(".") > elm.value.indexOf("@")+1)
	&& (elm.value.lastIndexOf(".") < elm.value.length-2)
	&& (isValidChar(elm) == true) && (isValidExt(elm) == true)
	&& elm.value != "")) return true;
	else return false;
}

// Is the account valid?
function isValidChar(elm) {
	var elmstr = elm.value + "";
	elmstr = elmstr.substring(0,elmstr.indexOf("@"));
	var re = /[\s\'\"\|\?\,\;\:\!\/\`\\\[\]]/gi;
	if (elmstr.search(re) != -1  )		return false;
	return true;
}

//is the Ext valid?
function isValidExt(elm) {
	var elmstr = elm.value +"";
	elmstr = elmstr.substring(elmstr.lastIndexOf(".")+1, elmstr.length);
	var re1 = /[0-9]/gi;
	var re2 = /[\s\'\"\|\?\,\;\:\!\/\`\\\[\]]/gi;
	if ((elmstr.search(re1) != -1 )||(elmstr.search(re2) != -1 )) 		return false;
	return true;
}

function isCodePostal(elm) {
    var elmstr = elm.value +"";
	var re = /[0-9]{5}/gi;
	if (elmstr.length != 5)
	return false;
	else {
	if (elmstr.search(re) == -1) return false;
		else return true;
	}
}

// check that one checkbox is checked
function isChecked(elm) {
	for (var i=0; i<elm.length; i++) {
		if (elm[i].checked==true) return true;
	}
	return false;
}

//Check if the radio is checked with the txt value
function isCheckValue(elm,txt) {
	var valeur = new String();
	valeur = txt;
	for (var i=0; i<elm.length; i++) {
		if ( (elm[i].checked==true)&& (elm[i].value==valeur)) return true;
	}
	return false;
}

function isDate(day, month, year) {
 if (month.value>=1 && month.value <=12 && year.value>1753 && year.value<9999) {
     if( month.value==2 && day.value>29 ) return false;
     else if ((month.value == 1 ||month.value == 3 || month.value == 5|| month.value == 7|| month.value == 8|| month.value == 10|| month.value == 12) && day.value>31) return false;
     else if(day.value >30) return false;
     return true;
 }
 return false;
}

function checkDate(jour, mois, annee) {
if ( (mois >= 1 && mois <= 12)&&(annee > 1899 && annee < 2500) ) {
    if (mois == 2 && jour > 29)  return false; 
	else if ( ((mois == 1)||(mois==3)||(mois == 5)||(mois == 7)||(mois == 8)||(mois==10)||(mois == 12))&&(jour > 31))
	 return false;
	else if ( ((mois == 4) ||(mois==6)||(mois==9)||(mois==11))&&(jour>30)) return false;
	return true;
}
return false;
}

function checkRadio( radio ) {
 for( i = 0; i < radio.length && radio[i].checked == false; i++ ) ;
       return i < radio.length ;
}

//Check if the radio is checked with the txt value
function isCheckValue(elm,txt) {
var valeur = new String();
valeur = txt;
    for (var i=0; i<elm.length; i++) {
      if ( (elm[i].checked==true)&& (elm[i].value==valeur)) return true;
    }
    return false;
  }

function getRadioValue(elm) {
    for(var i=0; i<elm.length;i++)
	   if(elm[i].checked == true) return elm[i].value;
	return null;
}

//Teste si les valeurs des 2 champs pwd et confpwd sont identiques
function isEqual(elm1,elm2) {
       if (elm1.value.toUpperCase() != elm2.value.toUpperCase()) return false;
       return true;
}