/////////////////////elimination des espaces//////////////


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

///////////////////////////////////////// validite date////////////////////
function isDate(d) {
	// Cette fonction permet de vérifier la validité d'une date au format jj/mm/aa ou jj/mm/aaaa
	// Par Romuald
	
	if (d == "") // si la variable est vide on retourne faux
		return false;
	
	e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
	
	if (!e.test(d)) // On teste l'expression régulière pour valider la forme de la date
		return false; // Si pas bon, retourne faux
	// On sépare la date en 3 variables pour vérification, parseInt() converti du texte en entier
	j = parseInt(d.split("/")[0], 10); // jour
	m = parseInt(d.split("/")[1], 10); // mois
	a = parseInt(d.split("/")[2], 10); // année
	// Si l'année n'est composée que de 2 chiffres on complète automatiquement
	if (a < 1000) {
		if (a < 89)	a+=2000; // Si a < 89 alors on ajoute 2000 sinon on ajoute 1900
		else a+=1900;
	}
	// Définition du dernier jour de février
	// Année bissextile si annnée divisible par 4 et que ce n'est pas un siècle, ou bien si divisible par 400
	if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
	else fev = 28;
	// Nombre de jours pour chaque mois
	nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
	// Enfin, retourne vrai si le jour est bien entre 1 et le bon nombre de jours, idem pour les mois, sinon retourn faux
	return ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] );
}


////////////////////////////////////////////////////////////////////////////

function verifier(formu)
{
	for(var i = 0; i < formu.length ; i++) 
	{
	id=formu.elements[i].id;
	parametres=id.split("|",-1);
	
			action=parametres[0];
			nom=parametres[1];
			type=parametres[2];
	if((action=='ob')&&(trim(formu.elements[i].value)==''))
	{alert('Le champs "'+nom+'" est obligatoire.');
	 formu.elements[i].value='';
	 formu.elements[i].focus();
	  return false;}
	  
	  if(trim(formu.elements[i].value)!=='')
	  {
		  switch (type) {
			//////////////////////////////////////
			case 'email':
			
							adresse = trim(formu.elements[i].value);
							place = adresse.indexOf("@",1);
							point = adresse.indexOf(".",place+1);
							if ((place > -1)&&(adresse.length >2)&&(point > 1))
									{ //formu.elements[i].value=adresse;
									break; }
							else 	
							{
								alert('Le champs "'+nom+'" doit avoir une adresse email valide.');
								formu.elements[i].focus();
								return false;
							}
			
			break;
			/////////////////////////////////////////
			case 'numerique':
			
			if (isNaN(trim(formu.elements[i].value))) {
     		  alert('Le champs "'+nom+'" est un champs numérique.\n-Pour les chiffres décimaux utilisez "." au lieu de ",".');
			  formu.elements[i].focus();
			  return false;
				   }
			else 
			 {break;}

			
			break;
			////////////////////////////////////////
		
			case 'date':
			
			if (!isDate( formu.elements[i].value)) {
     		  alert('Le champs "'+nom+'" doit comporter une date valide.\n-Format de la date jj/mm/aaaa.');
			  formu.elements[i].focus();
			  return false;
				   }
			else 
			 {break;}

			
			break;
			////////////////////////////////////////
			
			default: 
			
			break;
			/////////////////////////////////////////
        }
		  
	  }
	  
			
			
			
}

return true;

}
