function IsChecked(formu,champ,min)
{
 var cpt = 0;
 for (i=0;i<document.forms[formu].elements[champ].length;i++)
 {
  if (document.forms[formu].elements[champ][i].checked) {cpt = cpt + 1;}
 }
 if (cpt >= min) {return true;}
 else {return false;}
}

function ValideTexte(formu,champ,needed,interdit) 
{
 var tmp = document.forms[formu].elements[champ].value;
 if ((needed) && (tmp.length == 0)) {return false;}
 else {
  for (i=0;i<(interdit.length-1);i++) {
   if (tmp.indexOf(interdit.charAt(i)) >=0) {return false;}
  }
  return true;
 }
}

function ValideDate(formu,champ)
{
 var tmp = document.forms[formu].elements[champ].value;
 var thisyear = new Date();
 thisyear = thisyear.getFullYear();
 var annee = parseInt(tmp.substr(0,4),10);
 var mois = parseInt(tmp.substr(5,2),10);
 var jour = parseInt(tmp.substr(8,2),10);
 if (tmp.length != 10) {return false;}
 else {
  if ( (tmp.charAt(4) != '-')||(tmp.charAt(7) != '-') ) {return false;}
  else {
   if ( (isNaN(annee))||(isNaN(mois))||(isNaN(jour)) ) {return false;}
   else {
    if ( (annee < thisyear)||(mois > 12)||(mois < 1)||(jour > 31)||(jour < 1) ) {return false;}
	else {return true;}
   }
  }
 }  	
}

function ValideEmail(formu,champ,needed)
{
 adresse = document.forms[formu].elements[champ].value;
 if ((adresse.length == 0)&&(needed==false)) {return true;}
 else {
  var place = adresse.indexOf("@",1);
  var point = adresse.indexOf(".",place+1);
  if ((place > -1)&&(point > 1)&&(ValideTexte(formu,champ,true,'[]'))) {return true;}
  else {return false;}
 }
}  

function AllowChar(evt,autorise) {
 var keyCode = evt.which ? evt.which : evt.keyCode;
 if (keyCode==9) return true;
 if (autorise.indexOf(String.fromCharCode(keyCode)) < 0) {return false;}
}

function BlockChar(evt,interdit) {
 var keyCode = evt.which ? evt.which : evt.keyCode;
 if (keyCode==9) return true;
 if (interdit.indexOf(String.fromCharCode(keyCode)) >= 0) {return false;}
}

function ChangeColor(formu,champ,classe)
{
 document.forms[formu].elements[champ].className = classe; 
}
