// Fonction qui change dynamiquement la class d'un DIV
function ChangeClass(DivID,NewDivCLASS) { document.getElementById(DivID).className=NewDivCLASS; }

// Fonction qui affiche ou désaffiche un DIV
function SwitchDisplay(DivID)
{
  myelement=document.getElementById(DivID);
  if ( myelement.style.display=='none' ) { myelement.style.display='block'; } else { myelement.style.display='none'; }
}

// Fonction qui alterne un DIV entre 2 classes
function SwitchClass(DivID,ClassOff,ClassOn)
{
  myelement=document.getElementById(DivID);
  if ( myelement.className==ClassOff ) { myelement.className=ClassOn; } else { myelement.className=ClassOff; }
}

// Check que seulement des chiffres peuvent être saisis
function DigitOnly(objet)
{
	reg = new RegExp('[^0-9]+','g');
	if(reg.test(objet.value))
	{
		objet.value = objet.value.replace(/[^0-9]+/,'');
	}
}

// Check que seulement des chiffres avec virgule peuvent être saisis
function CalculatriceDigitOnly(objet)
{
	reg = new RegExp('[^0-9.]+','g');
	if(reg.test(objet.value))
	{
		objet.value = objet.value.replace(/[^0-9.]+/,'');
	}
}

// Indique si une adresse e-mail est valide (renvoie vrai ou faux)
function IsMail(email)
{
 return(/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(email));
}

// Fonction qui dit si un mot de passe est valide (renvoie le code erreur (<0 si faux) sinon renvoie 1)
function IsPassword(password)
{
 // Teste si le mot de passe contient 7 caractères (renvoie -1 si faux)
 if ( password.length<7 ) { return(-1); }
 
 // Teste si le mot de passe contient au moins une majuscule (renvoie -2 si faux)
 if ( password.search("[A-Z]")==-1 ) { return(-2); }

 // Teste si le mot de passe contient au moins une minuscule (renvoie -3 si faux)
 if ( password.search("[a-z]")==-1 ) { return(-3); }
 
 // Teste si le mot de passe contient au moins un chiffre (renvoie -4 si faux)
 if ( password.search("[0-9]")==-1 ) { return(-4); }
 
 return(1);
}

// Fonction qui gère un input formulaire d'un mot de passe afin de le valider à l'affichage
function ValidatePassword(tag1)
{
  var motdepasse1=tag1.value; code_erreur=IsPassword(motdepasse1);
  
  // On regarde si le mot de passe fait au moins 7 caractères
  if ( code_erreur==-1 )
  { alert("Le mot de passe doit contenir au moins 7 caractères."); tag1.focus(); return(-1); }
  
  // on regarde si le mot de passe contient au moins une majuscule
  if ( code_erreur==-2 )
  { alert("Le mot de passe doit contenir au moins une majuscule [A-Z]."); tag1.focus(); return(-2); }
  
  // on regarde si le mot de passe contient au moins une minuscule
  if ( code_erreur==-3 )
  { alert("Le mot de passe doit contenir au moins une minuscule [a-z]."); tag1.focus(); return(-3); }
  
  // on regarde si le mot de passe contient au moins un chiffre
  if ( code_erreur==-4 )
  { alert("Le mot de passe doit contenir au moins un chiffre [0-9]."); tag1.focus(); return(-4); }
  
  return(1);
}

// Fonction qui affiche une image dans un popup de dimensions fixes et sans options
function PopupImage(img,titre)
{
 w=window.open("",'','width=200,height=200,toolbar=no,scrollbars=no,resizable=no'); 
 w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE></HEAD>"); 
 w.document.write("<SCRIPT language=javascript>function checksize() { if (document.images[0].complete) { window.resizeTo(document.images.limage.width+20,document.images.limage.height+70); window.focus();} else { setTimeout('checksize()',250) } }</"+"SCRIPT>"); 
 w.document.write("<BODY onload='checksize()' onblur='window.close()' onclick='window.close()' leftMargin=0 topMargin=0 marginwidth=0 marginheight=0>");
 w.document.write("<TABLE width='100%' border='0' cellspacing='0' cellpadding='0' height='100%'><TR>");
 w.document.write("<TD valign='middle' align='center'><IMG name='limage' src='"+img+"' border=0>"); 
 w.document.write("</TD></TR></TABLE>");
 w.document.write("</BODY></HTML>"); 
 w.document.close(); 
}

// Fonction qui affiche une image dans un popup de dimensions fixes et avec options
function PopupImageOption(img,titre)
{
 w=window.open("",'','width=200,height=200,toolbar=no,scrollbars=no,resizable=no'); 
 w.document.write("<HTML><HEAD><TITLE>"+titre+"</TITLE></HEAD>"); 
 w.document.write("<SCRIPT language=javascript>function checksize() { if (document.images[0].complete) { window.resizeTo(document.images.limage.width+20,document.images.limage.height+150); window.focus();} else { setTimeout('checksize()',250) } }</"+"SCRIPT>"); 
 w.document.write("<BODY onload='checksize()' leftMargin=0 topMargin=0 marginwidth=0 marginheight=0>");
 w.document.write("<TABLE width='100%' border='0' cellspacing='0' cellpadding='0' height='100%'><TR>");
 w.document.write("<TD valign='middle' align='center'><IMG name='limage' src='"+img+"' border=0>"); 
 w.document.write("</TD></TR><TR><TD ALIGN='center'><input type='button' onclick='window.close();' value='Fermer' /></TD></TR></TABLE>");
 w.document.write("</BODY></HTML>"); 
 w.document.close(); 
}

// Fonction qui ouvre une page spécifique dans une nouvelle fenêtre fixe
function OpenPopup(adresse)
{
 mafenetre = window.open(adresse,"","width=800,height=650,scrollbars=yes,resizable=no");
 mafenetre.focus();
}

// Ferme un pop up
function ClosePopup() { window.close(); }

// Fonction de stockage des scripts à charger 
FuncOL = new Array(); 
function StkFunc(Obj)
{ 
    FuncOL[FuncOL.length] = Obj; 
} 
     
// Execution des scripts au chargement de la page 
window.onload = function()
{ 
    for(i=0; i<FuncOL.length; i++) 
        {FuncOL[i]();} 
}