
var globale_enregistrementEnCours = false;
/* v3 *//*
onFocusZoneText
*//* v3 */
var surbrillanceCourante = null;
var selectionCourante = null;
var fenetreFille = null;
var globale_aideDirecte = "";

var CONSTANTE_TOUCHE_F1 = 112; //ie & mozilla
var CONSTANTE_TOUCHE_F2 = 113;
var CONSTANTE_TOUCHE_F3 = 114;
var CONSTANTE_TOUCHE_F4 = 115;
var CONSTANTE_TOUCHE_F5 = 116;
var CONSTANTE_TOUCHE_F6 = 117;
var CONSTANTE_TOUCHE_F7 = 118;
var CONSTANTE_TOUCHE_F8 = 119;
var CONSTANTE_TOUCHE_F9 = 120;
var CONSTANTE_TOUCHE_F10 = 121;        
var CONSTANTE_TOUCHE_F11 = 122;
var CONSTANTE_TOUCHE_F12 = 123;    

/* v3 */
var TOUCHE_AIDE = CONSTANTE_TOUCHE_F2;
var TOUCHE_ENTREE = 13; //ie & mozilla
var TOUCHE_SUBMIT = TOUCHE_ENTREE;

var	ie=document.all;             // Internet Explorer
var	dom=document.getElementById; // Mozilla , Firefox
var	ns4=document.layers;         // Netscape Navigator

//Gère la gestion du cochage dans les listes cochables
function cocherToutListeCochables(strNameField) {
	var monbloc = document.getElementById(strNameField);
	var paramCocherListe = (monbloc.getAttribute('toutCocher')) == 'true';
	var mesinputs = monbloc.getElementsByTagName("input"); 
	for (var i=0; i<mesinputs.length; i++) { 
	  if (mesinputs[i].type.toLowerCase()=="checkbox" ) { 
		  if (paramCocherListe) { //On coche
		      mesinputs[i].checked = true;
		  } else { //On décoche
		      mesinputs[i].checked = false;
		  }
	  } 
	}
  if (paramCocherListe) {
      monbloc.setAttribute('toutCocher','false');
  } else { //COCHER par défaut
      monbloc.setAttribute('toutCocher','true');	  	  
  }
	
}

//Supprime a gauche et/ou a droite de la chaine les espaces inutiles.
function std_trim(chaine,gauche,droite)
	{
		var trim = chaine;
		if (trim == null)
			{
				return null;
			}
		if (gauche)
			{
				while (trim.substring(0,1) == " ")
					{
						trim = trim.substring(1,trim.length);
					}
			}
		if (droite)
			{
				while (trim.substring(trim.length-1,trim.length) == " ")
					{
						trim = trim.substring(0,trim.length-1);
					}
			}
  		return trim;
	}
//Gere le focus, la selection et le style de la zone en fonction de son statut booleen de principal.
function std_focus(zone,booleen)
	{
		
		if (booleen)
			{
				zone.setAttribute('classe',zone.className);
				var expression = /\s(zone|zoneLecture|zoneDisable)\s/; //espaces avant et arriere
				var classe = " "+zone.className+" ";
				zone.className = classe.replace(expression,' zoneFocus ');
				if (zone.focus)
				{
					zone.focus();
				}
				if (zone.select)
				{
					zone.select();
				}
			}
		else
			{
				zone.className = zone.getAttribute('classe');
			}
	}
/* v3 */

function fermerPage()
{
 if (fenetreFille != null)
 {
    fenetreFille.close();
 }
}

/////////////////////////////////////////////
// Gestion de la subrillance dans les listes
/////////////////////////////////////////////
/////////////////////////////////////////////
//Gestion de la subrillance dans les listes
/////////////////////////////////////////////
function std_desactiverSurbrillance()
{
if ((selectionCourante != surbrillanceCourante)  && (surbrillanceCourante != null))
{ 
		surbrillanceCourante.className = surbrillanceCourante.getAttribute("CLASSINITIAL");
}
surbrillanceCourante = null;	   
}

function std_activerSurbrillance(referenceElement)
{
if (selectionCourante != referenceElement)
{ 
	  if (surbrillanceCourante != null)
	  {
		surbrillanceCourante.className = surbrillanceCourante.getAttribute("CLASSINITIAL");
	  }
	  else if (referenceElement.getAttribute("GEN")=='TRUE')
	  {
	  	referenceElement.className = referenceElement.getAttribute("CLASSINITIAL") + " SurbrillanceGene";
	  }
	  else if (referenceElement.getAttribute("SUPP")!='TRUE')
	  {
	  	referenceElement.className = referenceElement.getAttribute("CLASSINITIAL") + "Surbrillance";
	  }
	  else
	  {
	  	referenceElement.className = referenceElement.getAttribute("CLASSINITIAL") + "SurbrillanceSupp";
	  }
	  surbrillanceCourante = referenceElement;
}
}
/////////////////////////////////////////////
// Gestion de la pagination dans les listes
/////////////////////////////////////////////

/////////////////////////////////////////////
function capturerFocusZoneTexte(formulaire)
{
	for (var i=0; i<formulaire.length; i++)
	{
		if ( ((formulaire.elements[i].type == "text")  || (formulaire.elements[i].type == "password" ))
		    && (formulaire.elements[i].className != "zoneLecture") )
		{
			formulaire.elements[i].onfocus = onFocusZoneText;
			formulaire.elements[i].onblur = onBlurZoneText;
		}
	}
}

function onFocusZoneText()
{
  if (document.all) {
      event.srcElement.className = "zoneFocus";

	}
  else if (!document.all && document.getElementById) {
  //CODE POUR MOZILLA
  //		var node = e.srcElement;
  //   	while(node.nodeType != 1)
  //   		node = node.parentNode;
  //	// Code for Mozilla browsers
  //      if(node.getAttribute("FOCUS")=="ZONE"){
  //      	node.className = "zoneTableauSSBordure";
  //      }
  //      else{
  //           if(node.getAttribute("FOCUS")=="READONLY"){
  //      	node.className = "zoneTableauSSBordureReadOnly";
  //          }
  //          else{
  //               node.className = "zoneFocus";
  //    	   }
  //      } 
    }
}

function onBlurZoneText()
{
 	 if (document.all) {
        	event.srcElement.className = "zone";
      }
      else if (!document.all && document.getElementById) {
	  //CODE POUR MOZILLA
 	  // var node = evenement.srcElement;
      //while(node.nodeType != 1)
      //	node = node.parentNode;
	  //// Code for Mozilla browsers
	  //
      //  if(node.getAttribute.blur=="ZONE"){
      //  	node.className = "zoneTableauSSBordure";
      //  }
      //  else{
      //  	if(node.getAttribute("BLUR")=="READONLY"){
      //  		node.className = "zoneTableauSSBordureReadOnly";
      //  	}	
      //  	else{
      //   	node.className = "zone";
      //}
      //}
  }  
}


function std_activerSelection(referenceElement)
{
  if (selectionCourante != referenceElement)
  { 
	  if (selectionCourante != null)
	  {
		selectionCourante.className = selectionCourante.getAttribute("CLASSINITIAL");
	  }
	  selectionCourante = referenceElement;
	  selectionCourante.className = selectionCourante.getAttribute("CLASSINITIAL") + "Selection";
  }
}

function std_desactiverSelection()
{
  if (selectionCourante != null)
  {
		selectionCourante.className = selectionCourante.getAttribute("CLASSINITIAL");
  }
}


//**Gestion de la touche ENTER**//
/* v3 */
document.onkeypress = function std_gestionnaireEvenementEntree(event)
//document.onkeypress = std_gestionnaireEvenementEntree;
//function std_gestionnaireEvenementEntree()
{
  var evenement = (ie ? window.event : event);
  var touche = (ie ? evenement.keyCode : evenement.which);
  var element = (ie ? evenement.srcElement : evenement.target);

  // La touche entrée valide le formulaire
  if ((touche == TOUCHE_SUBMIT) && ((evenement.shiftKey && evenement.altKey && evenement.ctrlKey ) == false)
	  && (element.tagName != "TEXTAREA")
	  && (element.tagName != "A"))
  //if ((event.keyCode == 13) && ((event.shiftKey && event.altKey && event.ctrlKey ) == false)
  //  && (event.srcElement.tagName != "TEXTAREA")
  //  && (event.srcElement.tagName != "A"))
  {
      //event.keyCode = 0; // ==> aucune action ne sera faite par IE
      //event.returnValue = false;
      
      //event.returnValue = false;      
      evenement.returnValue = false; // SF - prendre la variable et non le parametre (event n'existe pas en IE)
   
      enregistrerFormulaire();  // On déclenche le submit du formulaire s'il est valide
  }
}
/* v3 */

//*******************
//ABS le 20/11/2000
//ouverture des aides
//*******************
function std_ouvrirAide (URL,Cible,Parametre)
{
 if ((window.Win) && (!window.Win.closed))
  Win.close();

 fenetreFille=open(URL,Cible,Parametre);
}
//*******************

function std_aideSimple(URL,largeur,hauteur)
{
  if (largeur == null)
  {
    largeur = 800;
  }
  if (hauteur == null)
  {
    hauteur = 400;
  }  
  std_ouvrirAide (URL,'Aide','scrollbars=yes,resizable=yes,status=no,width='+largeur+',height='+hauteur)
}

//************************

function std_aideNommee(URL,nom,largeur,hauteur)
{
  if (largeur == null)
  {
    largeur = 800;
  }
  if (hauteur == null)
  {
    hauteur = 400;
  }
  std_ouvrirAide (URL,nom,'scrollbars=yes,resizable=yes,status=no,width='+largeur+',height='+hauteur)
}

//****************************************************
//LCO le 19/02/2001
//Désactive une combo, à utiliser de la forme : onchange="DesactiverCombo(this)"
//Radio : nom de l'objet radio : "document.Form.Radio"
//****************************************************
function DesactiverCombo(Combo)
{
  for (i=0; i < Combo.length; i++)
  {
    if(Combo[i].defaultSelected==true)
    {
      Combo.options[i].selected = true;
    }
  }
}

//****************************************************
//ABS le 21/10/2002
//Permet de vérifier si un champ est est une date valide et supérieure à la date du jour
//****************************************************
function verifierDateSupJour(zone,msg1,msg2,onglet,nbOnglet)
{
 if (zone.value == '')
  {
   return true;
  }
 else
  {  
   if (!(std_verifierDate(zone.value)))
    {
     alert(msg1);
     MettreFocus(std_getReference("idOnglet" + onglet),nbOnglet);		 
     zone.focus();
     return false;	
    }
   else
    {
	 //> date du jour
	 dateDuJour = std_convertirDateToString(new Date());
     if (std_comparerDates(dateDuJour,zone.value) > 0 )
     {
      alert(msg2);
      MettreFocus(std_getReference("idOnglet" + onglet),nbOnglet);			  
      std_setFocus(zone);
      return false;
     } 
	 else
      return true;	
	}
  }	
}
function validerFormulaire2()
{
  if (std_verifierChampsAutomatiques() && validerFormulaire() && verifierSaisieCrochet())
  {
    if (globale_enregistrementEnCours == false)
    {
      bloquerUtilisateur();
      return true;
    }
    else
   {
    return false;
   }
  }
  else
  {
   return false;
  }
}

// Pour blinder l'application contre les saisies de "[-"
function verifierSaisieCrochet()
{
	for (var i=0; i<document.forms[0].length; i++)
	{
		if ( (document.forms[0].elements[i].type == "text")  || (document.forms[0].elements[i].type == "password" )
		//traconf
		|| (document.forms[0].elements[i].type == "textarea")
		 )
		{
			if (document.forms[0].elements[i].value.indexOf("[-") != -1)
			{
				// Message en français !! 
				alert(msgSaisieCrochet);
				return false;
			}
		}	
	}
	
	return true;
}


//Interdiction des doubles validations
function bloquerUtilisateur()
{
    calque = std_getReference("idCalqueEnregistrementEnCours");
    std_montrerObjet(calque);

	globale_enregistrementEnCours = true;
}

function chiffrer(v)
{
   c = v; s = "";
   for (o =0; o < c.length; o++) { s=String.fromCharCode(((c.charCodeAt(o)+o)&0xff)-10) + String.fromCharCode(c.charCodeAt(1)+((o*2)%10))+s; } s2 = "";
   for (l =0; l < s.length; l++) { s2 =  ""+s.charCodeAt(l) +"%20"+ s2; }
   return s2;
}

/* v3 */
document.onkeydown = function gestionAideDirecte(event)
//function gestionAideDirecte()
{
 var touche = (ie ? window.event.keyCode : event.which);
 if (touche == TOUCHE_AIDE)
 //if (event.keyCode == CONSTANTE_TOUCHE_F1) //aide )
 /* v3 */
 {
  if (globale_aideDirecte.length > 0)
  {
    std_ouvrirAide (globale_aideDirecte,'AideDirecte','scrollbars=yes,resizable=yes,status=no')
  }
 }
}
//document.onkeydown = gestionAideDirecte;
/* v3 */

// Désactive l'affichage de l'aide, en remplacant la
//  fonction normale par une fonction qui ne fait rien
/* v3 */
document.onhelp = function intercepterOnHelp(event)
//document.onhelp = function intercepterOnHelp()
/* v3 */
		  {
		    return false;
		  };

function debutChargement()
{
//Bug du chargement des OCX
}
function finChargement()
{
//Bug du chargement des OCX
}

function intercepterEvenement(event)
{
	if (document.all) {
		// Code for IE browsers
		window.event.cancelBubble=true
	} else if (!document.all && document.getElementById) {
		// Code for Mozilla browsers
		event.stopPropagation()
	}

}

function modifierIconeCorbeille(node,cheminInutile)
{
	/* v3 */
	/*SD  le 14/08/2008 verrue a cause de la page de utilisateur ou il n'y a pas de lien
	sur l'image sup d'ou td-->a-->img (node.firstChild.firstChild ne fonctionne pas*/
	if (node.firstChild.nodeName == 'IMG')
	{
		node.firstChild.setAttribute("src",baseRessource+'images/commun/corbeille_select.gif');
	}
	else
	{
 		node.firstChild.firstChild.setAttribute("src",baseRessource+'images/commun/corbeille_select.gif');
	}
 	/*
 	node.firstChild.firstChild.setAttribute("src",chemin+'/corbeille.gif');
 	*/ /* v3 */
	node.parentNode.setAttribute("SUPP","TRUE");
}
function retablirIconeCorbeille(node,cheminInutile)
{
	/* v3 */
	/*SD  le 14/08/2008 verrue a cause de la page de utilisateur ou il n'y a pas de lien
	sur l'image sup d'ou td-->a-->img (node.firstChild.firstChild ne fonctionne pas*/
	if (node.firstChild.nodeName == 'IMG')
	{
		node.firstChild.setAttribute("src",baseRessource+'images/commun/corbeille.gif');
	}
	else
	{
 		node.firstChild.firstChild.setAttribute("src",baseRessource+'images/commun/corbeille.gif');
	}
	/*
	node.firstChild.firstChild.setAttribute("src",chemin+'/corbeille.gif');
	*/ /* v3 */
	node.parentNode.setAttribute("SUPP","FALSE");
}
/* v3 */

function modifierIconeGeneration(node) {
 	node.firstChild.firstChild.setAttribute("src",baseRessource+'images/v2/table_replace.png');
	node.parentNode.setAttribute("GEN","TRUE");
}
function retablirIconeGeneration(node) {
 	node.firstChild.firstChild.setAttribute("src",baseRessource+'images/v2/table_add.png');
	node.parentNode.setAttribute("GEN","FALSE");
}


/* Fonctions pour la gestion des onglets */

function activerOnglet(ongletActif)
{
 //Init
 for (i = 1; i <= globale_nombreOnglets; i++ )
  {
   //On rend tout invisible
   table = std_getReference("idOnglet" + i + "Contenu");
   table.style.display = "none";
   //Etat inactif pour tous les onglets
   onglet = std_getReference("idOnglet" + i);
   onglet.className = "ongletPassifFond"
  }

 for (i = 1; i <= globale_nombreOnglets; i++ )
  {  // Haut de l'onglet
   onglet = std_getReference("idOnglet" + i + "Haut");
   onglet.className = ""
  }
	
 //Affichage du tableau
 table = std_getReference(ongletActif.id + "Contenu");
 table.style.display = "block";
 //On affiche 'ongletActif"
 ongletActif.className = "ongletActifFond"

 ongletHaut = std_getReference(ongletActif.id + "Haut");
 ongletHaut .className = "ongletActifFondHaut"

}

function activerOngletNumero(numeroOngletActif)
{
  	activerOnglet( std_getReference("idOnglet" + numeroOngletActif) );
}

function afficherPage(numeroPage) 
{
   if (numeroPage != -1)
   {
  	//document.FmFormulaire.debutListe.value = numeroPage;
    enregistrerFormulaire(); 
   }
}		

function activerFocus(objet)
{
  std_focus(objet,true);
}

function desactiverFocus(objet)
{
  std_focus(objet,false);
  objet.value=std_trim(objet.value,true,true)
}

function masquerObjet(referenceObjet)
{
  referenceObjet.style.display = 'none';
}

function afficherObjet(referenceObjet)
{
  // NE PAS mettre 'block' : pose problème sous FireFox.
  referenceObjet.style.display = '';
}

function desactiverObjet(referenceObjet)
{
  referenceObjet.disabled=true;
}

function activerObjet(referenceObjet)
{
  referenceObjet.disabled=false;
}
function activerTousLesObjetsFormulaire(formulaire)
{//DN réactive tous les éléments d'un formulaire
	for(i = 0; i < formulaire.elements.length; i++)
    {
		activerObjet(formulaire.elements[i]);
    }
}

function remplirCombo(combo, tableau)
{
	var i;

	// vider la combo.
	for (i=combo.options.length; i>=0; i--)
	{
		combo.options[i] = null; 
	}
	if (tableau != null)
	{
		// ajouter les nouveaux éléments.
		for (i=0; i<tableau.length; i++)
		{
			combo.options[i] = new Option(tableau[i][0]);
			if (tableau[i][1] != null)
			{
				combo.options[i].value = tableau[i][1]; 
			}
		}
	}
}

function appelerAideCommune()
{
	parent.frameControles.location.href = "AideCommune${SID}?EdCodePostal=" + std_getReference("IdCodePostal").value;
}
function retourAideCommune(communes)
{
	if (communes)
	{
		if (communes.length == 0)
		{
			afficherObjet(std_getReference("IdEdCommune"));
			masquerObjet(std_getReference("IdLiCommune"))
			alert("${sig:tra('aucuneCommuneCorrespondante',INFOS_ACTION)}");
			std_setFocus(std_getReference("IdCodePostal"));
		}
		else if (communes.length == 1)
		{
			afficherObjet(std_getReference("IdEdCommune"));
			masquerObjet(std_getReference("IdLiCommune"));
			std_getReference("IdEdCommune").value = communes[0][0];
		}
		else
		{
			masquerObjet(std_getReference("IdEdCommune"));
			afficherObjet(std_getReference("IdLiCommune"));
			remplirCombo(std_getReference("IdLiCommune"), communes);
			LiCommuneChange();
		}
	}
}

function iwgp_verifierDate(jour, mois, annee)
{
    strDate = jour + '/' + mois + '/' + annee;
	return std_verifierDate(strDate, 'dd/MM/yyyy');
}

function iwgp_verifierEmail(chaineEmail)
{
    // chercher le caractère @
	var pos1 = chaineEmail.indexOf('@');
	if (pos1 < 0)
	{
		return false; // pas de @
	}
	var pos2 = chaineEmail.lastIndexOf('@');
	if (pos1 != pos2)
	{
		return false; // plusieurs @
    }

    // à gauche, c'est la partie compte de l'email
    var compteEmail = chaineEmail.substring(0, pos1);
    if (compteEmail == "")
    {
       return false; // il faut un compte
    }

    // à droite, c'est la partie domaine
    var domaineEmail = chaineEmail.substring(pos2+1, chaineEmail.length);
    if (domaineEmail == "")
    {
       return false; // il faut un domaine
    }
	var pos3 = domaineEmail.indexOf('.');
	if (pos3 < 0)
	{
       return false; // pas de '.' dans le domaine
	}
	if (pos3 == 0)
	{
       return false; // le domaine ne peut pas commencer par un '.'
	}
	if (pos3 == domaineEmail.length - 1)
	{
       return false; // le domaine ne peut pas termniner par un '.'
	}

    return true;
}

function iwgp_ouvrirDialogue(URL, largeur, hauteur, nom)
{
  if ((window.Win) && (!window.Win.closed))
    Win.close();

  if (nom == null)
  {
	  nom = "Aide";
  }
  if (largeur == null)
  {
	  largeur = 800;
  }
  if (hauteur == null)
  {
	  hauteur = 600;
  }
  
  fenetreFille=open(URL, nom,"scrollbars=yes,resizable=no,status=no,width="+largeur+",height="+hauteur);
}

function iwgp_formaterNumeroTel(zoneTel, separateur)
{
    if ((zoneTel != null) && zoneTel.value != null)
	{
		if (separateur == null)
		{
			separateur = " ";
		}
		
		zoneTel.value = std_trim(zoneTel.value);
		if ( (zoneTel.value.length <= 10) &&
		     std_verifierStringDansAlphabet(zoneTel.value, "0123456789"))
		{
		    valeurFormatee = "";
			for (car=0; car<zoneTel.value.length; car++)
			{
				if ((car > 0) && ((car % 2) == 0))
				{
					valeurFormatee = valeurFormatee + separateur;
			    }
			    valeurFormatee = valeurFormatee + zoneTel.value.charAt(car)
			}
			zoneTel.value = valeurFormatee;
		}
	}
}

var globale_SeparateurDate = "/";
var globale_SeparateurHeure = ":";
var CONSTANTE_ALPHABET_NUMERIQUE = "0123456789";

function iwgp_formaterDateSaisie(objetChampDate)
{
	chaine = std_trim(objetChampDate.value);
	longueur = chaine.length;
	moisEnCours = new Date().getMonth() + 1;
	
	if (chaine=='')
	{
		return null; //pas de formatage
	}
	if (!std_verifierStringDansAlphabet(chaine, CONSTANTE_ALPHABET_NUMERIQUE + globale_SeparateurDate))
	{
		return null; //pas de formatage
	}
	
	if (longueur == 2 && chaine.indexOf(globale_SeparateurDate) < 0)
	{
		objetChampDate.value = chaine + globale_SeparateurDate + moisEnCours;
	}
	else if (longueur == 3 && chaine.indexOf(globale_SeparateurDate) < 0)
	{
		objetChampDate.value = chaine.substring(0,2) + globale_SeparateurDate + chaine.substring(2,3);
	}
	else if (longueur == 4 && chaine.indexOf(globale_SeparateurDate) < 0)
	{
		objetChampDate.value = chaine.substring(0,2) + globale_SeparateurDate + chaine.substring(2,4);
	}
	else if (longueur == 6 && chaine.indexOf(globale_SeparateurDate) < 0)
	{
		objetChampDate.value = chaine.substring(0,2) + globale_SeparateurDate + chaine.substring(2,4) + globale_SeparateurDate + chaine.substring(4,6);
	}
	else if (longueur == 8 && chaine.indexOf(globale_SeparateurDate) < 0)
	{
		objetChampDate.value = chaine.substring(0,2) + globale_SeparateurDate + chaine.substring(2,4) + globale_SeparateurDate + chaine.substring(4,8);
	}
	
	//formatage de la date
  	dateCorrigee = std_convertirDateToString(std_convertirStringToDate(objetChampDate.value, globale_FormatDate), globale_codePays);
  	if (dateCorrigee != "")
  	{
  	    objetChampDate.value = dateCorrigee;
  	}
}

var alphabet = "ABCDEFGHIJKLMNOPQRSTUVWXYZ '";
function verifierNom(IdNom,IdTrNomNaissance,IdNomNaissance,IdPrenom)
{
	if (!std_verifierStringDansAlphabet(std_getReference("" + IdNom).value.toUpperCase(), alphabet))
	{
		alert(nomIncorrect);
		std_setFocus(std_getReference(""+IdNom));
		return false;
	}
		
	if (IdTrNomNaissance!=""){
		if (std_getReference(IdTrNomNaissance).style.display == '') 
		{
			if (!std_verifierStringDansAlphabet(std_getReference(IdNomNaissance).value.toUpperCase(), alphabet))
			{
				alert(nomIncorrect);
				std_setFocus(std_getReference(IdNomNaissance));
				return false;
			}
		}
	}
	
	if (!verifierPrenom(std_getReference(IdPrenom).value))
	{
		alert(prenomIncorrect);
		std_setFocus(std_getReference(IdPrenom));
		return false;
	}
	
	return true;
}

function verifierPrenom(prenom)
{
	if (prenom.indexOf('"') != -1 || prenom.indexOf('.') != -1) {
		return false;
	}
	return true;
}

function verifierDate(IdJourNaissance,IdMoisNaissance,IdAnneeNaissance)
{
	if ((std_getReference(IdJourNaissance).value!="") && (std_getReference(IdMoisNaissance).value!="") && (std_getReference(IdAnneeNaissance).value!="")){
		if (!iwgp_verifierDate(std_getReference(IdJourNaissance).value, 
							   std_getReference(IdMoisNaissance).value, 
							   std_getReference(IdAnneeNaissance).value) )
		{
			alert(dateIncorrecte);
			std_setFocus(std_getReference(IdJourNaissance));
			return false;
		}
	}
	
	return true;
}
function verifierEmail(IdEmail)
{
	if (!iwgp_verifierEmail(std_getReference(IdEmail).value))
	{
		alert(emailIncorrect);
		std_setFocus(std_getReference(IdEmail));
		return false;
	}
	
	return true;
}
function verifierChampsObli(IdTitreMLE,IdTitreMME,IdTitreMR,IdTrNomNaissance,IdNomNaissance)
{
	if ( !std_getReference(IdTitreMLE).checked &&
		 !std_getReference(IdTitreMME).checked &&
		 !std_getReference(IdTitreMR).checked )
	{
			alert(civiliteObligatoire);
			std_setFocus(std_getReference(IdTitreMLE));
			return false;
	}
	
	
	if ((std_getReference(IdTrNomNaissance).style.display == '') && std_getReference(IdTitreMME).checked)
	{
		zone = std_getReference(IdNomNaissance);
		if (!std_verifierChampObligatoire_Onglet(zone, msgObligatoire, zone.getAttribute("ONGLET"), nbOnglets))
		{
			return false;
		}
	}

	// les autres champs sont vérifiés en automatique.
	return true;
}


var valeurNumeraire = "0123456789.,'";
function verifierMontant(IdChampATraiter,longueurPartieEntiere,longueurPartieDecimale)
{
	var montant;
	var len;
	var pos;
	if (!std_verifierStringDansAlphabet(std_getReference("" + IdChampATraiter).value, valeurNumeraire))
	{
		alert(montantSaisiErrone);
		std_setFocus(std_getReference(""+IdChampATraiter));
		return false;
	}
	
	montant = std_getReference("" + IdChampATraiter).value.replace(",",".");
	std_getReference("" + IdChampATraiter).value = montant;
	len = montant.length;
	pos = montant.indexOf(".",0);
	
	if (pos >= 0)
	{
	  if (pos > longueurPartieEntiere)
	  {
		 alert("La partie entière est trop grande, elle doit contenir " + longueurPartieEntiere + " chiffres maximum");
		 std_setFocus(std_getReference(""+IdChampATraiter));
		 return false;
	  }
	}
	else
	{
	  // il n'ya pas de .
	  if (len > longueurPartieEntiere)
	  {
		 alert("La partie entière est trop grande, elle doit contenir " + longueurPartieEntiere + " chiffres maximum");
		 std_setFocus(std_getReference(""+IdChampATraiter));
		 return false;      
	   }
	}
	if ((pos >= 0) && ((len - pos - 1) > longueurPartieDecimale))
	{
		if(longueurPartieDecimale==0) {
			alert("Vous devez saisir un nombre entier (sans décimale).");
		}else{
			alert("La partie décimale est trop grande, elle doit contenir " + longueurPartieDecimale + " chiffres décimaux maximum");
		}
		std_setFocus(std_getReference(""+IdChampATraiter));
		return false;
	}
    
	return true;
}

function filtrerChaineComposEe(champ)
{ 
	var i;
	var chaine="";
	var chaine2="";
	var tempo =	std_trim( champ.value );
	if (tempo!="") {
		tempo =	tempo.split("-");
		for (i=0;i<tempo.length;i++){
			if (chaine==""){
				chaine = (tempo[i].substr(0,1)).toUpperCase()  +   tempo[i].substr(1,tempo[i].length -1).toLowerCase();
			}
			else{
				chaine += "-"+(tempo[i].substr(0,1)).toUpperCase()  +   tempo[i].substr(1,tempo[i].length -1).toLowerCase();
			}
		}
	
		tempo =	chaine.split(" ");
		for (i=0;i<tempo.length;i++){
			if (chaine2==""){
				chaine2 = (tempo[i].substr(0,1)).toUpperCase()  +   tempo[i].substr(1,tempo[i].length -1);
			}
			else{
				chaine2 += " "+(tempo[i].substr(0,1)).toUpperCase()  +   tempo[i].substr(1,tempo[i].length -1);
			}
		}
	}
	
	if (chaine2!="") {
		chaine=chaine2;
	}
	if (chaine=="") {
		chaine=(tempo.substr(0,1)).toUpperCase()  +   tempo.substr(1,tempo.length -1).toLowerCase();
	}
	std_getReference(champ.id).value = chaine;
}

function filtrerChiffre(e)
{
	// if aEvent is null, means the Internet Explorer event model,
	// so get window.event.
	var IE5 = false;
	
	if (!e) var e = window.event;
	if (e.keyCode) { IE5= true; code = e.keyCode;}
	else if (e.which) code = e.which ;
	
	//test du code
	if (code < 48 || code > 57)
	{
	if(IE5) e.returnValue = false;
	else e.preventDefault();
	} 
}

function filtrerNombreDecimal(e)
{
	// Vérifier si la touche pressée est un chiffre ou un point
	var IE5 = false;
	
	if (!e) var e = window.event;
	if (e.keyCode) { IE5= true; code = e.keyCode;}
	else if (e.which) code = e.which ;
	
	//test du code
	if ((code < 48 || code > 57) && !(code == 46))
	{
	if(IE5) e.returnValue = false;
	else e.preventDefault();
	} 
}


function filtrerEnter(e)
{
	// Vérifier si la touche pressée est un chiffre ou une virgule ou un point
	var IE5 = false;
	
	if (!e) var e = window.event;
	if (e.keyCode) { IE5= true; code = e.keyCode;}
	else if (e.which) code = e.which ;
	
	//test du code
	if(code == 13)
	{
	if(IE5) e.returnValue = false;
	else e.preventDefault();
	} 
}

var sablier = false;
//Gestion de l'affichage des messages "traitement en cours"
function debutTraitement() {
	if (!sablier) {
		//On fait apparaître le message : "traitement en cours"
		var calque = document.getElementById("idCalqueEnregistrementEnCours");
		if (calque != undefined) {
			//On fait disparaître les combos
	 		hideSelectBoxes();
	 		//On fait apparaître le calque
	 		std_montrerObjet(calque);
		}
	} else {
		if (std_getReference('curseur') != undefined) {
			std_getReference('curseur').style.display = "block";
		}
	}
}
function debutTraitementSablier() {
	sablier = true;
}

function finTraitement() {
	//On fait disparaitre le message : "traitement en cours"
    globale_enregistrementEnCours = false;
    calque = std_getReference("idCalqueEnregistrementEnCours");
    if (calque != undefined) {
    	//On cache le calque
	    std_cacherObjet(calque);
	    //On fait réapparaitre les combos
		displaySelectBoxes();
	}
	
	//on réinitialise le curseur
	if (std_getReference('curseur') != undefined) {
		std_getReference('curseur').style.display = "none";
	}
	sablier = false;
}
/**
 * Cache toutes les combos
 */
function hideSelectBoxes() {
	var mesSelect = document.getElementsByTagName("select");
	for(var i = 0; i < mesSelect.length; i++) {
		mesSelect[i].style.visibility="hidden";
	}
}

/**
 * Fait réapparaitre les combo
 */
function displaySelectBoxes() {
	var mesSelect = document.getElementsByTagName("select");
	for(var i = 0; i < mesSelect.length; i++) {
		mesSelect[i].style.visibility="visible";
	}
}

//Gestion des onglets
function afficherOnglet(numOnglet) {
	var continuer = true;
	//Regardes si la fonction autoriserOnglet(numOnglet) est définie dans la page
    if (typeof window.autoriserOnglet == 'function') {
	   continuer = autoriserOnglet(numOnglet);
	}
	//On affiche l'onglet seulement si on y est autorisé
	if (continuer) {
		var tabOnglets = new Array();
		var divDeLaPage = document.getElementsByTagName("div");
		var j = 0;
		//On récupère les noms des onglets de la page
		for (var i=0; i<divDeLaPage.length; i++) {
			if (((divDeLaPage[i].id.indexOf("Onglet") != -1) 
					|| (divDeLaPage[i].id.indexOf("onglet") != -1))
					&& (divDeLaPage[i].id.indexOf("onglets") == -1)) {
				tabOnglets[j] = divDeLaPage[i].id;
				j++;
			}
		}
		//Affichage de la page souhaitée
		for (var k=0; k<tabOnglets.length; k++) {
			if (k == numOnglet) { //On affiche l'onglet
				std_getReference(tabOnglets[numOnglet]).style.display = "block";
			} else { //On cache les autres onglets
				std_getReference(tabOnglets[k]).style.display = "none";
			}
		}
		//Mise en gras du titre
		var tabTitresOnglets = std_getReference("onglets").getElementsByTagName("span");
		for (var k=0; k<tabTitresOnglets.length; k++) {
			if (tabTitresOnglets[k].id == numOnglet) {
				tabTitresOnglets[k].style.fontWeight = "bold";
			} else {
				tabTitresOnglets[k].style.fontWeight = "normal";
			}
		}
	}
	//Regardes si la fonction actionApresChargementOnglet(numOnglet) est définie dans la page
    if (typeof window.actionApresChargementOnglet == 'function') {
	    actionApresChargementOnglet(numOnglet);
    }
}

//Gestion des DHtmlXWindows
function ouvrirPopUp_dhtmlx_Positionnee(ident, titre, url, largeur, hauteur, posX, posY, modale, deplacable, cacherEnTete) {
	return ouvrirPopUp_dhtmlx_multi_param(ident, titre, url, largeur, hauteur, posX, posY, modale, false, deplacable, cacherEnTete);
}

function ouvrirPopUp_dhtmlx_Centree(ident, titre, url, largeur, hauteur, modale, deplacable, cacherEnTete) {
	return ouvrirPopUp_dhtmlx_multi_param(ident, titre, url, largeur, hauteur, 0, 0, modale, true, deplacable, cacherEnTete);
}

function ouvrirPopUp_dhtmlx_multi_param(ident, titre, url, largeur, hauteur, posX, posY, modale, centrer, deplacable, cacherEnTete) {
	if (!posX) {
		posX = 0;
	}
	if (!posY) {
		posY = 0;
	}
	if (window.parent.grpWindows) {
		if (window.parent.grpWindows.window("win_"+ident)) {
			window.parent.grpWindows.window("win_"+ident).close();
		}
		
		var fenetre = window.parent.grpWindows.createWindow("win_"+ident, posX, posY, largeur + 20, hauteur + 30);
		fenetre.attachEvent("onClose", verifierFermeture);
	} else {
		if (grpWindows.window("win_"+ident)) {
		    grpWindows.window("win_"+ident).close();
		}
		
		var fenetre = grpWindows.createWindow("win_"+ident, posX, posY, largeur + 20, hauteur + 30);
	    fenetre.attachEvent("onClose", verifierFermeture);
	}
	
	//Empêche le redimentionnement
	fenetre.denyResize();
    //fenetre.button("close").disable();
    //fenetre.button("close").hide();
    
    //Par défaut, toutes les fenêtres sont modales
    if (modale && modale == false) {
        fenetre.setModal(false);
    } else {
    	fenetre.setModal(true);
    }
    //Par défaut on cache les boutons de redimentionnements
    fenetre.button("park").hide();
    fenetre.button("minmax1").hide();
    fenetre.button("minmax2").hide();
    
    if (centrer && centrer == true) {
        fenetre.center();
    }
    if (cacherEnTete && cacherEnTete == true) {
        fenetre.hideHeader();
    }
    if (deplacable && deplacable == false) {
    	fenetre.denyMove();
    }
	if (!titre) {
        titre = "";
    }
    fenetre.setText(titre);
    fenetre.clearIcon(); //Cache l'icone en haut à gauche
	
    fenetre.attachURL(url);
    return fenetre;
}

var fermerSansVerification = false;
function verifierFermeture(win) {
	var continuer = true;
	if (fermerSansVerification) {
		//Regardes si la fonction autoriserFermeture() est définie dans la page
	    if (typeof window.autoriserFermeture == 'function') {
	    	//GROS PB - A VOIR - Fonctions lancée plusieurs fois, pb de suppression de fenêtres...
	    	continuer = autoriserFermeture(win.getId().substr(4, win.getId().length));
	 	}
	}
	fermerSansVerification = false;
    return continuer;
}

function fermerPopUp_dhtmlx(identifiant, nePasFaireLaVerification) {
	if (nePasFaireLaVerification && nePasFaireLaVerification == true) {
		fermerSansVerification = true;
	}
	if (window.parent && window.parent.grpWindows) {
		if (window.parent.grpWindows.window("win_"+identifiant)) {
			window.parent.grpWindows.window("win_"+identifiant).close();
		} //la fenêtre n'existe pas
	} else {
		if (grpWindows) {
			grpWindows.window("win_"+identifiant).close();
		}
	}
}
//Renvoie null si la fenêtre n'existe pas
function recupererSousFenetreDHtmlXWindows(identifiant) {
	if (window.parent.grpWindows) {
		if (window.parent.grpWindows.window("win_" + identifiant) != null) {
			return window.parent.grpWindows.window("win_" + identifiant)._frame.contentWindow;
		}
	} else if (grpWindows.window("win_" + identifiant) != null) {
		return grpWindows.window("win_" + identifiant)._frame.contentWindow;
	}
	return null;
}
