function IsNotEmpty(objet) { // Passer en paramètre l'objet, pas la valeur
	var valeur = objet.value;
	var sortie = true;
	if(valeur == '') {
		sortie = false;
	}
	return sortie;
}

function IsEmail(objet) { // Passer en paramètre l'objet, pas la valeur
	var valeur = objet.value;
	var sortie = true;
	if(valeur == '') {
		sortie = false;
	}
	if(valeur.indexOf('.')<1) {
		sortie = false;
	}
	if(valeur.indexOf ('@', 0) < 2) {
		sortie = false;
	}
	var testemail = /^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*$/;
	if (!testemail.test(valeur.toLowerCase())) {
		sortie = false;
	}
	return sortie;
}

function IsChecked(objet) { // Passer en paramètre l'objet, pas la valeur
	return objet.checked;
}

function CheckForm(form) {
	var inputs = formsToCheck[form];
	var nbrInputs = inputs.length;
	var sortie = true;
	var error_message = "Certaines informations sont manquantes ou invalides : \r";
	for(var i=0; i<nbrInputs; i++) {
		if(!inputs[i].CheckIt()) {
			sortie = false;
			error_message += inputs[i].error_message+" \r";
		}
	}
	if(!sortie) {
		alert(error_message);
	} else {
		document.getElementById(form+"_submit").innerHTML = "Patientez...";
	}
	return sortie;
}

function Input(input_object, check_type, error_message) {
	this.input_object = input_object;
	this.check_type = check_type;
	this.error_message = error_message;
	this.CheckIt = Input_CheckIt;
}

function Input_CheckIt() {
	if(this.check_type == "not_empty") {
		return IsNotEmpty(this.input_object);
	}
	else if(this.check_type == "is_email") {
		return IsEmail(this.input_object);
	}
	else if(this.check_type == "is_checked") {
		return IsChecked(this.input_object);
	}
	else if(this.check_type == "one_checked") {
		var sortie = false;
		var nbrInputs = this.input_object.length;
		for(var i=0; i<nbrInputs; i++) {
			if(IsChecked(this.input_object[i])) {
				sortie = true;
			}
		}
		return sortie;
	}
}
