// testeur de formulaire
// (c) 2006 Eric Voisin

function testelement(elem){
	var filtreemail  = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
	if (elem.id) {
		if (elem.id == "email") {
			if (filtreemail.test(elem.value) != true) return false;
		}
		if(elem.id.substr(0,3) == "num") {
			numtester = new RegExp("\\b([0-9]"+elem.id.substr(3)+")+\\b");
			if(numtester.test(elem.value) != true) return false;
		}
		if(elem.id == "telephone") {
			teltester = /^([+]{0,1})+([0-9]{10,13})$/;
			if(teltester.test(elem.value) != true) return false;
		}
		if(elem.id.substr(0,4) == "text") {
			if (elem.value.length<elem.id.substr(4)) return false;
		}
	}
	return true;
}

function testform(frm,langue) {
	for(i=0;i<frm.elements.length;i++){
		if (testelement(frm.elements[i]) == false) {	
			msg="'"+frm.elements[i].name+"' ";
			msg+=(langue=='fr')?"format incorrect":"incorrect format";
			msg+="!\n";
			if (frm.elements[i].id == "email") {
				msg+=(langue=='fr')?"saisissez une adresse email valide":"must be a valid email";
			}
			if(frm.elements[i].id.substr(0,3) == "num") {
				msg+=(langue=='fr')?"ce champ ne doit contenir que des chiffres":"must be contain only numbers";
			}
			if(frm.elements[i].id == "telephone") {
				msg+=(langue=='fr')?"entrez un numéro de téléphone":"enter a phone number only";			
			}
			if(frm.elements[i].id.substr(0,4) == "text") {
				msg+=(langue=='fr')?"le texte est trop court":"text too short";			
			}
			alert(msg);
			try { frm.elements[i].focus(); } catch(e) {}
			return;
		}
	}
	frm.submit();
}