
// Fonction permettant de faire apparaitre ou nom une div dont l'ID est passé en paramètre
function afficheId(baliseId){
  if (document.getElementById && document.getElementById(baliseId) != null){
	// On test si la balise est visible ou non
	if(document.getElementById(baliseId).style.visibility == 'hidden' && document.getElementById(baliseId).style.display == 'none'){
		// On affiche
		document.getElementById(baliseId).style.visibility='visible';
   	document.getElementById(baliseId).style.display='block';
	}else{
		// On masque
		document.getElementById(baliseId).style.visibility='hidden';
    document.getElementById(baliseId).style.display='none';
	}
  }
}

// Fonction permettant de modifier la photo en cours pour le véhicule
function transitionPhoto(nouvelle_photo){
  document.getElementById('photo-vehicule').src = nouvelle_photo;
}

// Test si un email est valide
function test_email(emailValue){
		// déclaration et initialisation des variables 
	 var adrMail= emailValue;
	 //alert(adrMail);
	 adrMailLength=adrMail.length; // longueur de la chaîne adrMail 
	 caractOk="_.-0123456789abcdefghijklmnopqrstuvwxyz"; // caratères corect d'une adresse mail 
	 var posArrobas=adrMail.indexOf('@',1); // position du premier Arrobas 
	 var posPoint=adrMail.lastIndexOf('.',adrMailLength); // position du dernier point 
	 var posCaractFaux=adrMail.indexOf('..',posArrobas+1); // position d'un caractère faux ('..' ou ' ') 
	 var caract=0; // caractère extrait de la chaîne adrMail (utilisée par les boucles while) 
	 var caractFaux=adrMail.charAt(0)+adrMail.charAt(posArrobas-1)+adrMail.charAt(posArrobas+1)+adrMail.charAt(posPoint-1); 
	 var posCaract=0; // position du caractère à extraire de la chaîne adrMail (utilisée par les boucles while) 
	 var posCaractOk=0; // position du caractère extrait de la chaîne adrMail (utilisée par les boucles while) 
	 var posCaractNon=-1; 
	 var retour=false; // l'adresse e-mail est considérée comme fausse au début 
// début du test
	 // s'il n'existe pas de caractère '..' alors on teste s'il existe un espace dans la chaîne adrMail 
		 if (posCaractFaux!=-1 || adrMail.indexOf(' ',0)!=-1 || adrMail.indexOf('--',0)!=-1 || adrMail.indexOf('__',0)!=-1) { 
				posCaractFaux=0; 
		 } 
	 // Teste les points ou - ou _ au début de l'adrMail, autour de l'arrobas et autour du dernier point 
		 for (posCaract;posCaract<4;posCaract++) { 
			 caract=caractFaux.charAt(posCaract); 
			 posCaractNon=caractOk.lastIndexOf(caract,2); 
			 if (posCaractNon!=-1) { 
					posCaractFaux=0; 
					break; 
			 } 
		 } 
	 // si l'adresse mail contient au moins 1 caractère et qu'elle comporte un arrobas 
	 // et qu'elle comporte un point et que l'arrobas est avant le dernier point 
	 // et qu'elle ne contient pas de '..' ou d'espace et que après le dernier point il y est 2,3 ou 4 caractères 
	 // et qu'il n'y est pas de point autour de l'arrobas et que l'adresse ne commence pas par un point 
	 // Alors 
		 if (adrMailLength>0 && posArrobas!=-1 && posPoint!=-1 && posArrobas<posPoint && posCaractFaux==-1 && adrMailLength-posPoint-1>=2 && adrMailLength-posPoint-1<=4) { 
				// extraction d'un caractère et teste s'il existe dans la chaîne "_.-0123456789abcdefghijklmnopqrstuvwxyz" 
				// S'il n'existe pas alors posCaract=-1 donc au prochain 'tour' on passe aux autres boucles (qui ne s'effecturont pas) 
				// Si il existe on continue la boucle jusqu'au caractère avant l'arrobas et on passe à la boucle while suivante 
					adrMail=adrMail.toLowerCase(); 
					posCaract=0; 
					while (posCaract<posArrobas && posCaractOk!=-1) { 
						caract=adrMail.charAt(posCaract); 
						posCaractOk=caractOk.indexOf(caract,0); 
						posCaract++; 
					} 
					posCaract++; // on passe l'arrobas 
				// sur le même principe qu'au dessus mais pour la partie entre l'arrobas et le dernier point 
				// le test ce fait sur les caractères ".-0123456789abcdefghijklmnopqrstuvwxyz" 
				// caractOk.indexOf(caract,1) on ne teste plus l'underscore 
					while (posCaract<posPoint && posCaractOk!=-1) { 
							caract=adrMail.charAt(posCaract); 
							posCaractOk=caractOk.indexOf(caract,1); 
							posCaract++; 
					} 
					posCaract++; // on passe le point 
				// sur le même principe qu'au dessus mais pour la partie entre le dernier point et la fin 
				// le test ce fait sur les caractères "abcdefghijklmnopqrstuvwxyz" 
				// caractOk.indexOf(caract,13) on ne teste plus que des lettres 
					while (posCaract<adrMailLength && posCaractOk!=-1) { 
						caract=adrMail.charAt(posCaract); 
						posCaractOk=caractOk.indexOf(caract,13); 
						posCaract++; 
					} // fin de la boucle while 
				// durant le parcour de l'adresse mail si n'y avait pas de caractère interdit 
				// posCaractOk a changer plusieurs fois de valeur mais na jamais eu la valeur -1 
				// donc l'adresse est bonne 
					if (posCaractOk!=-1) { 
						 retour=true; 
					} 
		 }
		
		
		return retour;//Retour de la fonction, TRUE -> email correct
}
