/*--------------------------------------------------------------------------------------
 Description du fichier : Le présent fichier est conçu pour centenir les fonctions
                          qui seront utilisées dans plusieurs pages différentes de
						  la gestion du tournoi atome de Dupuy.
						  
 Concepteur de la page JAVASOURCE : J-F Marcotte
 Modificateur : Jonathan CLAVEAU
 
 Date de début : 10 Décembre 2004
 Date de Fin :  
--------------------------------------------------------------------------------------*/




/***************************************************************************************
		Fonction qui vérifie la longueur minimum d'un champs quelquonque
***************************************************************************************/
function VerifLongMin (Champs,Min)
{
  SaisieLg = Champs.length;
  if (SaisieLg < parseInt(Min))
     {
	    return (false);
	 }
  else
     {
	    return (true);
	 }		
} // Fin de la fonction « VerifLongMin »		
		
		


/***************************************************************************************
		Fonction qui vérifie la longueur maximal d'un champs quelquonque
***************************************************************************************/
function VerifLongMax (Champs,Max)
{
  SaisieLg = Champs.length;
  if (SaisieLg > parseInt(Max))
     {
	    return (false);
	 }
  else
     {
	    return (true);
	 }		
} // Fin de la fonction « VerifLongMin »





/***************************************************************************************
	  Fonction qui vérifie la longueur minimum  et  maximum d'un champs quelquonque
***************************************************************************************/
function VerifLongMinMax (Champs,Min,Max)
{
  SaisieLg = Champs.length;
  if (SaisieLg >= parseInt(Min) && SaisieLg <= parseInt(Max))
     {
	    return (true);
	 }
  else
     {
	    return (false);
	 }		
} // Fin de la fonction « VerifLongMinMax »		
		
		



/***************************************************************************************
	  Fonction qui vérifie que le champs contient seulement des lettres
***************************************************************************************/
function VerifLettreOnly (Champs)
{
  SaisieLg = Champs.length;
  for (i = 0; i <= parseInt(SaisieLg)-1; i++)
	  {
		if ((parseInt(Champs.charAt(i)))) // Si la transfomation de la « chaine » est nombre n'est pas un nombre
		   {
			 return(false);
		   }
			
	  }
	  
  return(true); 
		
} // Fin de la fonction « VerifLettreOnly »		
		
		
		
		
		
/***************************************************************************************
	  Fonction qui vérifie que le champs contient seulement des chiffres
	  
	  ATTENTION : POSSIBILITÉ QUE CA CHIE, CETTE PROCEDURE N'A PAS ÉTÉ VÉRIFIER
	  --> NON TESTÉ
	  --> NON VÉRIFIER
***************************************************************************************/
function VerifChiffreOnly (Champs)
{
  SaisieLg = Champs.length;
  for (i = 0; i <= parseInt(SaisieLg) - 1; i++)
	  {
		if (isNaN((parseInt(Champs.charAt(i)))))
		   {
		     return(false);
		   }
			
	  }
	  
  return(true);
		
} // Fin de la fonction « VerifLettreOnly »		





/***************************************************************************************
  Cette fonction retour le champs texte quel à reçu après avoir vérifier s'il elle
  contenait seulement des chiffres et un point valide. Dans le cas ou une virgule 
  serait employer pour la séparation des chiffres, elle corrige pour un point. Si 
  la virgule est à la fin, le retour prend comme valeur « Erreur » et aussi s'il y a
  plusieurs virgules ou il y a autre chose que des chiffre.
***************************************************************************************/
function VerifUnPoint (Champs)
{
  SaisieLg = Champs.length;
 // PosPnt = new Array();
  NbVirgul = 0;
  NbPoint = 0;
  for (i = 0; i <= parseInt(SaisieLg); i++)
	  {
		if ((Champs.charAt(i) == ',')) // Si la transfomation de la « chaine » est nombre n'est pas un nombre
		   {
			 NbVirgul++;
		   }
		else
		  if (Champs.charAt(i) == '.')
		    {
			  NbPoint++;
			}
	  }
  if (NbVirgul > 1 || NbPoint > 1)
     {
	   return("Erreur");
	 }
  else
     if (NbVirgul == 1 && NbPoint == 0)
	    {
		  if (Champs.charAt(SaisieLg - 1) != ',')
		     {
		       ChampsSp = Champs.split(',');
		       if ( (VerifChiffreOnly (ChampsSp[0]) ) && ( VerifChiffreOnly (ChampsSp[1]) )  )
			      {
				    ChampsFin = ChampsSp[0] + '.' + ChampsSp[1];
				    return(ChampsFin);
				  }
				else
				  {
				    return("Erreur");
				  }
			 }
		   else
		     {
			   return("Erreur");
			 }
		}
	 else
	    {
		  if (NbPoint == 1 && NbVirgul == 0)
		    {
			  if (Champs.charAt(SaisieLg - 1) != '.')
		       {
		         ChampsSp = Champs.split('.');
		         if ( (VerifChiffreOnly (ChampsSp[0]) ) && ( VerifChiffreOnly (ChampsSp[1]) )  )
			        {
				      ChampsFin = ChampsSp[0] + '.' + ChampsSp[1];
				      return(ChampsFin);
				    }
				 else
				   {
				     return("Erreur");
				   }
			   }
		      else
		       {
			     return("Erreur");
			   }
			}
		  else
		    if (NbVirgul == 0 && NbPoint == 0)
		       {
			     if (VerifChiffreOnly (Champs))
			        {
				      return(Champs);
				    }
				 else
				    {
				      return("Erreur");
				    }
			   }
		     
		}
} // Fin de la fonction « VerifUnPoint »




/***************************************************************************************
  Fonction qui vérifie une date de ce format : jj-mm-aaaa
***************************************************************************************/
function VerifDate (ChampsDate)
{
  if (VerifLongMinMax (ChampsDate,10,10))
     {
	   for (i = 0; i <= 10; i++)
	 	   {
			  if (i == 2 || i == 5)
			     {
				   if (ChampsDate.charAt(i) != '-')
				      {
						return(false);
					  }
				 }
			  else
			     {
			       if (ChampsDate.charAt(i) >= 0 && ChampsDate.charAt(i) <= 9)
				      {
					    ;
					  }
				   else  
					  {
			 			return(false);
					  }
					
				 }
		   }
	   return(true);
	 }
  else
     {
	   return(false);
	 }
 
}

/***************************************************************************************
  Fonction qui vérifie une date de ce format : jj-mm-aaaa
***************************************************************************************/
function IndentifLangueNavig()
{
	
  var Lg;

  if (navigator.language)
     { 
       Lg = navigator.language;
  	   return (Lg.substring(0,2));
     }
  else 
     {
       if (navigator.userLanguage)
          { 
            Lg = navigator.userLanguage;
            return (Lg.substring(0,2));
          }
       else
          { 
            return (0)
          }
     }
}