function encadreur(champ,etat){
	if(etat==0)
		{
			if (document.getElementById('tr_'+champ)) document.getElementById('tr_'+champ).className="erreur";
			document.getElementById(champ).focus();
		}
	else
	if (document.getElementById(champ)) document.getElementById(champ).className='tr_'+champ;
}

function trim(s) {
	return s.replace(/^\s+/, '').replace(/\s+$/, '');
}

function Vide(champ){ 
	var erreur=0;
	
		if (document.getElementById(champ)){
			if (trim(document.getElementById(champ).value)=="")
			{
				erreur = 1;
			}
		}
	if (erreur==1)
				{encadreur(champ,0);return erreur;}
	else	
				{encadreur('tr_'+champ,1);}
				
		 
}


function ValideMail(champ){
	erreur=0;

	email = document.getElementById(champ).value;
	var place = email.indexOf("@",1);
	var point = email.lastIndexOf(".",email.lenght);
	var place2 = email.indexOf("@",place+1);
	var pointpoint = email.indexOf("..",1);
	if ((place < 0)||(place2 >= 0)||(pointpoint >= 0)||(email.length < 3)||(point < place + 2)||(email.length-point)>4||(email.length-point)<3)
	{
		erreur=1;
	}
	if(erreur==1)
		 {encadreur(champ,0);return erreur;}
	else {encadreur('tr_'+champ,1);}
	
}
		
function LongueurMax(champ,maxi){
	erreur=0;
	var long=new String;
	long.value = document.getElementById(champ).value;
	if (long.value.length > maxi || long.value.length==0)
	{
		erreur=1;
	}
	if(erreur==1)
		 {encadreur(champ,0);return erreur;}
	else {encadreur('tr_'+champ,1);}
	
}
		
function Numerique(champ){	
	erreur=0;
	var s=new String;
	s.value = trim(document.getElementById(champ).value);
	if(s.value.length==0) //le cas vide est considéré comme non numerique!
		{erreur=1;}
	else{
		for(var i=0;i<s.value.length;i++)
		  {
	   		c = s.value.charAt(i);
	   		if( !((c >= 0) && (c <= 9)))
	   		{
				erreur=1;
	   		}
		  }
		 }
	if(erreur==1)
		 {encadreur(champ,0);return erreur;}
	else {encadreur('tr_'+champ,1);}
}		


function ValideTel(champ){	
	  erreur=0;	
	  s=document.getElementById(champ).value;
	  var c;
	  for(var i = 0; i < s.length; i++)
	  {
	
		c = s.charAt(i);
	  // Caractères valides sont: espace, parenthèses, "/", "-" et "+".
		if( !((c >= 0) && (c <= 9))
		 && (c != ' ') && (c != '-') && (c != '+')
		 && (c != '/') && (c != '(') && (c != ')'))
		 {
			erreur=1;
		 }
	  }
	 if(trim(s)=="") erreur=1;
	 if(erreur==1)
		 {encadreur(champ,0);return erreur;}
	else {encadreur('tr_'+champ,1);}
}


function Visibilite(message,etat){//etat 1->invisible, etat 0->visible; message designe l'id du msg à cacher/montrer{   
	if(etat==1 && document.getElementById(message)) document.getElementById(message).className="invisible";
	else
		if (document.getElementById(message)) document.getElementById(message).className="visible";
}

function verification(){
	liste=new Array(
		"desc,vide",
		"mail,mail",
		"prenom,vide",
		"nom,vide",
		"civ,vide"
	);

	return verification2(liste);
}

function verification2(liste){
	Visibilite('msg_vide',1);
	Visibilite('msg_mail',1);
	Visibilite('msg_gsm',1);

	var erreurs=0;
	for (i=0; i<liste.length; i++){
		var champs = liste[i].split(/,/);
		if ( (champs[1]=="vide") && (Vide(champs[0])==1)) {erreurs++;Visibilite('msg_vide',0);Visibilite('msg_mail',1);Visibilite('msg_gsm',1);}
		if ((champs[1]=="mail") && (ValideMail(champs[0])==1)) {erreurs++;Visibilite('msg_mail',0);Visibilite('msg_vide',1);Visibilite('msg_gsm',1);}
		if ((champs[1]=="tel") && (ValideTel(champs[0])==1)) {erreurs++;Visibilite('msg_gsm',0);Visibilite('msg_mail',1);Visibilite('msg_vide',1);}
	}
	if(erreurs != 0) return false;
}