function funcValidateField(formname,tabnom,tabtype,tabminsize,tabmaxsize,tablib,colorcel,colorfont){
	taberror = new Array();
	taberrornc = new Array();
	for(i=0;i<tabnom.length;i++){
		tmp = eval("document."+formname+"."+tabnom[i]);
		str = tmp.value;
		if (str.length <= tabmaxsize[i] && str.length >= tabminsize[i]){
			switch(tabtype[i]){
				case "num" :
					if ( isNaN(tmp.value) == true ){
						taberror[taberror.length]=tablib[i];
						taberrornc[taberrornc.length]=tabnom[i];
					}
					break;
				case "date" :
					var reg = /\d\d\-\d\d\-\d\d\d\d/;
					res = reg.test(tmp.value);
					if ( res == false){
						taberror[taberror.length]=tablib[i];
						taberrornc[taberrornc.length]=tabnom[i];
					}				
					break;	
				case "mail" :
					var reg = /[^ ]+@[^ ]+\.[^ ]+/;
					res = reg.test(tmp.value);
					if ( res == false){
						taberror[taberror.length]=tablib[i];
						taberrornc[taberrornc.length]=tabnom[i];
					}
					break;
				case "txt" :
					break;
			}
		}else{
			taberror[taberror.length]=tablib[i];
			taberrornc[taberrornc.length] = tabnom[i];
		}
	}
	if (taberror.length == 0){
		tmp = eval("document."+formname);
		tmp.submit();
	}else{
		list = "";
		for(i=0;i<tabnom.length;i++){
			tmp = eval("document."+formname+"."+tabnom[i]);
			tmp.style.backgroundColor="#FFFFFF";
			tmp.style.color="#000000";
		}
		for(i=0;i<taberror.length;i++){
			list += "- "+taberror[i]+"\n";
			tmp = eval("document."+formname+"."+taberrornc[i]);
			tmp.style.backgroundColor=colorcel;
			tmp.style.color=colorfont;
		}
		window.alert("Veuillez vérifier les champs suivants : \n\n"+list);
		tmp = eval("document."+formname+"."+taberrornc[0]);
		tmp.select();
	}
}
