// Boucle de validation
function validateForm(form) {
	if (isNotEmpty(form.cont_nom)) {
		if (isNotEmpty(form.cont_prenom)) {
			if (isNotEmpty(form.cont_adresse1)) {
				if (isNumber(form.cont_cp)) {
					if (isLen5(form.cont_cp)) {
						if (isNotEmpty(form.cont_ville)) {
							if (isNotEmpty(form.cont_email)) {
                				if (isEMailAddr(form.cont_email)) {
                    				if (isNumber(form.cont_tel)) {
										if (isLen10(form.cont_tel)) {
											return true;
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}
	return false;
}

// 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;
    var re = /^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$/;
    if (!str.match(re)) {
        alert("Veuillez vérifier le format de votre 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("Veuillez respecter le format numerique pour le telephone et le code postal.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    }
    return true;
}

// Vérifie si un champ contient 10 caractères
function isLen10(elem) {
	var str = elem.value;
    var re = /\b.{10}\b/;
    if (!str.match(re)) {
        alert("Veuillez respecter le format téléphonique à 10 chiffres suivant : '0122334455'.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    } else {
        return true;
    }
}

// Vérifie si un champ contient 5 caractères
function isLen5(elem) {
	var str = elem.value;
    var re = /\b.{5}\b/;
    if (!str.match(re)) {
        alert("Veuillez respecter le format code postal à 5 chiffres suivant : '75001' par exemple.");
        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();
}