/* AUTEUR: Mehdi thabet */
/* DATE DE CREATION: 25/04/01 */

// Vérification nombre , elle diffère de isNaN par le fait qu'elle n'accepte pas les "." virgules :

function nbr_entier(carac_2_test)
{
  var bon_carac = "0123456789";
  var ok = 1;

  for (i = 0;  i < carac_2_test.length;  i++)
  {
    ch = carac_2_test.charAt(i);
    for (j = 0;  (j < bon_carac.length) && (ch != bon_carac.charAt(j));  j++);

    if (j == bon_carac.length)
    {
      ok=0;
      break;
    }

  }
  if (!ok)
      return (false);
  else
      return (true);

}

// Vérification numéro téléphone :

function tel(carac_2_test)
{
  var bon_carac = " 0123456789-().+/";
  var ok = 1;
  if (carac_2_test.length < 8)
  	 return(false);
  for (i = 0;  i < carac_2_test.length;  i++)
  {
    ch = carac_2_test.charAt(i);
    for (j = 0;  (j < bon_carac.length) && (ch != bon_carac.charAt(j));  j++);

    if (j == bon_carac.length)
    {
      ok=0;
      break;
    }

  }
  if (!ok)
      return (false);
  else
      return (true);

}



// Vérification de la forme d'une adresse e-mail :

function email(carac_2_test)
{
ok=1;
if (carac_2_test.indexOf(' ',0)!=-1) ok=0;
if (carac_2_test.indexOf('@',0)==-1 ||  (carac_2_test.indexOf('@',0)+1==carac_2_test.length) || (carac_2_test.indexOf('@',0)==0) || (carac_2_test.indexOf('@',(carac_2_test.indexOf('@',0)+1))!=-1))
   ok=0;
else
  { if ( carac_2_test.charAt(carac_2_test.indexOf('@',0)+1)=='.' || carac_2_test.charAt(carac_2_test.indexOf('@',0)-1)=='.' )  ok=0;}

if ( carac_2_test.indexOf('.',carac_2_test.indexOf('@',0))==-1 || (carac_2_test.indexOf('.',0)+1==(carac_2_test.length )) || carac_2_test.indexOf('.',0)==0 )
ok=0;
else
{

  i=carac_2_test.indexOf('.',0)+1;
  while ((i < carac_2_test.length) && (ok != 0) && (carac_2_test.indexOf('.',i)!=-1 ))
  		{

		if ((carac_2_test.indexOf('.',i)+1==carac_2_test.length) || (carac_2_test.indexOf('.',i)==i) )
		{ok=0;}
		else
		{i=(carac_2_test.indexOf('.',i)+1);}
		}
}



if(ok==0)
   return (false);
else
	return (true);
}


function date_valide_jj_mm_aaaa(date){
var jour=date.substring(0,2);
var mois=date.substring(3,5);
var annee=date.substring(6,10);
if ((date.substring(2,3)!='/') || (date.substring(5,6)!='/'))
  return(false);
if(date.length>10)
  return (false);
if((jour.length<2) || (mois.length<2) || (annee.length<4))
  return (false);
if (!(nbr_entier(jour)) || !(nbr_entier(mois)) || !(nbr_entier(annee)))
  return (false);
else
  //return (date_valide(jour, mois, annee));
  {
     if(date_valide(jour, mois, annee))
	return(true);
     else
	return(false);
   }
}

function date_valide(jj, mm, aaaa){
var ok = 1;
if (jj>31) ok=0;
if (mm>12) ok=0;
if (jj==0 || mm==0 || aaaa==0) ok=0;
if ((jj==31)&&(mm==4 || mm==6 || mm==9 || mm==11)) ok=0;
if (jj>29 && mm==2) ok=0;
if (jj==29 && mm==2 && (aaaa%4 != 0)) ok=0;
if (!ok)
      return (false);
  else
      return (true);
}

//*****************************************************************************

//Today = new  Date();

function f_jour(){
//jour = Today.getDate();
for (i=1;i<=31;i++)
if (i <10)
    document.write ("<OPTION value=0" + i + ">0" + i);
else
     document.write ("<OPTION value=" + i + ">" + i);
//return(jour);
}

function f_mois(){
//mois = Today.getMonth()+1;
for (i=1;i<=12;i++)
if (i <10)
    document.write ("<OPTION value=0" + i + ">0" + i);
else
   document.write ("<OPTION value=" + i + ">" + i);
//return(mois);
}

function f_annee() {
for (i=1980;i<=2003;i++)
	   document.write ("<OPTION value=" + i + ">" + i);
}

var downStrokeField;
function autojump(fieldName,nextFieldName,fakeMaxLength)
{
var myForm=document.forms[document.forms.length - 1];
var myField=myForm.elements[fieldName];
myField.nextField=myForm.elements[nextFieldName];

if (myField.maxLength == null)
   myField.maxLength=fakeMaxLength;

myField.onkeydown=autojump_keyDown;
myField.onkeyup=autojump_keyUp;
}

function autojump_keyDown()
{
this.beforeLength=this.value.length;
downStrokeField=this;
}

function autojump_keyUp()
{
if (
   (this == downStrokeField) &&
   (this.value.length > this.beforeLength) &&
   (this.value.length >= this.maxLength)
   )
   this.nextField.focus();
downStrokeField=null;
}

