function MM_findObj(n, d) { 
		var p,i,x;  
		if(!d) d=document; 
		if (( p=n.indexOf("?")) > 0 && parent.frames.length) {
			d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);
		}
		if(!(x=d[n])&&d.all) 
			x=d.all[n]; 
		for (i=0;!x&&i<d.forms.length;i++) 
			x=d.forms[i][n];
		for(i=0;!x&&d.layers&&i<d.layers.length;i++) 
			x=MM_findObj(n,d.layers[i].document);
		if(!x && d.getElementById) 
			x=d.getElementById(n); 
			return x;
		}
	
	
function validForm() { // FONCTION VALIDATION FORMULAIRE

	var i,p,q,nm,test,num,min,max,errors='',args=validForm.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 être une adresse valide ! \n\n';
				} 
			else if (test!='R') { 
					num = parseFloat(val);
					if (isNaN(val)) errors+='- '+nm+' doit contenir des chiffres.\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+' must contain a number between '+min+' and '+max+'.\n';
						} 
			}
					
	}else if (test.charAt(0) == 'R') errors += '> '+nm+'\n'; 

	}
	} 
	
	
	if (errors) alert('Attention, Champ(s) Obligatoire(s):\n\n'+errors);
		document.MM_returnValue = (errors == '');
}



