// JavaScript Document
/** Vérifie si tout les produits sont recpetionne
 **
**/
function checkedReception(name)
{
	var choix =  document.getElementsById(name);

	for (i = 0; i < choix.length; i++)
	{
		if ( choix[i].checked = true)
			alert ('kk');
	}
}

function popup(test) {
	// ouvre une fenetre sans barre d'etat, ni d'ascenceur
	w=open("",'popup','width=400,height=200,toolbar=no,scrollbars=no,resizable=yes');
	w.document.write("<TITLE></TITLE>");
	w.document.write("<BODY> Bonjour "+document.forms[0].elements["nom"].value+"<BR><BR>");
	w.document.write(test);
	w.document.write("</BODY>");
	w.document.close();
}

function isInteger(valeur)
{
 var re = /^\d+$/;

 if(!re.test(valeur))
 {
   alert("Vous n'avez pas saisie d'entier !!!");
   return '';
 }
 return valeur;
}

function codeP(valeur)
{
	var re = /^\d+$/;

	if(!re.test(valeur))
	{
		alert("Votre code postal n'est pas correct  !!!");
		return '';
	}
	if (valeur >= 20000 && valeur <21000)
	{
		alert ("Nous vous informons qu'un complément peut vous être demandé pour la livraison des marchandises par voie maritime. ");
		return valeur;
  }
	if ( valeur < 1000 )
	{
		alert ("Votre code postal n'est pas correct !");
		return '';
	}
	else if ( valeur >= 96000 )
	{
		alert ("Nous ne faisons pas d'expédition pour cette localité, Attention nous livrons exclusivement la France Métropolitaine");
		return '';
	}
	return valeur;
}

function verifTel(valeur)
{
	var re = /^\d+$/;

	if(!re.test(valeur))
	{
		alert("Votre numéro de téléphone n'est pas correct  !!!");
		return '';
	}
	if ( valeur < 100000000 )
	{
		alert ("Votre numéro de téléphone est trop court, il doit etre composÃ© de 10 chiffres");
		return '';
	}
	else if ( valeur >= 1000000000 )
	{
		alert ("Votre numéro de téléphone n'est pas correct");
		return '';
	}
	return valeur;
}
/**Méthode vérifiant que le champ soit bien un réel avec pour séparateur le point ou la vergule*/
function isReal(valeur)
{
 var re = /^\d+([\.|,])?\d*$/;

 if(!re.test(valeur))
 {
  alert("Vous n'avez pas saisie un réel !!!");
  return '';
 }
 return valeur;
}

/* verif
	vÃ©rifie que tous les champs du formulaire newCustomer sont
	renseigner
		si le mot de passe et sa confirmation sont difÃ©rent message erreur
		si toutes les conditions sont ok alors le bouton de validation s'aafiche
*/

function verifNonVide(formulaire,champs)
{
 var mess_ini = "Veuillez remplir les champs suivants:\n";
 var mess = mess_ini ;
 for(var i=0; i < champs.length; i=i+2)
 {
   if ( eval('document.'+formulaire+'.'+champs[i]+'.value.length') < 1 )
   {
     mess += " - " ;
     mess += champs[i+1];
     mess += "\n" ;
   }
 }

 if ( mess.length != mess_ini.length )
 {
   window.alert(mess);
 }
 else
 {
  eval('document.'+formulaire+'.submit()');
 }
}


function verif()
{
 document.newCustomer.message2.type = 'hidden';
 if (document.newCustomer.surname.value != "" && document.newCustomer.firstname.value != "" && document.newCustomer.email.value != "" && document.newCustomer.password.value != "" && document.newCustomer.confirm.value != "" )
 {
  if (document.newCustomer.password.value == document.newCustomer.confirm.value)
   document.newCustomer.bouton.type = 'image';
  else
  {
   document.newCustomer.message2.value = "Merci de retaper votre mot de passe!";
   document.newCustomer.message2.type = 'text';
   document.newCustomer.bouton.type = 'hidden';
  }
 }
 else
 {
  document.newCustomer.message2.value = "Merci de remplir tous les champs !";
  document.newCustomer.message2.type = 'text';
  document.newCustomer.bouton.type = 'hidden';
 }
}
/* isEmailAdress(valeur)
	vÃ©rifie si le champs valeur est bien du type adresse mail
		prend en compte la prÃ©sence du format ----@---.---

*/
function isEmailAdress(valeur){
   var re = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/;

   if(!re.test(valeur)){
        alert("Vous n'avez pas saisie une adresse email!!!");
        return false;
   }
   return true;
}

/**Méthode vérifiant que le champ soit bien un fichier image*/
function isFile(valeur)
{
 var re = /^.+\.(gif|jpg|jpeg|png)$/i;

 if(!re.test(valeur))
 {
  alert("Vous n'avez saisie un fichier image !!!");
  return false;
 }
 return true;
}

/**Méthode vérifiant que le champ soit bien une date
	au format jj/mm/aaaa						*/
function isDate(valeur)
{
 var re = /^\d{1}\d{1}\/\d{1}\d{1}\/\d{1}\d{1}\d{1}\d{1}$/;

 if(!re.test(valeur))
 {
  alert("Vous n'avez pas saisie une date au bon format !!!");
  return false;
 }
 return true;
}


/*
First2UpperCase(texte)
	met une majuscule a la premiÃ¨re lettre de la chaine de caractÃ¨re et met la suite en minuscule
*/
function First2UpperCase(texte)
{
 var t = new Array();
 for(j=0 ; j < texte.length ;j++)
 {
  if(j == 0)
   t[j] = texte.substr(j,1).toUpperCase();
  else t[j] = texte.substr(j,1).toLowerCase();
 }
 return t.join('');
}

/* verifName
	vÃ©rifie que tous les champs du formulaire name sont
	renseigner
		si le mot de passe et sa confirmation sont difÃ©rent message erreur
		si toutes les conditions sont ok alors le bouton de validation s'aafiche
*/
function verifName()
{
 document.name.message.type = 'hidden';

 if (document.name.surname.value != "" && document.name.firstname.value != "" )
 {
	 document.name.bouton.type = 'image';
	 document.name.bouton.focus();
 }
 else
 {
   document.name.message.value = 'Merci de remplir tous les champs!';
   document.name.message.type = 'text';
 }
}

function verifNonVide(formulaire,champs)
{
 var mess_ini = "Veuillez remplir les champs suivants:\n";
 var mess = mess_ini ;
 for(var i=0; i < champs.length; i=i+2)
 {
   if ( eval('document.'+formulaire+'.'+champs[i]+'.value.length') < 1 )
   {
     mess += " - " ;
     mess += champs[i+1];
     mess += "\n" ;
   }
 }

 if ( mess.length != mess_ini.length )
 {
   window.alert(mess);
 }
 else
 {
  eval('document.'+formulaire+'.submit()');
 }
}
/* verifPwd
	vÃ©rifie que tous les champs du formulaire pwd sont
	renseigner
		si le mot de passe et sa confirmation sont difÃ©rent message erreur
		  et effacement des valeurs
		si toutes les conditions sont ok alors le bouton de validation s'aafiche
*/
function verifPwd(formulaire,mdp1,mdp2)
{
  if ( eval('document.'+formulaire+'.'+mdp1+'.value') != eval('document.'+formulaire+'.'+mdp2+'.value') )
  {
	 window.alert('Veuilliez retaper votre mot de passe ! ');
  }
}

/* verifPwd
	vÃ©rifie que tous les champs du formulaire pwd sont
	renseigner
		si le mot de passe et sa confirmation sont difÃ©rent message erreur
		si toutes les conditions sont ok alors le bouton de validation s'aafiche
*/
function verifPwd2(formulaire,mdp1,mdp2)
{
  if ( eval('document.'+formulaire+'.'+mdp1+'.value') != eval('document.'+formulaire+'.'+mdp2+'.value') )
  {
	 window.alert('Veuilliez retaper votre mot de passe ! ');
	 return '1';
  }
  else
  	eval ('document.'+formulaire+'.submit()');
}





/* verifAddress
	vérifie que tous les champs du formulaire address sont
	renseigner
		si le code postal n'est pas constitué que de nombre affiche message
		si toutes les conditions sont ok alors le bouton de validation s'afiche
*/

function verifAddress()
{
 var re = /^\d+$/;
 document.address.message.type = 'hidden';
 if ( document.address.firstname.value == "" || document.address.surname.value == "" || document.address.address.value == "" || document.address.postalcode.value == "" || document.address.city.value == ""  )
 {
  document.address.message.value = 'Merci de remplir tous les champs (*) ! ';
  document.address.message.type = 'text';
  document.address.bouton.type= 'hidden';
 }
 else
 {
   if(!re.test(document.address.postalcode.value))
   {
	 document.address.message.value = 'Merci de saisir un code postal valide !';
	 document.address.message.type = 'text';
	 document.address.bouton.type = 'hidden';
   }
   else
   {
    document.address.bouton.type = 'image';
   }
 }

 if (document.address.phone.value != "")
 {
   if(!re.test(document.address.phone.value))
   {
	 document.address.message.value = 'Merci de saisir un numéro de téléphone valide ! ';
	 document.address.message.type = 'text';
	 document.address.bouton.type = 'hidden';
   }
 }
}

/* verifAddress
	vérifie que tous les champs du formulaire address sont
	renseigner
		si le code postal n'est pas constitué que de nombre affiche message
		si toutes les conditions sont ok alors le bouton de validation s'afiche
*/

function verifAddress1()
{
 var re = /^\d+$/;
 document.address1.message.type = 'hidden';
 if ( document.address1.firstname.value == "" || document.address1.surname.value == "" || document.address1.address.value == "" || document.address1.postalcode.value == "" || document.address1.city.value == ""  )
 {
  document.address1.message.value = 'Merci de remplir tous les champs (*) ! ';
  document.address1.message.type = 'text';
  document.address1.bouton.type= 'hidden';
 }
 else
 {
   if(!re.test(document.address1.postalcode.value))
   {
	 document.address1.message.value = 'Merci de saisir un code postal valide !';
	 document.address1.message.type = 'text';
	 document.address1.bouton.type = 'hidden';
   }
   else
   {
    document.address1.bouton.type = 'image';
   }
 }

 if (document.address1.phone.value != "")
 {
   if(!re.test(document.address1.phone.value))
   {
	 document.address1.message.value = 'Merci de saisir un numéro de téléphone valide ! ';
	 document.address1.message.type = 'text';
	 document.address1.bouton.type = 'hidden';
   }
 }
}

/*
First2UpperCase(texte)
	met une majuscule a la premiÃ¨re lettre de la chaine de caractÃ¨re et met la suite en minuscule
*/
function UpperCase(texte)
{
 var t = new Array();
 for(j=0 ; j < texte.length ;j++)
 {
  t[j] = texte.substr(j,1).toUpperCase();
 }
 return t.join('');
}

/*
	Permet de retrouver un bloc
*/
function getE(id)
{
	if(document.getElementById)
	{
		return document.getElementById(id);
	}
	else if(document.all)
	{
		return document.all[id];
	}
	else return;
}

/*
	Permet de visualiser un bloc,
	et de fermer tous les autres
*/
function openCat(id,mode,cpt)
{
	for(i=0; i<cpt;i++)
	{
		element = getE("cat_"+String(i));	
    // 'cat_' est la racine du formulaire
    
		if(element.style)
		{
					element.style.display = 'none';
		}

	} 
	element = getE(id);
	if(element.style)
	{
		if(mode == 0)
		{
			if(element.style.display == 'block' )
			{
				element.style.display = 'none';
				//img.src = 'images/plus.png';
			}
			else
			{
				element.style.display = 'block';
				//img.src = 'images/moins.png';
			}
		}
		else if(mode == 1)
		{
			element.style.display = 'block';
			//img.src = 'images/moins.png';
		}
		else if(mode == -1)
		{
			element.style.display = 'none';
			//img.src = 'images/plus.png';
		}
	}
}

/*
	Permet de visualiser un bloc,
	et de fermer tous les autres
*/
function openPan(id,mode,cpt)
{
	for(i=0; i<cpt;i++)
	{
		element = getE("pan_"+String(i));	// 'cat_' est la racine du formulaire
		if(element.style)
		{
					element.style.display = 'none';
		}

	}
	element = getE(id);
	if(element.style)
	{
		if(mode == 0)
		{
			if(element.style.display == 'block' )
			{
				element.style.display = 'none';
				//img.src = 'images/plus.png';
			}
			else
			{
				element.style.display = 'block';
				//img.src = 'images/moins.png';
			}
		}
		else if(mode == 1)
		{
			element.style.display = 'block';
			//img.src = 'images/moins.png';
		}
		else if(mode == -1)
		{
			element.style.display = 'none';
			//img.src = 'images/plus.png';
		}
	}
}

/*
	Permet de visualiser ou non un bloc
*/
function openClose(id,mode)
{
	element = getE(id);
	//img = getE('img_'+id);
	if(element.style)
	{
		if(mode == 0)
		{
			if(element.style.display == 'block' )
			{
				element.style.display = 'none';
				//img.src = 'images/plus.png';
			}
			else
			{
				element.style.display = 'block';
				//img.src = 'images/moins.png';
			}
		}
		else if(mode == 1)
		{
			element.style.display = 'block';
			//img.src = 'images/moins.png';
		}
		else if(mode == -1)
		{
			element.style.display = 'none';
			//img.src = 'images/plus.png';
		}
	}
}


/** permet de selectionner tout les cases a cocher  d'une meme famille
 **   checked ( string name )
**/
function checked(name)
{
	var choix =  document.getElementsByName(name);

	for (i = 0; i < choix.length; i++)
	{
			choix[i].checked = true;
	}
}

/** permet de deselectionner toute les cases a cocher d'une meme famille
**   checked ( string name )
**/
function unchecked(name)
{
	var choix =  document.getElementsByName(name);

	for (i = 0; i < choix.length; i++)
	 choix[i].checked = false;
}

/** Affiche une info bulle
 ** 	- dans une balise avec l'id = di
 ** 	- action permet de rendre visisble si action dif de cache et invisble si action = cache
 **		- contenu chaine de caractére a afficher
 **/
function affiche(action,contenu){
            var voir;
            var display;
            if (action == "cache"){
                voir = "hidden";
                display = "none";
            }
            else {
                voir = "visible";
                display = "block";
            }
            document.getElementById("bulle").innerHTML = contenu;
            function init() {
                document.onmousemove=mousemove;
            }
            function mousemove(e){
                if (navigator.appName.indexOf("Explorer") > -1) {
                    var mouseX = (navigator.appName.substring(0,3) == "Net") ? e.pageX : event.x+document.body.scrollLeft;
                    var mouseY = (navigator.appName.substring(0,3) == "Net") ? e.pageY : event.y+document.body.scrollTop;
                }
                else {
                    var mouseX=e.pageX;
                    var mouseY=e.pageY;
                }

            document.getElementById("bulle").style.top = mouseY+15+"px";
            document.getElementById("bulle").style.left = mouseX+15+"px";
            document.getElementById("bulle").style.visibility = voir;
            document.getElementById("bulle").style.display = display;
            }
            init();
            function cache(){
                document.getElementById("bulle").style.visibility = "hidden";
            }
            }
