/*******************************************************************************
  FONCTION REDIRIGANT VERS UN PAGE LORS D UNE SELECTION DANS UNE ZONE DE LISTE
*******************************************************************************/
function fn_selRedirection(objSel,sHref)
{
  //Recuperation de l element selectionne dans la zone de liste
  iSelection = objSel.options[objSel.options.selectedIndex].value;
  
  //Redirection vers la page correspondante
  document.location.href = sHref + iSelection;
}

/*fn_checkForm****************************************************
| description : Force la saisie de tous les types de champs d un formulaire
|----------------------------------------------------------------------------
| Algorithme :
|----------------------------------------------------------------------------
| Creation : 20070303
| Auteur   : gda
| Revision : 20070728
| Auteur   : 
| Version : 1.02
|----------------------------------------------------------------------------
| Parametres : E  obj_form : objet formulaire a verifier
|				  tab_champOblig : tableau contenant les champs obligatoires
|				  tab_champDescription : tableau contenant la description des champs obligatoires
|				  s_msg : Message a afficher a l utilisateur
|              S
| Retour :  Affiche un message a l utilisateur si tous les champs obligatoires ne sont pas saisis
****************************************************************************/ 
function fn_checkForm(tab_champOblig,tab_champDescription,obj_form,s_msg)
{

	s_msg = s_msg + "\n";

    //Variable contenant le message a afficher	
	var l_Msg = s_msg.length;
	
	//Variable contenant le debut du message a afficher
	var alertMsg = s_msg;
	
	//Parcours du tableau contenant la liste des champs obligatoires
	for (var i = 0; i < tab_champOblig.length; i++)
	{
	  //Recuperation de l objet obligatoire
      var obj = obj_form.elements[tab_champOblig[i]];

	    //Test si l objet existe
		if (obj)
		{
		  //switch en fonction du type d objet
		  switch(obj.type)
		  {
			//Cas select simple
			case "select-one":
			    //Si le select n a pas d element selectionne
				if (obj.selectedIndex == -1 || obj.options[obj.selectedIndex].text == "")
				{
					//Incrementation du message a afficher a l utilisateur
					alertMsg += " - " + tab_champDescription[i] + "\n";
				}
				break;
			//Cas select multiple
			case "select-multiple":
			    // Si aucune selection
				if (obj.selectedIndex == -1)
				{
					//Incrementation du message a afficher a l utilisateur
					alertMsg += " - " + tab_champDescription[i] + "\n";
				}
				break;
			//Cas texte
			case "text":
			//Cas textarea
			case "textarea":
			    //Si pas de texte saisi
				if (obj.value == "" || obj.value == null)
				{
					//Incrementation du message a afficher a l utilisateur
					alertMsg += " - " + tab_champDescription[i] + "\n";
				}
				break;
			//Cas par defaut
			default:
			    //Si objet vide ou null
				if (obj.value == "" || obj.value == null)
				{
					//Incrementation du message a afficher a l utilisateur
					alertMsg += " - " + tab_champDescription[i] + "\n";
				}
			}
		}
	}

	//Test si le message a afficher est different du message de depart
	if (alertMsg.length != l_Msg)
	{
		//Affichage du message a l utilisateur
		alert(alertMsg);
		//retourne false
		return false;
	}
}

/*fn_verifEmail****************************************************
| description : Verifie si Email saisie est correcte
|----------------------------------------------------------------------------
| Algorithme :
|----------------------------------------------------------------------------
| Creation : 20070122
| Auteur   : gda
| Revision : 
| Auteur   : 
| Version : 1.00
|----------------------------------------------------------------------------
| Parametres : E  s_valeur : valeur a verifier
|			   	  s_msg : message à afficher a l utilisateur
|              S
| Retour :  Affiche un message a l utilisateur Email saisie incorrecte
****************************************************************************/ 
function fn_verifEmail(s_valeur,s_msg)
{	
	//Test si la valeur est vide
	if(s_valeur.length == 0)
	{
		//retourne true
		return true;
	}
	
	//variable contenant l expression reguliere
	var reg = new RegExp("^[0-9a-z_.-]+@[0-9a-z_.-]{2,}[.][0-9a-z]{2,4}$","gi");
	
	//Test si la valeur saisie ne correspond pas au motif de l expression reguliere
	if(reg.test(s_valeur) == false)
	{
		//affichage du message a l utilisateur
		alert(s_msg);
		//retourne false
		return false;
	}
}