//Validation du formulaire
function validateForm(form) {
	var test=true
	for(var i=0;i<Fields.length;i++){
		elem=eval('form.' + Fields[i][0])
		//Test si le champ est obligatoire
		if (Fields[i][2] && !isNotEmpty(elem)) {test=false;break;}
		//Test si le format du champ est respecté		
		switch(Fields[i][1]) {
			case '_email':				
				if (!isEMailAddr(elem)) test=false;
				break;
			
			case '_integer':
				if (!isInteger(elem)) test=false;
				break;			
			
			case '_number':
				if (!isNumber(elem)) test=false;
				break;			
			
			case '_>6car':				
				if (!isLen6(elem)) test=false;				
				break;
				
			case 'ClientPass':				
				if(elem.value != form.ClientPass.value)	{
					alert('Votre mot de passe n\'a pas été confirmé correctement.')
					test=false;
				}
				break;
			
			default:
				break;
		}
		if (!test) break;
	}
	if(!test) return false;
}


// Vérifie si un champ a bien été renseigné avec un nombre entier
function isInteger(elem){
	if (!isNumber(elem)){
		test=false;
	}
	else{
		var int = elem.value;
		if(parseInt(int)!=int){
			alert("Le champs doit contenir un nombre entier.");			
			return false;
		}
		else{
			return true;
		}
	}
}


// Vérifie si un champ a bien été renseigné
function isNotEmpty(elem) {
	var str = elem.value;
    var re = /.+/;
    if(!str.match(re)) {
        alert("Veuillez renseigner les champs obligatoires.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}

// Vérifie si l'adresse e-mail est valide
function isEMailAddr(elem) {
	var str = elem.value;
	//if(str){
		var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
		if (str && !str.match(re)) {
			alert("Veuillez vérifier le format de l\'adresse e-mail.");
			setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
			return false;
		} else {
			return true;
		}
	//}
}

//Vérifie si un champ ne contient que des chiffres
function isNumber(elem) {
	var str = elem.value;
	var re = /^[-]?\d*\.?\d*$/;
	str = str.toString();
	if (!str.match(re)) {
		alert("Le champs doit contenir un nombre.");
		setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
		return false;
	}
	return true;
}

// Vérifie si un champ contient 8 caractères
function isLen6(elem) {
	var str = elem.value;	
	if (str.length < 6) {
		alert("Le mot de passe doit contenir au moins 6 caractères.");
		setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
		return false;
	} else {
		return true;
	}
}
// Vérifie si un champ contient 8 caractères
function isLen8(elem) {
	var str = elem.value;
    var re = /\b.{8}\b/;
    if (!str.match(re)) {
        alert("Le champs doit contenir au moins 8 caractères.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}
// Positionne le curseur dans un champ donné
function focusElement(formName, elemName) {
    var elem = document.forms[formName].elements[elemName];
    elem.focus();
    elem.select();
}

