
function verifForm(idForm)
{ var formulaire = $(idForm); var liste = new Array(); var listeInput = formulaire.getElementsByTagName("input"); for (var k=0; k<listeInput.length; k++)
liste[liste.length] = listeInput[k]; var listeSelect = formulaire.getElementsByTagName("select"); for (var k=0; k<listeSelect.length; k++)
liste[liste.length] = listeSelect[k]; var listeArea = formulaire.getElementsByTagName("textarea"); for (var k=0; k<listeArea.length; k++)
liste[liste.length] = listeArea[k]; for (var k=0; k<liste.length; k++)
{ if (((liste[k].obligatoire !=null)&&(liste[k].obligatoire!=""))||(liste[k].getAttribute("obligatoire")!=null))
if (liste[k].value=="")
{ alert("Valeur obligatoire !"); liste[k].focus(); liste[k].select(); return false;}
if (((liste[k].verif !=null)&&(liste[k].verif!=""))||(liste[k].getAttribute("verif")!=null))
{ if (liste[k].getAttribute("verif")!=null)
liste[k].verif =liste[k].getAttribute("verif")
var resultat = true; if (liste[k].verif=="date")
resultat = verifDate(liste[k].value,liste[k])
if (liste[k].verif=="number")
resultat = verifNumber(liste[k].value,liste[k])
if (resultat==false)
{ liste[k].focus(); liste[k].select(); return false;}
}
}
return true;}
function verifNumber(n,idChamp)
{ var result; n=n.replace(",","."); var exp = new RegExp("^[0-9-.]*$","g"); result = exp.test(n); if ($(idChamp))
{ if (result!=false)
{ $(idChamp).value = n
return true;}
else
{ $(idChamp).focus(); alert("Un nombre doit être saisi."); return false
}
}
else
return result;}
function verifDate(d,idChamp)
{ var result = verifValDate(d); if ($(idChamp))
{ if (result!=false)
{ $(idChamp).value = result; return true;}
else
{ $(idChamp).focus
return false
}
}
else
{ if (result!=false)
return true; else
return false;}
}
function verifValDate(d,idChamp)
{ if (d == "")
{ alert("Date vide"); return false;}
for (var i=0; i<3; i++)
{ d = d.replace(":","/"); d = d.replace("-","/"); d = d.replace(" ","/");}
if (d.search("/") == -1)
{ a = d.substr(0,4); m = d.substr(4,2); j = d.substr(6,2); d=j+"/"+m+"/"+a;}
e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{1,2}|[0-9]{4})$"); if (!e.test(d))
{ alert("Erreur de vérification de date"); return false;}
var j = new Number((d.split("/")[0])); var m = new Number((d.split("/")[1])); var a = new Number((d.split("/")[2])); if (a < 1000)
{ if (a < 89)
a+=2000; else
a+=1900;}
if (a%4 == 0 && a%100 !=0 || a%400 == 0)
fev = 29; else
fev = 28; nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31); var resultat= ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] ); if (!resultat)
{ alert("Date incorrecte")
return false
}
a = new String(a)
m = new String(m)
j = new String(j)
if (m.length==1)
m="0"+m; if (j.length==1)
j="0"+j
var theDate = a+m+j; return theDate;}
function $() { var results = [], element; for (var i = 0; i < arguments.length; i++) { element = arguments[i]; if (typeof element == 'string')
element = document.getElementById(element); results.push(Element.extend(element));}
return results.length < 2 ? results[0] : results;}
