function validateForm()		//v4.0
	{
    var i,p,q,nm,test,num,min,max,errors='',args=validateForm.arguments;
	
    for (i=0; i<(args.length-2); i+=3)
		{
			test=args[i+2]; val=MM_findObj(args[i]);
			if (val)
				{
					nm=val.name;
					if ((val=val.value)!="")
						{
							if (test.indexOf('isEmail')!=-1)
								{
									p=val.indexOf('@');
									if (p<1 || p==(val.length-1)) errors+='- '+nm+' doit contenir un email.\n';
								}
							else if (test!='R')
								{
									num = parseFloat(val);
									if (isNaN(val)) errors+='- '+nm+' doit contenir un nombre.\n';
									if (test.indexOf('inRange') != -1)
										{
											p=test.indexOf(':');
											min=test.substring(8,p); max=test.substring(p+1);
											if (num<min || max<num) errors+='- '+nm+' doit contenir un nombre entre '+min+' et '+max+'.\n';
										}
								}
						}
					else if (test.charAt(0) == 'R') errors += '- '+nm+' est requis.\n';
				}
		}
	if (errors) alert('ATTENTION :\n\n'+errors);
    document.MM_returnValue = (errors == '');
    }