// Boucle de validation
function validateForm(form) {
	if (isNotEmpty(form.nom)) {
		if (isNotEmpty(form.datedebuts)) {
			if (isNumber(form.datedebuts)) {
				if (isLen8(form.datedebuts)) {		
					if (isNotEmpty(form.msg)) {
						if (isNotEmpty(form.lieu)) {
							if (isNotEmpty(form.theme)) {
								if (isNotEmpty(form.email)) {					
               		 				if (isEMailAddr(form.email)) {
										if (isNotEmpty(form.image)) {									
											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 de date:ex '05032007' pour '5 mars 2007'.");
        setTimeout("focusElement('" + elem.form.name + "', '" + elem.name + "')", 0);
        return false;
    }
    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("Veuillez respecter le format de date:ex '05032007' pour '5 mars 2007'.");
        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();
}
