////Test du formulaire de contact
//--------------------------------------------------
function tester_contact()
{
	var resultat = true
	
	var nom=document.forms['contact'].elements['nom']
	var prenom=document.forms['contact'].elements['prenom']
	var tel=document.forms['contact'].elements['tel']
	var email=document.forms['contact'].elements['email']

  if (resultat == true) resultat = tester_champs(resultat, 'contact', nom, alerte_nom)
  if (resultat == true) resultat = tester_champs(resultat, 'contact', prenom, alerte_prenom)
  if (resultat == true) resultat = tester_champs(resultat, 'contact', tel, alerte_tel)
  if (resultat == true) resultat = tester_champs(resultat, 'contact', email, alerte_mail)
  if (resultat == true) resultat = tester_champs_mail(resultat, 'contact', email, alerte_mail_invalide)
  
  //if (resultat == true) resultat = tester_champs_tel(resultat, 'contact', tel, alerte_tel_invalide)
  
	// Si le formulaire est correctement rempli, on le soumet
	if (resultat == true) 
  {
	  document.forms['contact'].submit()
	}
	
	return resultat
}

//--------------------------------------------------
//------------------FONCTIONS----------------
//--------------------------------------------------

  //Fonction commune aux tests relatifs ? la partie client
  //--------------------------------------------------
  function tester_clients(formulaire) 
  {
  	var nom=document.forms[formulaire].elements['nomCli']
  	var prenom=document.forms[formulaire].elements['prenomCli']
  	var adresse=document.forms[formulaire].elements['adrCli']
  	var ville=document.forms[formulaire].elements['villeCli']
  	var codePostal=document.forms[formulaire].elements['codePCli']
  	var tel=document.forms[formulaire].elements['telCli']
  	var mail=document.forms[formulaire].elements['mailCli']
  	
  	var resultat = true
  
    switch(formulaire)
    {
      case 'clients' :  resultat = tester_champs(resultat, formulaire, nom, alerte_clients_nom)
                      	resultat = tester_champs(resultat, formulaire, prenom, alerte_clients_prenom)
                        resultat = tester_champs(resultat, formulaire, adresse, alerte_clients_adresse)
                      	resultat = tester_champs(resultat, formulaire, codePostal, alerte_clients_code_postal)
                      	resultat = tester_champs(resultat, formulaire, ville, alerte_clients_ville)
                      	resultat = tester_champs(resultat, formulaire, tel, alerte_clients_tel)
                      	resultat = tester_champs(resultat, formulaire, mail, alerte_clients_mail)
                      	resultat = tester_champs_mail(resultat, formulaire, mail, alerte_clients_mail_invalide)
                        break;
      case 'compte' :  resultat = tester_champs(resultat, formulaire, nom, alerte_nom)
                      	resultat = tester_champs(resultat, formulaire, prenom, alerte_prenom)
                        resultat = tester_champs(resultat, formulaire, adresse, alerte_adresse)
                      	resultat = tester_champs(resultat, formulaire, codePostal, alerte_code_postal)
                      	resultat = tester_champs(resultat, formulaire, ville, alerte_ville)
                      	resultat = tester_champs(resultat, formulaire, tel, alerte_tel)
                      	resultat = tester_champs(resultat, formulaire, mail, alerte_mail)
                      	resultat = tester_champs_mail(resultat, formulaire, mail, alerte_mail_invalide)
                        break;
      default : resultat = false;
                break;
    }
  	return resultat
  }

  //FONCTION de test des champs
  function tester_champs(resultat, formulaire, champs, message_alerte)
  {
  	if (resultat == true && champs.value.length==0)
  	{
  		// le champ indiqu? est vide
  		alert(message_alerte)
  		champs.focus();
  		resultat = false
  	}
  	return resultat
  }

  //FONCTION de test du mail
  function tester_champs_mail(resultat, formulaire, mail, message_alerte)
  {
	 if (resultat == true && ((mail.value.indexOf('@',0)==-1) || (mail.value.indexOf('.',0)==-1))) 
	 {
		  // l'adresse entr?e est incorrecte
		  alert(message_alerte)
		  mail.focus();
		  resultat = false
	 }
	 return resultat
	}
	
	//FONCTION de test du mail
   function tester_champs_tel(resultat, formulaire, num_tel, message_alerte)
  {
     // Definition du motif a matcher
     var regex = new RegExp(/^(01|02|03|04|05|06|08|09)[0-9]{8}/gi);
     
     // Definition de la variable booleene match
     var resultat = false;
     
     // Test sur le motif
     if(regex.test(num_tel))
     {
         resultat = true;
     }
      else
     {
       alert(message_alerte)
			 num_tel.focus();
			 resultat = false
     }
     
     // On renvoie match
     return resultat;
  }

		
  //FONCTION de test du mot de passe
  function tester_champs_pwd(resultat, formulaire, pwd, message_alerte)
  {
	 if (resultat == true && pwd.value.length < 6 ||  pwd.value.length > 12)
		{
			//Le mot de passe ne contient pas le nombre de caract?res r?guliers
			alert(message_alerte)
			pwd.focus();
			resultat = false
		}
		return resultat
	}
	
	//FONCTION de test des 2 mots de passe
  function tester_champs_2_pwd(resultat, formulaire, pwd1, pwd2, message_alerte)
  {
		if (resultat == true && pwd1.value!=pwd2.value)
		{
			//Les 2 mots de passe sont diff?rents
			alert(message_alerte)
			pwd2.value = ""
			pwd2.focus()
			resultat = false
		}
		return resultat
	}
