//-----------
// CheckBox
//-----------

// Vérifie qu'une case au moins est cochée

// obj : objet checkbox
// nb  : nb de cases
// lib : message d'erreur à afficher


  // Message d'avertissement de fin de session
/*
 function AlertTimeout1(tps)
 {
	var temps;
	tempsrestant = tps;
	var today = new Date();
	alert("\n" + today.toLocaleString()+"\nAttention, veuillez recharger une page de l'application.\nFaute d'action de votre part, votre connexion sécurisée sera interrompue dans "+tempsrestant+" minutes.");
	return;
 }
 setTimeout("AlertTimeout1(<%=Round(20*Cint(session.Timeout)/100)%>)",<%=Round(80*Cint(session.Timeout)/100)*1000*60%>)
*/


function verifCheck(obj, nb, lib)
{
	var i;
	var msg = "";
	for (i = 0; i<nb; i++)
	{
		if (obj[i].checked)
			return true;
	}
	msg = lib;
	if (msg == "")
		alert ("Vous devez cocher une case.");
	else
		alert (msg);
	return false;
}

function verifOnecheck(obj, nb, lib)
{
	var i;
	var n=0;
	var msg = "";
	for (i = 0; i<nb; i++)
	{
		if (obj[i].checked)
			n++;
	}
	
	if(n==1 || n==0)
	{
		return true;
	}
	else
	{
		msg = lib;
		if (msg == "")
			alert ("Vous ne devez cocher qu'une seule case.");
		else
			alert (msg);
		return false;
	}
}

//-------------
// RadioButton
//-------------

// Vérifie qu'un bouton est coché

function verifRadio(obj, nb, lib)
{
	var i;
	var msg = "";
	for (i = 0; i<nb; i++)
	{
		if (obj[i].checked)
			return true;
	}
	msg = lib;
	if (msg == "")
		alert ("Vous devez cocher un bouton.");
	else
		alert (msg);
	return false;
}

function NotVerifRadio(obj, nb)
{
	var i;
	
	for (i = 0; i<nb; i++)
	{
		if (obj[i].checked)
	return false;
	}
	
	return true;
}

//--------
// SELECT
//--------

// Vérifie qu'une option est sélectionnée
    
function verifOption(obj, lib)
{
	var msg = "";
	msg = lib;
	if (obj[obj.selectedIndex].value == "")
    {
		if (msg == "")
			alert ("Vous devez sélectionner une option dans la liste.");
		else
			alert (msg);
		obj.focus();
		return false;
	}
	else
		return true;
}


//------------
// TEXT
//------------
//Verifie la taille d'un champ

function verifTaille(obj,longueur,msg)
{
if (obj.value.length==longueur)
	{
	return true;
	}
else
	{
	alert(msg);
	obj.focus();	
	return false;
	}
}

function verifAlphaNum(obj,msg)
{
	var str2 = obj.value;
	var alphaChars = "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-";
	var chiffres = "0123456789";
	var lettres = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-";
	var i;
	var numerique = true;
	var alphabetique = true;
	var resultat = true;

	for (i=str2.length;i--;) 
	{	 
		if (alphaChars.indexOf(str2.substr(i,1)) < 0)
		{	
			obj.focus();
			resultat = false;
   		} 
    }
    if (resultat == true)
    {
		resultat = false;
		for (i=str2.length;i--;) 
		{	 
			if (chiffres.indexOf(str2.substr(i,1)) < 0)
			{						
				numerique = false;	
   			} 
   			if (lettres.indexOf(str2.substr(i,1)) < 0)
			{						
				alphabetique = false;	
   			} 
		}
		if(numerique == false &&  alphabetique == false)
		{
			resultat = true; 
		}
	}
	return resultat;
   
}

// Vérifie que le champ n'est pas vide

function verifNonVide(obj,lib)
{
	var msg = "";
	msg = lib;
	if (obj.value == "")
	{
		if (msg != "")
			alert (msg + ".");
		else
			alert ("Le champ ne peut pas être vide.");
			
		obj.focus();
		return false;
	}
	else
		return true;
}

// VÚrifie que le champ est  vide

function verifVide(obj,lib)
{
	var msg = "";
	msg = lib;
	if (obj.value != "")
	{
		if (msg != "")
			alert (msg + ".");
		else
			alert ("Le champ doit être vide.");
			
		obj.focus();
		return false;
	}
	else
		return true;
}


//verifie que le champ est non nul

function verifNonNul(obj,lib)
{
	var msg = "";
	msg = lib;
	if (obj.value == 0)
	{
		if (msg != "")
			alert (msg + ".");
		else
			alert ("Le champ ne peut pas être nul.");
			
		obj.focus();
		return false;
	}
	else
		return true;
}



// Vérifie que le champ ne contient pas que des espaces

function verifBlancs(obj, msg)
{
   var valChamp = obj.value;
   for(var i=0 ; i<valChamp.length ; i++)
   {
	var carac=valChamp.substring(i,i+1);
	if(carac!=' '){
	  return true;
	}
  }
  if (msg == "")
		alert("Le champs ne contient que des espaces");
  else 
		alert (msg);
				
  return false;  
}

// verifie si le champ est bien une adresse elctronique de la forme ex: nom@domain.com

function fnValiderEmail(obj)
{
	//verifier le format du email a la saisie avant la validation
    var test = false;
    reg=/^.+\@.+\..+$/;
    var email = obj.value;
	if (email != "")
    {
		if (!reg.test(email))
		{
		    alert("Veuillez saisir l'adresse Email au format adéquat, ex: nom@domain.com ");	    
		    obj.focus();
		    return;
		}
    }
    
}

// Vérifie que le champ est une adresse électronique (un seul @)

function verifEmail(obj, msg)
{
   var valChamp = obj.value;
   var compteur;
   
   compteur = 0;
   
   for(var i=0 ; i<valChamp.length ; i++)
   {
	var carac=valChamp.substring(i,i+1);
	if (carac=='@'){
	  compteur++;
	}
  }
  
  if (compteur == 1) return true;
  
  
  if (msg == "")
		alert("Le champs n'est pas une adresse électronique");
  else 
		alert (msg);

  obj.focus();				
  return false;  
}


//verifie que le champ ets un entier
function verifNumSansVide(obj, lib)
{
	var i, caractere, aBool, code;
	var chiffre = new Array("0","1","2","3","4","5","6","7","8","9","-",".");
		
	if (obj.value.length!=0)
	{
		for(i=0;i<obj.value.length;i++) 
		{
			caractere = obj.value.charAt(i);
			code = obj.value.charCodeAt(i);
	
			aBool = false;
			
			for(j=0;j<chiffre.length;j++) 
			{
				if ((caractere == chiffre[j]))
				{
					aBool=true;
				}
			}
			
			if (!aBool) 
			{
				alert("Vous devez saisir un entier numérique.");
				obj.focus();
				return false;
			}
		}
		return true;
	}
	else return true;
}






// Vérifie que le champ est bien numérique

function verifNumber (objnum, msg)
{
	var num=objnum.value;
	num=remplaceBlanc(num,'');
	
	if (num == '0')
		return true;
		
    if (num.substring(0,1)=='0')
    {
		num=num.substring(1,num.length);
	}
   if (num.length<1 || isNaN(num))
   {
		objnum.focus();
		if (msg == "")
			alert ("Le champ doit être numérique.");
		else
			alert (msg);
		return false;
	}
	if (num<0)
	{
		objnum.focus();
		if(msg=="")
			alert("Le champ doit être un entier positif.");
		else
			alert(msg);
		return false;
	}
	return true;
}

//verifie que le champ ets un entier
function verifNum(obj, lib)
{
	var i, caractere, aBool, code;
	var chiffre = new Array("0","1","2","3","4","5","6","7","8","9");
		
	if (obj.value.length!=0)
	{
		for(i=0;i<obj.value.length;i++) 
		{
			caractere = obj.value.charAt(i);
			code = obj.value.charCodeAt(i);
	
			aBool = false;
			
			for(j=0;j<chiffre.length;j++) 
			{
				if ((caractere == chiffre[j]))
				{
					aBool=true;
				}
			}
			
			if (!aBool) 
			{
				if (lib == "")
					alert("Vous devez saisir un entier numérique.");
				else
					alert(lib);
					
				obj.focus();
				return false;
			}
		}
		return true;
	}
	else return true;
}

// Vérifie que la date est bien une date valide


// objjour : zone texte jour
// objmois : zone texte mois
// objannee : zone texte annee
// msg : message d'erreur

function verifDate(objjour, objmois, objannee, msg)
{

	var j=objjour.value;
	var m=objmois.value;
	var a=objannee.value;
	var date=new Date();
	var s;
	if (navigator.appName == "Netscape")
		s = 1900+eval(date.getYear());
	else
		s = eval(date.getYear());
		
	if(eval(a) > s)
	{
		objannee.focus();
		alert("L'année est invalide");
		return false;
	}

	j=remplaceBlanc(j,'');
	m=remplaceBlanc(m,'');
	a=remplaceBlanc(a,'');

	err=0;
   
   if (j.substring(0,1)=='0') {j=j.substring(1,j.length);};
   if (m.substring(0,1)=='0') {m=m.substring(1,m.length);};
   

   if (j.length<1 || m.length<1 || a.length<1 )
   {
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
	if(isNaN(j) || isNaN(m) || isNaN(a) )
	{
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}


   if (a=="0")
   {
	objannee.focus();
	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
  
   var jour = parseInt(j);
   var mois = parseInt(m);
   var annee = parseInt(a);
     
  
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    };
   
   if (mois<1 || mois>12)
   {
		err = 1;
		
		objmois.focus();
	}
	
	if (jour<1 || jour>31)
	{
		err = 2;
		objjour.focus();
	}

   if (mois==4 || mois==6 || mois==9 || mois==11) 
   {
      if (jour==31)
      {
		err=4;
		objjour.focus();
	  }
   }
   
   if (mois==2)
   {
     var g=parseInt(annee/4)
     if (isNaN(g))
     {
		err=5;
		objjour.focus();
	 }
     if (jour>29)
     {
      err=6;
      objjour.focus();
     }
     if (jour==29 && (!isBisextile(annee)))
     {
		err=7;
		objjour.focus();
	 }
   }
   
   if (err>0)
   {
   	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
   return true;
}

// Vérifie que la date est bien une date valide

// objmois : zone texte mois
// objannee : zone texte annee
// msg : message d'erreur

function verifDateEtape3(objmois, objannee, msg)
{
	var m=objmois.value;
	var a=objannee.value;
	
	m=remplaceBlanc(m,'');
	a=remplaceBlanc(a,'');

	err=0;
 
   if (m.substring(0,1)=='0') {m=m.substring(1,m.length);};
   

   if (m.length<1 || a.length<1 )
   {
		objmois.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
	if( isNaN(m) || isNaN(a) )
	{
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}


   if (a=="0")
   {
	objannee.focus();
	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
  
   
   var mois = parseInt(m);
   var annee = parseInt(a);
     
  
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    };
   
   if (mois<1 || mois>12)
	{
		err = 1;
		
		objmois.focus();
	}
   
   if (mois==2)
   {
     var g=parseInt(annee/4)
     if (isNaN(g))
		{
		err=5;
		objjour.focus();
		}
       
   }
   
   if (err>0)
   {
   	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
   return true;
}


// Vérifie que l'année est une année valide

// objannee : zone texte annee
// msg : message d'erreur

function verifAnnee(objannee, msg)
{
	var a=objannee.value;
	a=remplaceBlanc(a,'');

	err=0;
 
   if (a < 1880)
	{
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}		
  
   if (isNaN(a) || a.length<4 || a=="0")
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
   var annee = parseInt(a);
      
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    }
   
   return true;
}


//verifie que la date du jour est anterieure à la date testee

function verifDateAnte(objjour,objmois,objannee,msg)
{
	var j=objjour.value;
	//var d=objjour.value;
	var m=objmois.value;
	var a=objannee.value;
	var date=new Date();
	var sc;
	var mc;
	var dc;
	
	j=remplaceBlanc(j,'');
	m=remplaceBlanc(m,'');
	a=remplaceBlanc(a,'');

	err=0;
   
   if (j.substring(0,1)=='0') {j=j.substring(1,j.length);};
   if (m.substring(0,1)=='0') {m=m.substring(1,m.length);};
   

   if (j.length<1 || m.length<1 || a.length<1 )
   {
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
	if(isNaN(j) || isNaN(m) || isNaN(a) )
	{
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}


   if (a=="0")
   {
	objannee.focus();
	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
  
   var jour = parseInt(j);
   var mois = parseInt(m);
   var annee = parseInt(a);
     
  
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    };
   
   if (mois<1 || mois>12)
   {
		err = 1;
		
		objmois.focus();
	}
	
	if (jour<1 || jour>31)
	{
		err = 2;
		objjour.focus();
	}

   if (mois==4 || mois==6 || mois==9 || mois==11) 
   {
      if (jour==31)
      {
		err=4;
		objjour.focus();
	  }
   }
   
   if (mois==2)
   {
     var g=parseInt(annee/4)
     if (isNaN(g))
     {
		err=5;
		objjour.focus();
	 }
     if (jour>29)
     {
      err=6;
      objjour.focus();
     }
     if (jour==29 && (!isBisextile(annee)))
     {
		err=7;
		objjour.focus();
	 }
   }
   
   if (err>0)
   {
   	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
 //  return true;
   
	if (navigator.appName == "Netscape")
		sc = 1900+eval(date.getYear());
	else
		sc = eval(date.getYear());
		
	mc=date.getMonth();
	dc=date.getDate();
	
	if(eval(a) < sc)
	{
		objannee.focus();
		alert("La date est invalide");
		return false;
		}
	else
	{
		if(eval(a) == sc)
		{
			
			if(  (eval(m) < mc+1))
			{
					objmois.focus();
					alert("La date est invalide");
					return false;
			} 
			else
			{
				 if( eval(m)==mc+1 && eval(j) < dc+1)
					{
					objjour.focus();
					alert("La date est invalide");
					return false;
					}
			}
		}
	}
	
	return true;
}
// vérifie que la date en cours est postérieure à la date testée
function verifDatePoste(objjour,objmois,objannee,msg)
{
	var j=objjour.value;
	//var d=objjour.value;
	var m=objmois.value;
	var a=objannee.value;
	var date=new Date();
	var sc;
	var mc;
	var dc;
	
	j=remplaceBlanc(j,'');
	m=remplaceBlanc(m,'');
	a=remplaceBlanc(a,'');

	err=0;
   
   if (j.substring(0,1)=='0') {j=j.substring(1,j.length);};
   if (m.substring(0,1)=='0') {m=m.substring(1,m.length);};
   
    if (j.length<1 || m.length<1 || a.length<1 )
   {
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
	if(isNaN(j) || isNaN(m) || isNaN(a) )
	{
		objjour.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}


   if (a=="0")
   {
	objannee.focus();
	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
  
   var jour = parseInt(j);
   var mois = parseInt(m);
   var annee = parseInt(a);
     
  
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    };
   
   if (mois<1 || mois>12)
   {
		err = 1;
		
		objmois.focus();
	}
	
	if (jour<1 || jour>31)
	{
		err = 2;
		objjour.focus();
	}

   if (mois==4 || mois==6 || mois==9 || mois==11) 
   {
      if (jour==31)
      {
		err=4;
		objjour.focus();
	  }
   }
   
   if (mois==2)
   {
     var g=parseInt(annee/4)
     if (isNaN(g))
     {
		err=5;
		objjour.focus();
	 }
     if (jour>29)
     {
      err=6;
      objjour.focus();
     }
     if (jour==29 && (!isBisextile(annee)))
     {
		err=7;
		objjour.focus();
	 }
   }
   
   if (err>0)
   {
   	if (msg == "")
		alert ("La date est invalide.");
	else
		alert (msg);
    return false;
   } 
  
  	if (navigator.appName == "Netscape")
		sc = 1900+eval(date.getYear());
	else
		sc = eval(date.getYear());
		
	mc=date.getMonth();
	dc=date.getDate();
	
	if(eval(a) < sc)
	{
		objannee.focus();
		alert("La date est invalide");
		return false;
		}
	else
	{
		if(eval(a) == sc)
		{
			
			if(  ( eval(m)<mc ))
			{
					objmois.focus();
					alert("La date est invalide");
					return false;
			} 
			else
			{
				 if( eval(m)==mc && eval(j) < dc)
					{
					objjour.focus();
					alert("La date est invalide");
					return false;
					}
					else
						return true;
			}
		}
	}
	
	return true;
   
   
}


//verifie que l'année en cours est posterieure à l'année testee
function verifAnPost(objannee,msg)
{
	var a=objannee.value;
	var date=new Date();
	a=remplaceBlanc(a,'');
	
	
	if ( a.length<1 || isNaN(a) || a=="0" )
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
	}
   
   var annee = parseInt(a);
   
   if (annee==0)
   {
		objannee.focus();
		if (msg == "")
			alert ("La date est invalide.");
		else
			alert (msg);
		return false;
   
    };
   
   var sc;
   
    if (navigator.appName == "Netscape")
		sc = 1900+eval(date.getYear());
	else
		sc = eval(date.getYear());
	
	if(eval(a) > sc)
	{
		objannee.focus();
		alert("La date est invalide");
		return false;
	}
	
	return true;
}

//verifie que l'enfat a moins de 30 ans
function verifMoins30(objjour,objmois,objannee,objjeffet,objmeffet,objaeffet)
{
var j=parseInt(objjour.value);
var m=parseInt(objmois.value);
var a=parseInt(objannee.value);
//var jeffet=parseInt(objjeffet.value);
//var meffet=parseInt(objmeffet.value);
//var aeffet=parseInt(objaeffet.value);

var jeffet=(objjeffet.value);
var meffet=(objmeffet.value);
var aeffet=(objaeffet.value);

	if(aeffet-a > 30)
	{
		objannee.focus();
		alert("Votre enfant doit avoir moins de 30 ans.");
		return false;
	}
	else
	{
		if(aeffet-a == 30)
		{
			if(meffet>m)
			{
				objmois.focus();
				alert("Votre enfant doit avoir moins de 30 ans.");
				return false;
			}
			else
			{
				
				if (meffet==m)
				{
				
				
					if(jeffet>j)
					{
						objjour.focus();
						alert("Votre enfant doit avoir moins de 30 ans.");
						return false;
					}
				}
			}
		}
	}
		
	return true;
}


// Vérifie que le champ est bien au format numéro de téléphone

function verifTel(obj, msg) 
{
	var str2 = obj.value;
	var str1="()0123456789. -";
	var i;
   
	for (i=str2.length;i--;) 
	{	 
		if (str1.indexOf(str2.substr(i,1)) < 0)
		{		
			if (msg != "")
				alert (msg + ".");
			else
				alert ("Le numéro de téléphone comporte des caractères incorrects.");
				
			obj.focus();
			return false;
   		} 
    }
    return true;
}


function verifMme(obj1,obj2,obj3)
{
	if(!obj1[0].checked)
	{
	obj2.className='read';
	obj2.value='';
	obj2.disabled=true;
	obj3.className='read';
	obj3.value='';
	obj3.disabled=true;
	}
	else
	{
	obj2.disabled='write';
	obj2.disabled=false;
	obj3.disabled='write';
	obj3.disabled=false;
	}
}

// Fonctions privées

function isBisextile(annee)
{
   if ((annee/4)!=parseInt(annee/4)) {
	return false;
   } else if ((annee/100)==parseInt(annee/100)) {
	if ((annee/400)==parseInt(annee/400)) {
		return true;
	} else {
		return false;
	}
   } else {
	return true;
   }
}



function remplaceBlanc(texte,nouveau)
{

   while(texte.indexOf(" ")!=-1)
   {
	var pos=texte.indexOf(" ");
	var texte1=texte.substring(0,pos);
	var texte2=texte.substring(pos+1,texte.length);
	texte=texte1+nouveau+texte2;
   };
   
 return texte;
}




function affiche_alerte(message, obj)
{
	var objet;
	re = /<BR>/gi;
	
	if (message !="") 
	{
		message=message.replace(re, "\n");
		alert (message);
	}
	objet = eval (obj);
	objet.focus()
}

//*************************** fonctions d'ouvertures de fenêtres *************************
function openWindow (url,target,w,h)  {
	var attribs;
	attribs = 'width='+w+',height='+h+',resizable=yes,scrollbars=no,menubar=no';
	return window.open(url,target,attribs);
}

function ouvre4(tel_url)
{
window.open(tel_url,"jurintro","toolbar=no,width=485,height=370,directories=no,location=no,status=no,scrollbars=yes,resizable=yes,menubar=no");
}

function ouvre5(tel_url)
{
window.open(tel_url,"tyfis","toolbar=no,width=485,height=370,directories=no,location=no,status=no,scrollbars=yes,resizable=yes,menubar=no");
}

function ouvre6(tel_url)
{
window.open(tel_url,"gepro","toolbar=no,width=485,height=370,directories=no,location=no,status=no,scrollbars=yes,resizable=yes,menubar=no");
}
var popupWin;

function ouvre7(tel_url)
{
	var largeur = screen.width -10;
	var hauteur = screen.height -40;
	var param = 'toolbar=no,directories=no,location=no,width='+largeur+',height='+hauteur+',status=no,scrollbars=yes,resizable=yes,menubar=no,top=0,left=0,screenX=0,screenY=0';
	largeur = screen.width;
	hauteur = screen.height;
	w = window.open(tel_url,"",param);
}

function SPW(url,target,w,h)  {
	var attribs;
	var s;

	s = (arguments.length > 4 && arguments[3]) ? 'yes' : 'no';
	attribs = 'width='+w+',height='+h+',resizable=yes,scrollbars='+s+',menubar=no';
	
	// (re)create window - kill it - show it - will be on top - N4 only
	if (navigator.appName == 'Netscape' && navigator.appVersion.substring(0, 1) == '4' && (popupWin != null && !popupWin.closed)) {
		popupWin = window.open(url,target,attribs);
		popupWin.close();
	} else {
	  popupWin = window.open(url,target,attribs);
	}
	/*return popupWin;*/
}

// fonction permettant d'ouvrire une fenetre info sur un support
function infosup(codeUC,cdApp)
{
	var url = "<%=url_racine%>"+"a-public/2connaitre/2cinfofi/p2c_support.asp?IDFDS="+codeUC+"&IDESP="+cdApp;
	window.open(url,"","status=no,location=no,toolbar=no,directories=no,resizable=yes,scrollbars=yes,width=520,height=450,top=150,left=150");
}

// fonction permettant d'ouvrire une fenetre info sur un contrat
function infoAdrctt(posCtt)
{
	var url = "<%=url_racine%>"+"a-client/transversal/1contrat/1amodifadm/t1adetailAdr.asp?posvectorctt="+posCtt;
	window.open(url,"","status=no,location=no,toolbar=no,directories=no,resizable=yes,scrollbars=yes,width=570,height=270,top=150,left=150");
}

// fonction permettant d'ouvrire une fenetre info sur un contrat
function infoRibctt(posCtt)
{
	var url = "<%=url_racine%>"+"a-client/transversal/1contrat/1amodifadm/t1adetailRib.asp?posvectorctt="+posCtt;
	window.open(url,"","status=no,location=no,toolbar=no,directories=no,resizable=yes,scrollbars=yes,width=570,height=230,top=150,left=150");
}

//**************************************************
//***verifie la prÚsence d'un champ par son indice
//**************************************************
function getIndiceChamp(form,nom) {

  for(i=0;i<form.length;i++)
	{
	if (form.elements[i].name == nom)	
	return 0;
	}
   return -1;
 }
 
 function focusNext(nom,form)
 {
 var i;
 i=getIndiceChamp(form,nom);
 form.elements[i+1].focus();
 }



//*****************************************************************
//***format un nombre en javascript
// ex: formatNumber(nbre a formatter , "facon voulu")
// ex: formatNumber(1565.5896 , "0.00")  ==> 1565.58
// autre ex: formatNumber(1565.5896, ",0.00") ==> 1,565.58
//******************************************************************
 
 // CONSTANTS
  var separator = ",";  //use comma as 000's separator
  var decpoint = ".";  //use period as decimal point
  
   function formatNumber(number, format) 
   {  
    if (number - 0 != number) 
	return null;  //if number is NaN return null
    var useSeparator = format.indexOf(separator) != -1; //use separators in number
    var isNegative = (number < 0);
    number = Math.abs (number);
    
    number = "" + number;  //convert number input to string
    
    // split input value into LHS and RHS using decpoint as divider
    var dec = number.indexOf(decpoint) != -1;
    var nleftEnd = (dec) ? number.substring(0, number.indexOf(".")) : number;
    var nrightEnd = (dec) ? number.substring(number.indexOf(".") + 1) : "";

    // split format string into LHS and RHS using decpoint as divider
    dec = format.indexOf(decpoint) != -1;
    var sleftEnd = (dec) ? format.substring(0, format.indexOf(".")) : format;
    var srightEnd = (dec) ? format.substring(format.indexOf(".") + 1) : "";

    // adjust decimal places by cropping or adding zeros to LHS of number
    if (srightEnd.length < nrightEnd.length) 
    {
      var nextChar = nrightEnd.charAt(srightEnd.length) - 0;
      nrightEnd = nrightEnd.substring(0, srightEnd.length);
      if (nextChar >= 5) nrightEnd = "" + ((nrightEnd - 0) + 1); //round up
      
      while (srightEnd.length > nrightEnd.length) 
      {
        nrightEnd = "0" + nrightEnd;
      }

      if (srightEnd.length < nrightEnd.length) 
      {
        nrightEnd = nrightEnd.substring(1);
        nleftEnd = (nleftEnd - 0) + 1;
      }
	} 
	else
	{
      for (var i=nrightEnd.length; srightEnd.length > nrightEnd.length; i++) 
      {
        if (srightEnd.charAt(i) == "0") nrightEnd += "0"; //append zero to RHS of number
        else break;
      }
    }

    // adjust leading zeros
    while (sleftEnd.length > nleftEnd.length) 
    {
      nleftEnd = "0" + nleftEnd;  //prepend zero to LHS of number
    }

    if (useSeparator) nleftEnd = separate(nleftEnd, separator);  //add separator
    var output = nleftEnd + ((nrightEnd != "") ? "." + nrightEnd : ""); //combine parts
    return output;
  }
  
  // a ne pas utiliser seule. cette fonction est appelée par la fonction formatNumber(number, format)
  
  function separate(input, separator) 
  { // format input using 'separator' to mark 000's
    input = "" + input;
    var output = "";  // initialise output string
    for (var i=0; i < input.length; i++) 
    {
      if (i != 0 && (input.length - i) % 3 == 0) output += separator;
		output += input.charAt(i);
    }
    return output;
  }




function CONTEXTE()
 {
 var agent = navigator.userAgent.toLowerCase();
 this.major = parseInt(navigator.appVersion);
 this.minor = parseFloat(navigator.appVersion);
 this.ns = ((agent.indexOf('mozilla')!=-1) &&
((agent.indexOf('spoofer')==-1) && (agent.indexOf('compatible')==-1)));
 this.ns4 = (this.ns && (this.major>=4));
 this.ie = (agent.indexOf("msie")!=-1);
 this.ie4 = (this.ie && (this.major>=4));
 this.win = (agent.indexOf("win")!=-1);
 this.mac = (agent.indexOf("mac")!=-1);
 }

var doc;

function init()
{
 var le_contexte = new CONTEXTE();
 if (le_contexte.ns4)
 {
 	doc="document";
 }
 else
 if (le_contexte.ie4)
 {
 	doc="document.all";
 }
}

