/**
 * fonction permettant de vérifier que le champ de surface est bien valide
 */
function verifCompte(){
	// tableau des variables à tester
	var posts = new Array('NOM', 'PRENOM', 'AD1', 'CP', 'VILLE', 'TEL' );
	
	// variables pour la récupération des objets 	
	var objsecretaire;
	var objcorrespondant;
	
	// parcours de toutes valeurs du tableau
	for (i=0; i < posts.length; i++){
		// on récupère les éléments de chaques colonnes 
		objsecretaire = document.getElementsByName(posts[i]+"secr");
		objcorrespondant = document.getElementsByName(posts[i]+"cores");

		// si un des champs est vide on ne valide pas la soumission et on le signale
		if( objsecretaire[0].value == "" || objcorrespondant[0].value == ""){
			alert('Vous avez oublié de saisir une valeur!');
			return false;
		}
		
		// on regarde si on traite le code postal
		if(posts[i] == 'CP'){
			// on vérifie que ce soit bien un nombre de 5 chiffre
			if( isNaN(objsecretaire[0].value) || objsecretaire[0].value.length != 5 || isNaN(objcorrespondant[0].value) || objcorrespondant[0].value.length != 5){
				alert('Le code postale doit obligatoirement être composé de 5 chiffres') 
				return false;
			}
		}
	}
	// tous les champs sont saisies, ont peu valider mais on affiche le message avant pour demander confirmation
	return confirm('Si vous décidez de modifier ces données, vous ne pourrez plus les modifier par Internet.\nIl vous faudra contacter la Fédération pour avoir plus  d\'informations.');
}

/**
 * Fonction permettant de vérifier la validité de la surperficie saisie
 */
function verifSurface(nombre){
	//on vérifie si la valeur est un nombre 
	if(isNaN(document.surf.surface.value) || (parseInt(document.surf.surface.value)<= 0 || document.surf.surface.value == "")){
		//la valeur n'est pas un nombre
		alert('Attention la valeur saisie est incorrecte!');
		return false;
	}else{
		// valeur correcte
		//on vérifie que ce ne soit pas la même que l'ancienne
		if (document.surf.surface.value == nombre){
			alert('L\'ancienne valeur et la nouvelle sont identique. Vous ne devez pas cliquer sur modifier.');
			return false;
		}
		return confirm('Attention, le changement de votre superficie ne sera effectif\nque lorsque vous aurez envoyé un justificatif à la Fédération de Chasse\nVoulez-vous continuer?');
	}
}

function verifDemande(){
	// tableau des variables à vérifier
	var posts = new Array('1', '21', '22', '3', '4', '6');

	// variables pour la récupération des objets 
	var obj;
	// parcours de toutes valeurs du tableau
	for (i=0; i < posts.length; i++){
		//on réucpère l'élément
		obj = document.getElementsByName(posts[i]);
		//on vérifie que la valeur est correct
		if(isNaN(obj[0].value) || obj[0].value < 0){
			//on affiche un message et on annule la tansmission
			alert('Une des valeurs saisie est incorrecte!');
			return false;
		}
		//si la valeur est égale à 0 on vide le champ
		if( obj[0].value == 0){
			obj[0].value = "";
		}
	}
	
	// tous les champs sont saisies, ont peu valider mais on affiche le message avant pour demander confirmation
	return confirm('Attention, vous ne pouvez effectuer votre demande qu\'en une seule fois.\nVous ne pourrez donc pas modifier vos choix après la saisie validé.\nVoulez-vous continuer?');
}

/**
 * Fonction permettant de vérifier que les valeurs saisies dans le relevés sont correctes
 * @ param id = id des espèces
 * @ param att = attribution des espèces
 */
function verifReleve( id, att){ 
	
	//variable servant à récupérer les élements
	var obj;
	// variable pour savoir s'il faut changer la visibilité du block
	var blocVisible = false; 
	// on parcours tous les champs pour les vérifier
	for(i=0; i<id.length; i++){
		//on récupère l'objet à analyser
		obj = document.getElementsByName('espece'+i);
		// on vérifie qu'une valeur soit bien saisie
		if(obj[0].value==""){
			//mesage d'erreur
			alert('Vous avez oubliez de saisir une valeur!');
			return false;
		}
		// si la valeur n'est pas un nombre positif ou égal à zéro on n'insère pas
		if( isNaN(obj[0].value) || obj[0].value < 0){
			//mesage d'erreur
			alert('Une des valeurs saisies est incorrecte!');
			return false;
		}
		// on vérifie si la valeur saisie est supérieure à celle attribué (nuances pour les chevreuils
		// si on a du chevreuils et du chevreuil tir d'été
		// le chevreuil tir d'été peut passer sur le chevreuil normal
		// donc la somme des deux ne doit pas être supérieur à l'atribution des deux
		if(parseInt(id[i])==21 && parseInt(id[i+1])==22 ){
			// on récupère la valeur du chevreuil tir d'été
			var chtir = document.getElementsByName('espece'+(i+1));
			// la somme des deux valeurs doit être inférieure ou égale à la somme des 2 att
			sommeAtt = parseInt(att[i+1]) + parseInt(att[i]);
			sommeReal = parseInt(obj[0].value) + parseInt(chtir[0].value);
			blocVisible =(blocVisible)? true : sommeReal > sommeAtt;
		// cas normal
		// le réalisé ne peut-être supérieur à l'atribué
		}else {
			// si on doit afficher le bloc alors on ne change pas la valeur
			blocVisible =(blocVisible)? true : (obj[0].value > parseInt(att[i]));
		}
		
		// on affiche la zone de texte
		if(blocVisible){
			var just = document.getElementsByName('justif');
			// si la zone de texte justificatif est vide on demande un justificatif
			if(just[0].value == "" || (just[0].value).length < 10){
				// affichage de la zone
				var justificatif = document.getElementById('justificatif');
				justificatif.style.display = "block";
				// message pour demander la saisie
				alert('Attention vous avez dépassé les quantités attribués.\nVeuillez justifier ce dépassement dans la zone prévu à cet effet (10 caractères minimum) !');
				return false;
			}
			// il faut masquer la zone
		} else {
			// masquage de la zone
			var justificatif = document.getElementById('justificatif');
			justificatif.style.display = "none";
		}
	}
	
	// on vide la zone de texte avant de soumettre le formulaire si on en a pas besoin
	if(blocVisible == false){
		var just = document.getElementsByName('justif');
		just[0].value = "";
	}
	return confirm('Attention, vous ne pouvez saisir le compte-rendus qu\'une seule fois.\nUne fois celui-ci saisie il sera impossible de le modifier.\nVoulez-vous continuer?');
}

/**
 * Fonction permettant de vérifier que les champs de connexion sont bien saisies
 * @ param nombre: le nombre de champs à remplir
 */
function verifIdentification(){

	// on vérifie le champ login
	if ((isNaN(document.identification.login.value)) || (document.identification.login.value == "") ||(document.identification.login.value.length !=4)){
		alert('Le N° d\'identification saisi n\'est pas correct!\nIl doit être composé de 4 chiffres.\nVérifiez votre saisie.');
		return false;
	}
	// on vérifie le champ mdp
	if ((document.identification.password.value == "")){
		alert('Vous n\'avez pas saisie de mot de passe!');
		return false;
	}
	// tout est OK 
	return true;
}
