/**%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

--******************************************************************--
---Librairie de code javascript pour validations des formulaires
--******************************************************************-- 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
/*
			Valide le formulaire du panneau de contôle
			ARGUMENT(S): OBJET - référence au formulaire HTML
			RETOURNE: 	true si le formulaire est valide
						false sinon
		*/
		function validPanneauControl(f) {
		
			/*
				*****************************************************************
				A. on recueille les valeurs des éléments de formulaire à valider
				****************************************************************
			*/
			var nom = f.sNom.value;
			var fichier = f.sFile.value;
			var selection = f.sCat.selectedIndex;
			var prix = f.sPrix.value;
			var adjust = f.sAdjust.value;
			var description = f.sDesc.value;
			
			
			/*
				**************************************************************
				B. on initialise un drapeau et un message d'erreur générique
				*************************************************************
			*/
			var drapeau = "vert";
			var msgErreur = "Le formulaire ne peut être soumit à cause des erreurs suivantes: \n\n";
			/*
				***********************************************
				C. on valide tous les éléments individuellement.
				***********************************************
			*/
						
			// valider le titre de la photo.
			var resNom = valideNom(nom);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			// valider le nom de fichier
			var resNom = valideFichier(fichier);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}

			var resNom = valideSelection(selection);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			var resNom = validePrix(prix);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			var resNom = valideAdjust(adjust);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			// valider lea description
			var resNom = valideDescription(description);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
						
			/*
				*******************************
				D. Vérifier l'état du drapeau.
				*******************************
			*/
			if(drapeau == "rouge") {
				alert(msgErreur);
				return false;
			}
			return true;
		}

function valideNom(a) {	
	var resultat = a.search(/[a-z]{2,}/i);
	if(resultat == -1) {
		return "\t * Le titre n'est pas valide, il doit contenir au moins 2 lettres\n";	
	}
	return "";	
}
function valideFichier(a) {	
	var resultat = a.search(/[a-z0-9]*\.jpg/i);
	if(resultat == -1) {
		return "\t * Choisissez un nom de fichier de type JPEG valide\n";	
	}
	return "";	
}

function valideSelection(a) {	
	if(a == 0) {
		return "\t * Veuillez choisir une catégorie\n";	
	}
	return "";	
}
function validePrix(a) {	
	var resultat = a.search(/[0-9]{2,}/i);
	if(resultat == -1) {
		return "\t * Le prix n'est pas valide\n";	
	}
	return "";	
}
function valideAdjust(a) {	
	var resultat = a.search(/[0-9]{2,}/i);
	if(resultat == -1) {
		return "\t * Le prix ajusté n'est pas valide\n";	
	}
	return "";	
}
function valideDescription(a) {	
	var resultat = a.search(/[a-z0-9]{2,32}/i);
	if(resultat == -1) {
		return "\t * Veuillez saisir une description contenant au maximum 32 charactères\n";
	}	
	return "";	
}

/**%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

--******************************************************************--
---Librairie de code javascript pour validations des formulaires
--******************************************************************-- 

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%*/
		function validerFormulaire(f) {
		
			/*
				*****************************************************************
				A. on recueille les valeurs des éléments de formulaire à valider
				****************************************************************
			*/
			var nom = f.fNom.value;
			var prenom = f.fPrenom.value;
			var adresse = f.fAdresse.value;
			var ville = f.fVille.value;
			var postal = f.fPostal.value;
			var pays = f.fPays.value;
			var province = f.fProvince.value;
			var phone = f.fPhone.value;
			var email  = f.fEmail.value;
			
			/*
				**************************************************************
				B. on initialise un drapeau et un message d'erreur générique
				*************************************************************
			*/
			var drapeau = "vert";
			var msgErreur = "Le formulaire ne peut être soumit à cause des erreurs suivantes: \n\n";
			/*
				***********************************************
				C. on valide tous les éléments individuellement.
				***********************************************
			*/
			// valider le nom complet.
			var resNom = valideNom(nom);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider le prénom complet.
			var resNom = validePrenom(prenom);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider le username complet.
			var resNom = valideAdresse(adresse);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			var resNom = valideVille(ville);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider le password complet.
			var resNom = validePostal(postal);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider l'age.
			var resNom = validePays(pays);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider le courriel.
			var resNom = valideProvince(province);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			
			// valider l'avatar.
			var resNom = validePhone(phone);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			var resNom = valideEmail(email);
			if(resNom != "") {
				drapeau = "rouge";
				msgErreur += resNom;
			}
			/*
				*******************************
				D. Vérifier l'état du drapeau.
				*******************************
			*/
			if(drapeau == "rouge") {
				alert(msgErreur);
				return false;
			}
			return true;
		}
function valideNom(nom) {	
	var resultat = nom.search(/[a-z]{2,}/i);
	if(resultat == -1) {
		return "\t * Le nom n'est pas valide, il doit contenir au moins 2 lettres\n";	
	}
	return "";	
}
function validePrenom(prenom) {	
	var resultat = prenom.search(/[a-z]{2,}/i);
	if(resultat == -1) {
		return "\t * Le prénom n'est pas valide, il doit contenir au moins 2 lettres\n";	
	}
	return "";	
}
function valideAdresse(adresse) {	
	var resultat = adresse.search(/[a-z0-9]{2,}/i);
	if(resultat == -1) {
		return "\t * L'adresse n'est pas valide\n";	
	}
	return "";	
}
function valideVille(ville) {	
	var resultat = ville.search(/[a-z0-9]{2,}/i);
	if(resultat == -1) {
		return "\t * La ville n'est pas valide\n";	
	}
	return "";	
}
function validePostal(postal) {	
	var resultat = postal.search(/[a-z0-9]{2,7}/i);
	if(resultat == -1) {
		return "\t * Le code postal n'est pas valide\n";
	}	
	return "";	
}
function validePays(pays) {	
	var resultat = pays.search(/[a-z]{2,}/i);
	if(resultat == -1) {
		return "\t * Veuiller inscrire un pays\n";	
	}
	return "";	
}
function valideProvince(province) {	
	var resultat = province.search(/[a-z]{2,}/i);
	if(resultat == -1) {
		return "\t * Veuiller inscrire une province\n";	
	}
	return "";	
}
function validePhone(phone) {	
	var resultat = phone.search(/[0-9]{2,}/i);
	if(resultat == -1) {
		return "\t * Veuillez saisir un numéro de téléphone valide\n";
	}	
	return "";	
}
function valideEmail(email) {	
	var resultat = email.search(/[0-9a-z]{2,255}\@[0-9a-z]{2,255}\.[0-9a-z]{2,3}/i);
	if(resultat == -1) {
		return "\t * Veuillez saisir un courriel valide\n";
	}	
	return "";	
}
//Valide la quantitée
function valideQuant(f) {
	var quant = f.qte.value;
	var drapeau = "vert";
	var resNom = valideQte(quant);
	if(resNom != "") {
		drapeau = "rouge";
	}
	if(drapeau == "rouge") {
		alert(resNom);
		return false;
	}
	return true;
}
function valideQte(quant) {	
	var resultat = quant.search(/[0-9]{1,8}/i);
	if(resultat == -1) {
		return "Veuiller entrer une quantitée valide";
	}	
	return "";	
}