function getObject(cName){
	var coll;
	coll = getElement(cName);
	return coll;
}

function getVal(fName){
	var coll;
	coll = getElement(fName); 
	if (coll!=null)
		return coll.value;
}

function setVal(sName, dName){
	var scoll, dcoll;
	scoll = getElement(sName);
	dcoll = getElement(dName);
	if ((scoll!=null)&&(dcoll!=null))
		dcoll.value = scoll.value 
	else
		dcoll.value = "";	
}

/* ******************************************************************
	FONCTION TRIM
	Description: Enleve les espaces avant et a la fin de la chaine de caracteres inNum
	Syntaxe:     Trim(Str as String) eg: Str = '   stringtest    '
	Used:        On all function javascript
* ******************************************************************/
function Trim(inNum){
	while (inNum.charAt(0) == ' ') {inNum = inNum.substr(1)};
	while (inNum.charAt(inNum.length-1) == ' '){inNum = inNum.substr(0, inNum.length-1)};
	return inNum;
}

function eltCount(){
	var obj
	if(document.all) obj=document.all.tags('INPUT');
	else if(document.getElementsByTagName)
	 obj=document.getElementsByTagName('INPUT');
	if (obj != null) return obj.length;
}

function chkCount(){
	var i, ct;
	var obj, chkObj
	if(document.all) obj=document.all.tags('INPUT');
	else if(document.getElementsByTagName)
	 obj=document.getElementsByTagName('INPUT');
	if (obj != null) {
		if (obj.length > 0){
			for (i=0; i < obj.length; i++){
				if (obj.item(i).type == "checkbox") 
					ct++;
			}
		}
	}
	return ct;
}

function getElementByTag(i){
	var obj;
	if(document.all) obj=document.all.tags('INPUT').item(i);
	else if(document.getElementsByTagName)
	 obj=document.getElementsByTagName('INPUT').item(i);
	if (obj != null) return obj
}

function TrimAllInput(){
	var k=1
	var objInput
	for (k=0; k < eltCount(); k++){ 
		objInput = getElementByTag(k);
		if ((objInput.type == "text") || (objInput.type == "password") || (objInput.type == "hidden")) 
			objInput.value = Trim(objInput.value);
		objInput = null;	
	}
}

function getElement(psID) { 
   if(document.all) { 
      return document.all[psID]; 
   } else if(document.getElementById) { 
      return document.getElementById(psID); 
   } else { 
      for (iLayer = 1; iLayer < document.layers.length; iLayer++) { 
         if(document.layers[iLayer].id == psID) 
            return document.layers[iLayer]; 
      }       
   } 
   return Null; 
} 

function setText(psID, text) { 
	var obj;
	obj = getElement(psID);
	obj.innerHTML = text;
} 

function syncSelect(sName, dName, sdetName, detName){
	var scoll, dcoll, sdetcoll, detcoll;
	var cIndex;
	var detarr = new Array();
	scoll = eval("document.all."+sName);
	dcoll = eval("document.all."+dName);
	sdetcoll = eval("document.all."+sdetName);
	detcoll = eval("document.all."+detName);
	if ((scoll!=null)&&(dcoll!=null))
		dcoll.options[scoll.selectedIndex].selected = true;
	else
		dcoll.options[0].selected = true;
	//referenced to the jsfoot
	cIndex = dcoll.selectedIndex;
	detarr = detail;
	for (m=detcoll.options.length-1;m>0;m--)
		detcoll.options[m]=null
	detcoll.options[0]=new Option('Province non disponible','0');
	for (i=0;i<detarr[cIndex].length;i++){
		detcoll.options[i]=new Option(detarr[cIndex][i].text,detarr[cIndex][i].value);
	}
	detcoll.options[sdetcoll.options.selectedIndex].selected=true
}

function resetVal(fName){
	var coll;
	coll = eval("document.all."+fName);
	if (coll!=null)
		coll.value = "";	
}

function getIndex(cName, obj){
	var i, result;
	var obj, coll;
	coll = document.all[cName];
	if (obj!=null){
		for (i=0; i<coll.length; i++){
			if (coll[i]==obj){
				result = i;
				break;
			}	
		}
	}		
	return result;
}

function howLong(yrname, moname, dyname) {   
	//Parameters are calendar Year,Month,Day	
	var moFlag = 0;
	var dyFlag = 0;
	var dy = (eval("document.MyForm."+dyname)).value;
	var mo = (eval("document.MyForm."+moname)).value;
	var yr = (eval("document.MyForm."+yrname)).value;
	var nDate = new Date();  // current date (local)
	var nowTime = nDate.getTime();  // current time (UTC)
	var thenTime = Date.UTC(yr, mo-1, dy);  // specified time (UTC)
	var thisYear = nDate.getFullYear();
	var thisMonth = nDate.getMonth();
	var thisDay = nDate.getDate();
	if (nowTime >= thenTime) {   //-----------------Past or present time
		if ((thisMonth > mo-1) || ((thisMonth == mo-1) && (thisDay >= dy))) {
			whYrs = thisYear - yr;
			spareDys = parseInt((nowTime - Date.UTC(thisYear,mo-1,dy))/(3600000*24));
			if ((mo == 2 && dy == 29)  && ((thisYear%4 != 0) || (thisYear%100 == 0 &&  thisYear%400 != 0))) {spareDys = spareDys + 1}
		} else {
			whYrs = thisYear - yr - 1;
			spareDys = parseInt((nowTime - Date.UTC(thisYear-1,mo-1,dy))/(3600000*24));
			if ((mo == 2 && dy == 29)  && (((thisYear-1)%4 != 0) || ((thisYear-1)%100 == 0 && (thisYear-1)%400 != 0))) {spareDys = spareDys + 1}
		}
		if (whYrs >= 18){
			return true;
		} else {
			alert("Vous devez avoir plus de 18 ans pour pouvoir vous inscrire");
			return false;
		}
	} else {   //----------------------------Future time
		if ((thisMonth < mo-1) || ((thisMonth == mo-1)&& (thisDay <= dy))) {
			whYrs = yr - thisYear;
			spareDys = parseInt((thenTime - Date.UTC(yr,thisMonth,thisDay))/(3600000*24));
			if ((thisMonth == 1 && thisDay == 29)  && ((yr%4 != 0) || (yr%100 == 0 && yr%400 != 0))) {spareDys = spareDys - 1}
		} else {
			whYrs = yr - thisYear - 1;
			spareDys = parseInt((thenTime - Date.UTC(yr-1,thisMonth,thisDay)) /(3600000*24));
			if ((thisMonth == 1 && thisDay == 29)  && (((yr-1)%4 != 0) || ((yr-1)%100 == 0 && (yr-1)%400 !=   0))) {spareDys = spareDys - 1};
		}
		alert("Vous devez avoir plus de 18 ans pour pouvoir vous inscrire");
		return false;
	}
}

function switchCtrl(ctl1, ctl2, ctl){
	var obj1 = eval("document.MyForm."+ctl1);
	var obj2 = eval("document.MyForm."+ctl2);
	var obj = eval("document.MyForm."+ctl);
	if (obj1.checked) {
		obj2.checked = false;
		obj.value = (obj1.name=='fomatNewsletterText')?0:1;
	}	
	else {
		obj2.checked = true;
		obj.value = (obj2.name!='fomatNewsletterText')?1:0;
	}	
}

function setValue(ctl, hCtl){
	var obj1 = getElement(ctl);
	var obj2 = getElement(hCtl);
	if (obj1.checked) {
		obj2.value = 1;
	}	
	else {
		obj2.value = 0;
	}	
}

function checkPw(pwd1, pwd2) {
	pw1 = getElement(pwd1).value;
	pw2 = getElement(pwd2).value;
	if ((pw2.length != 0)&&(pw1.length != 0)){
		if (pw1 != pw2) {
			//alert ("\nVous n'avez pas entré un bon mot de passe, veuillez ré-entrer.")
			setText("msg_erreur", "\nLe mot de passe ne correspond pas avec sa confirmation.");	
			ChangeColor("msg_erreur", "FFFFFF", false);
			return false;
		}
	}	
	else if ((pw2.length == 0)&&(pw1.length != 0)){
		//alert ("Veuillez-confirmer le mot de passe !");
		setText("msg_erreur", "Veuillez-confirmer le mot de passe !");	
		ChangeColor("msg_erreur", "FFFFFF", false);
		return false;
	}	
	else if ((pw2.length != 0)&&(pw1.length == 0)) {
		//alert ("Vous n'avez pas entré le mot de passe !");
		setText("msg_erreur", "Vous n'avez pas entré le mot de passe !");	
		ChangeColor("msg_erreur", "FFFFFF", false);
		return false;
	}	
	else {
		return false;
	}	
	return true;
}

function isZip(zip) {
	var obj = eval("document.MyForm."+zip);
	if (obj.value.length != 5 || isNaN(obj.value / 4)) {
		alert("Please enter a 5 digit, numeric zip code.");
		return false;
	}	
	else
		return true;	
}

function VerifyNumericValue(){
	
	if (event.keyCode < 48 || event.keyCode > 57) {
		event.returnValue = false;
		//alert('La valeur de ce champ doit être numerique');
		return false;
	}
	return true;
}

function is_normal(valeur){
	var pattern = "/[0-9A-Za-z]/si";
	/*var pattern = new RegExp("[0-9A-Za-z]", "gi");*/
	if (valeur.match(pattern)) 
		return false;
	return true;	
}

function VerifyNormalChar(){
	if ((event.keyCode > 32 && event.keyCode < 48) || (event.keyCode > 57 && event.keyCode < 65) || (event.keyCode > 90 && event.keyCode < 97)){
		//alert('Le mot de passe doit être composé des caractères et/ou des chiffres (a..z) ou (A..Z) ou (0..9)');
		setText("msg_erreur", "Le mot de passe doit être composé des caractères et/ou des chiffres (a..z) ou (A..Z) ou (0..9)");	
		ChangeColor("msg_erreur", "FFFFFF", false);
		event.returnValue = false;
		return false;
	}
	return true;
}

// Controle la longueur du mot de passe
function VerifyLengthPwd(objName){
	var obj = getElement(objName);
	if ((obj.value.length > 0)&&(obj.value.length < 6)) {
		//event.returnValue = false;
		if (is_normal(obj.value)) {
			//alert('Le mot de passe doit être au minimum 6 caractères');
			setText("msg_erreur", "Le mot de passe doit être au minimum 6 caractères");	
			ChangeColor("msg_erreur", "FFFFFF", false);
		}	
		return false;
	} else{
		return true;
	}
}

function VerifyControls(arrCtlName, arrCtlLegend, errName){
	var obj = new Array();
	for(i=0; i<arrCtlName.length; i++){
		//obj[i] = eval("document.MyForm."+arrCtlName[i]);	
		obj[i] = getElement(arrCtlName[i]);
	}
	var OK = true;
	var Msg = '';
	Msg += 'La saisie ';
	for (i=0; i < obj.length; i++){
		if ((obj[i].value == "")||(obj[i].value == null)){
		    Msg += ' ';
			Msg += arrCtlLegend[i];			
			Msg += ',';
			OK = false;
		}
	}
	if (!OK){
	    Msg = Msg.substring(0, Msg.length - 1);
	    Msg += ' est obligatoire.';			
		//alert(Msg);
		setText(errName, Msg);
	}	
	return OK;
}

function VerifyValues(status, arrCtlName, arrCtlLabel){
	var obj = new Array();
	var lab = new Array();
	for(i=0; i<arrCtlName.length; i++){
		//obj[i] = eval("document.MyForm."+arrCtlName[i]);	
		obj[i] = getObject(arrCtlName[i]);
		lab[i] = getObject(arrCtlLabel[i]);
	}
	var OK = true;
	var Msg = '';
	for (i=0; i < obj.length; i++){
		if ((obj[i].value == "")||(obj[i].value == null)||(obj[i].value == "00")||(obj[i].value == "0000")){
			lab[i].style.color='#FF0000';		
			OK = false;
		} else {
			if (status==false) 
				lab[i].style.color='#000000';		
			else
				lab[i].style.color='#2C5A87';			
		}	
	}
	return OK;
}

function VerifyInputs(arrCtlName){
	var obj = new Array();
	for(i=0; i<arrCtlName.length; i++){
		obj[i] = getObject(arrCtlName[i]);
	}
	var OK = true;
	for (i=0; i < obj.length; i++){
		if ((obj[i].value == "")||(obj[i].value == null)||(obj[i].value == "00")||(obj[i].value == "0000")){
			OK = false;
		} 	
	}
	return OK;
}

function VerifyDetail(){
	var OK = false;
	var obj = new Array();
	var objCount = getElement('modcount').value;
	if (objCount > 0) {
		for(i=1; i < objCount+1; i++){
			obj[i] = getElement('qte_' + i);
			if (obj[i] != null){
				if ((Trim(obj[i].value) != "")&&(obj[i].value != null)&&(parseInt(Trim(obj[i].value)) != 0)){
					OK = true;
					break;
				}
			}		
		}
	}
	return OK;
}

function VerifyDate(){
	var day = getElement('FirstSelectDay').value;
	var month = getElement('FirstSelectMonth').value;
	var year = getElement('FirstSelectYear').value;
	var mydate = new Date(year, month-1, day);
	var minDate = new Date(2003, 10-1, 10);
	var maxDate = new Date(2004, 1-1, 31);
	return !(mydate.valueOf() < minDate.valueOf() || mydate.valueOf() > maxDate.valueOf());
}

function acceptTerm(accCtl){
	var aCtl = getElement(accCtl);
	if (aCtl != null)
		return aCtl.checked;
}

function ChangeColor(errCtl, strcolor, inval){
	var lab = getElement(errCtl);
	if (lab != null){
		if (inval == false){
			lab.style.color='#FF0000';		
		} else {
			lab.style.color='#' + strcolor;			
		}	
	} 
}

// Valide si le visiteur a antré au moins un grossiste pour chaque année 
function chkValid(partname){
	var i;
	var obj = new Array();
	var result = false;
	if(document.all) obj=document.all.tags('INPUT');
	else if(document.getElementsByTagName)
	 obj=document.getElementsByTagName('INPUT');
	if (obj.length > 0) {
		for (i=0; i < obj.length; i++){
			if ((obj[i].type == "checkbox") && (obj[i].name.indexOf(partname) != -1)) 
				if (obj[i].checked == true)
					return true;
		}
	}
	return result;
}

/*****************************HELP***********************************/
var tMsg = "Merci d'autoriser Epson à contrôler vos déclaratifs auprès de mes grossistes fournisseurs.";

// Pour Inscription et Modifier
// Cote checkbox
function autorise(){
	var chk = getElement("info");
	var objH = getElement("revendeur_autorisationepson");
	if (chk != null){
		if (chk.checked)
			objH.value = "1"
		else
			objH.value = "0";	
	}
}

// Cote hidden
function autorise_load(){
	var chk = getElement("info");
	var objH = getElement("revendeur_autorisationepson");
	if (chk != null){
		if (objH.value == "1")
			chk.checked = true
		else if (objH.value == "0")
		    chk.checked = false
		else { 
			if (Trim(objH.value)==""){
				objH.value = "1";
				chk.checked = true;	
			}	
		}	
	}
}

// Pour invcoordonnees.php
function vNew(){

	var arrCtlName = new Array();
	var arrCtlLegend = new Array();
	var emailVal = getVal("investigateur_email");
	
	arrCtlName[0] = "investigateur_qualite";
	arrCtlName[1] = "investigateur_nom";
	arrCtlName[2] = "investigateur_prenom";
	arrCtlName[3] = "investigateur_email";
	arrCtlLegend[0] = "de la qualité";
	arrCtlLegend[1] = "du nom";
	arrCtlLegend[2] = "du prénom";
	arrCtlLegend[3] = "de l'E-mail";
	
	var res1 = VerifyControls(arrCtlName, arrCtlLegend, "msg_erreur");
	var res2 = emailCheck (emailVal);
	/*var res3 = VerifyLengthPwd("membre_pwd");
	var res4 = checkPw("membre_pwd", "membre_pwd_confirm");
	var res5 = howLong("FirstSelectYear", "FirstSelectMonth", "FirstSelectDay");*/
	var res12 = ((res1)&&(res2));
	ChangeColor("msg_erreur", "FFFFFF", res12);
	if (res12 == true) {
		document.MyForm.submit();			
	}
}

// Pour invaddnew.php
function vAddNew(){

	var arrCtlName = new Array();
	var arrCtlLegend = new Array();
	var emailVal = getVal("investigateur_email");
	
	arrCtlName[0] = "investigateur_qualite";
	arrCtlName[1] = "investigateur_nom";
	arrCtlName[2] = "investigateur_prenom";
	arrCtlName[3] = "investigateur_email";
	arrCtlName[4] = "investigateur_pwd";
	arrCtlLegend[0] = "de la qualité";
	arrCtlLegend[1] = "du nom";
	arrCtlLegend[2] = "du prénom";
	arrCtlLegend[3] = "de l'E-mail";
	arrCtlLegend[4] = "du mot de passe";
	
	var res1 = VerifyControls(arrCtlName, arrCtlLegend, "msg_erreur");
	var res2 = emailCheck (emailVal);
	var res3 = checkPw("investigateur_pwd", "investigateur_confirm_pwd");
	/*var res4 = VerifyLengthPwd("membre_pwd");
	var res5 = howLong("FirstSelectYear", "FirstSelectMonth", "FirstSelectDay");*/
	var res123 = ((res1)&&(res2)&&(res3));
	ChangeColor("msg_erreur", "FFFFFF", res123);
	if (res123 == true) {
		document.MyForm.submit();			
	}
}

// Pour sc_login.php
function vLogin(){
	var arrCtlName = new Array();
	var arrCtlLegend = new Array();
	var emailVal = getVal("investigateur_email");
	arrCtlName[0] = "investigateur_email";
	arrCtlName[1] = "investigateur_pwd";
	arrCtlLegend[0] = "de l'E-mail";
	arrCtlLegend[1] = "du mot de passe";
	var res1 = VerifyControls(arrCtlName, arrCtlLegend, "msg_erreur");
	var res2 = emailCheck (emailVal);
	//var res2 = true;
	var res12 = ((res1)&&(res2));
	ChangeColor("msg_erreur", "FFFFCC", res12);
	if (res12 == true) {
		document.MyForm.submit();			
	}
	//return res12;
}

// Pour oublipwd.php
function vOublie(){

	var arrCtlName = new Array();
	var arrCtlLegend = new Array();
	var emailVal = getVal("investigateur_email");
	
	arrCtlName[0] = "investigateur_email";
	arrCtlLegend[0] = "de l'E-mail";
	
	var res1 = VerifyControls(arrCtlName, arrCtlLegend, "msg_erreur");
	var res2 = emailCheck (emailVal);
	var res12 = ((res1)&&(res2));
	ChangeColor("msg_erreur", "FFFFCC", res12);
	if (res12 == true) {
		document.MyForm.submit();			
	}

}

// Sychroniser le combo et le hidden
function syncFounisseur(ctl1, ctl2, ctl3){
	var cmb = getElement(ctl1);
	var inp = getElement(ctl2);
	var hden = getElement(ctl3);
	if (cmb.options[cmb.selectedIndex].value != "LAST") {
	    if (cmb.options[cmb.selectedIndex].value != "FIRST") 
			hden.value = cmb.options[cmb.selectedIndex].value;
		else 	
			hden.value = "";
		inp.value = "";
		inp.disabled=true;
	} else {
		inp.disabled=false;
		inp.focus();
		hden.value = inp.value
	}
}

// Pour la redirection
function href(ahref){
		document.location.href=ahref;
}

/*****************************HELP***********************************/


function MM_openBrWindow(url,titre,largeur,hauteur,scro){ 
	var prop = "status=no, toolbar=no, scrollbars=yes, resizable=0, width="+largeur+", height="+ hauteur;
	var w=window.open(url,titre,prop);
	var windowX = (screen.width/2)-(largeur/2);
	var windowY = (screen.height/2)-(hauteur/2);
	w.moveTo(windowX, windowY);
	var autoclose = true
	w.focus()
	if(autoclose){
		window.onunload = function(){w.close()}
	}    
}

// To submit the Product Search 
function submit_Search_Pro(){
	var code = document.ProForm.search_pro.value;
	if (code.length == 0){
		alert("Veuillez entrer votre mot clé.");
	} else {
		document.ProForm.submit();
	}
}

// To submit the Product Search 
function submit_Search_Knowledge(){
	var code = document.knowledgeform.search_knowledge.value;
	if (code.length == 0){
		alert("Veuillez entrer votre mot clé.");
	} else {
		document.knowledgeform.submit();
	}
}

// initialise le champ de saisie
function init_input(value) {
	if (value == "E-mail") document.mailingForm.emailing.value = "";
}

// To submit the mailing form 
function submit_mailing(){
	
	if (emailCheck(document.mailingForm.emailing.value)){
	var code = document.mailingForm.emailing.value;
	if (code.length == 0){
		alert("Veuillez entrer votre e-mail.");
	} else {
		document.mailingForm.submit();
	}
	}
}

// To control the radio buttons
function radioControl(radioname, myObj, ctrl_dest){
	var obj = getObject(radioname);
	var obj_dest = getObject(ctrl_dest);
	if (obj.length != 0){
		if (myObj.checked == true)
	 		obj_dest.value = getIndex(radioname, myObj); 	
	}
}

// Cast values in the commande_affiche.htm
function castValue(obj){
	if (obj.checked==true){
		setVal('nom_cnt', 'nom_liv');
		setVal('prenom_cnt', 'prenom_liv');
		setVal('societe_cnt', 'societe_liv');
		setVal('adresse_cnt', 'adresse_liv');
		setVal('codepostal_cnt', 'codepostal_liv');
		setVal('ville_cnt', 'ville_liv');
		syncSelect('idpays_cnt', 'idpays_liv','idprovince_cnt' ,'idprovince_liv');
		setVal('email_cnt', 'email_liv');
		setVal('tel_cnt', 'tel_liv');
		setVal('mobile_cnt', 'mobile_liv');
	} else {
		resetVal('nom_liv');
		resetVal('prenom_liv');
		resetVal('societe_liv');
		resetVal('adresse_liv');
		resetVal('codepostal_liv');
		resetVal('ville_liv');
		//resetVal('idprovince_liv');
		//resetVal('idpays_liv');
		resetVal('email_liv');
		resetVal('tel_liv');
		resetVal('mobile_liv');
	}	
}

//
function submit_panier(panier) {
	if(panier=="service") {
		document.form_associe.pdt.value = document.form_associe.list_idproduits2.value;
	}
	else {
		document.form_associe.pdt.value = document.form_associe.list_idproduits1.value;
	}
	if(document.form_associe.pdt.value != "") document.form_associe.submit();
}

var list_add = new Array();
var list_add1 = new Array();
var list_add2 = new Array();
var list_idproduits1, list_idproduits2;

function add_list(objet, numpanier){
	var list_id = "";
	var list_id1 = "";
	var list_id2 = "";
	var tab = eval("list_add"+numpanier);
	if(objet.checked) {
		id = objet.name;
		tab[id] = id;
	}
	else {
		id = objet.name;
		tab[objet.name] = "";
	}		
	
	for (var i=0;i<tab.length;i++){
		if (!isNaN(tab[i])) {
			if (tab[i] != ""){
				if (list_id=="") {
					list_id = tab[i];
				}
				else {
					list_id = list_id + ',' + tab[i];
				}
			}
		}	
	}
	var df = "document.form_associe";
	var Panier = eval(df+".list_produits"+numpanier);
	Panier.value = tab;
	
	var list_panier = eval(df+".list_idproduits"+numpanier);
	list_panier.value = list_id;
//	alert (list_panier.value);
}
