/************************************************************/
/*															*/
/*															*/
/*	Fonctions de vérification des élements de formulaires	*/
/*															*/
/*	v1.1.6b       Copyright Comm'net 2003 - www.commnet.fr  */
/************************************************************/

//	Retourne les infos importants sur le formulaire
function ReturnArrayInfo(check_infos){
	form = check_infos[0];
	couleurpb = check_infos[1];
	couleurok = check_infos[2];
	couleurradio = check_infos[3];
}


//	Retourne le formulaire
function ReturnErrors(check_infos, errors, page){

	ReturnArrayInfo(check_infos);
	
	if (errors.length==1) {
			txt_error = '';
			for (i=0; i<errors.length; i++){
				txt_error+= ''+errors[i]+'\n';
			}		
		alert("Merci de corriger l' erreur suivante :\n"+txt_error);
		//alert('test');
		sendform = false;
	 	return sendform;
		
	}
	else {
		if (errors.length>1) {
			txt_error = '';
			for (i=0; i<errors.length; i++){
				txt_error+= ''+errors[i]+'\n';
			}
			alert('Merci de corriger les '+errors.length+' erreurs suivantes :\n'+txt_error);
		sendform = false;
	 	return sendform;
		}
		else {
			document.forms[form].action = page;
			document.forms[form].submit;
		sendform = true;
	 	return sendform;
		}
	}
}



//	Vérification champ texte / valeur
function VerifInputNonVide(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);

	if (document.forms[form].elements[nom].value == valeur) 
	{
		document.forms[form].elements[nom].style.backgroundColor=couleurpb;
			if (errors.length==0) {
				document.forms[form].elements[nom].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		//alert("Form ["+form+"] - Element ["+nom+"]");
		document.forms[form].elements[nom].style.backgroundColor=couleurok;
	}
}

//	Vérification champ texte : valeur is_numérique avec ou sans comparaison de valeur et si le champs est vide ou non
function VerifInputNumerique(nom, valeur1, valeur2, msg, vide, check_infos, errors){

	ReturnArrayInfo(check_infos);
	//alert("vide = "+vide+" ");
	// si le champ doit être indiqué
	if (vide == 1){
		// 	sans comparaison de valeur
		if ((valeur1=='') && (valeur2=='')){
			if ((document.forms[form].elements[nom].value == '') || (isNaN(document.forms[form].elements[nom].value))){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
	
		//	avec comparaison sur 2 valeurs
		if ((valeur1!='') && (valeur2!='')){
			if ((document.forms[form].elements[nom].value <= valeur1) || (document.forms[form].elements[nom].value > valeur2) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
	
		//	avec comparaison >valeur1
		if ((valeur1!='') && (valeur2=='')){
			if ((document.forms[form].elements[nom].value <= valeur1) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}

		//	avec comparaison <valeur2
		if ((valeur1=='') && (valeur2!='')){
			if ((document.forms[form].elements[nom].value > valeur2) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
		
	}

	// sinon
	
	if (vide == 0){
		// 	sans comparaison de valeur
		if ((valeur1=='') && (valeur2=='')){
			if (isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
	
		//	avec comparaison sur 2 valeurs
		if ((valeur1!='') && (valeur2!='')){
			if ((document.forms[form].elements[nom].value <= valeur1) || (document.forms[form].elements[nom].value > valeur2) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
	
		//	avec comparaison >valeur1
		if ((valeur1!='') && (valeur2=='')){
			if ((document.forms[form].elements[nom].value <= valeur1) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}

		//	avec comparaison <valeur2
		if ((valeur1=='') && (valeur2!='')){
			if ((document.forms[form].elements[nom].value > valeur2) || isNaN(document.forms[form].elements[nom].value)){
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
 				errors[errors.length] = msg;
	 			return errors;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
		}
		
}

}

//	Vérifie si une adresse email est valide
function VerifInputIsMail(nom, msg, vide, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 1){
		if ((document.forms[form].elements[nom].value.indexOf('@') != -1) && (document.forms[form].elements[nom].value.indexOf('@') > 0) && (document.forms[form].elements[nom].value.length > document.forms[form].elements[nom].value.indexOf('.')+1))
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurok;
		}
		else 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
			errors[errors.length] = msg;
			return errors;
		}  
	}
	
	if (vide == 0){
		if (document.forms[form].elements[nom].value != ''){
			if ((document.forms[form].elements[nom].value.indexOf('@') != -1) && (document.forms[form].elements[nom].value.indexOf('@') > 0) && (document.forms[form].elements[nom].value.length > document.forms[form].elements[nom].value.indexOf('.')+1))
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurok;
			}
			else 
			{
				document.forms[form].elements[nom].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[nom].focus();
					}
				errors[errors.length] = msg;
				return errors;
			}  
		}
	}
}


function VerifTextareaNonVide(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (document.forms[form].elements[nom].value == valeur) 
	{
		document.forms[form].elements[nom].style.backgroundColor=couleurpb;
			if (errors.length==0) {
				document.forms[form].elements[nom].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		document.forms[form].elements[nom].style.backgroundColor=couleurok;
	}
}

function VerifTextareaLimitChar(nom, valeur, vide, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 1){
		if ((document.forms[form].elements[nom].value == '') || (document.forms[form].elements[nom].value.length > valeur))
		{
			document.forms[form].elements[nom].value = document.forms[form].elements[nom].value.substring(0,valeur);
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
	 		errors[errors.length] = msg;
	 		return errors;
		}
		else 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurok;
		}
	}	
	
	if (vide == 0)
	{
		if (document.forms[form].elements[nom].value.length > valeur) 
		{
			document.forms[form].elements[nom].value = document.forms[form].elements[nom].value.substring(0,valeur);
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
	 		errors[errors.length] = msg;
	 		return errors;
		}
		else 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurok;
		}
	}
}


function VerifInputIsDate(date, vide, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 0){
		//d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
		d = document.forms[form].elements[date].value;
			if (d == '//'){
			  	document.forms[form].elements[date].style.backgroundColor=couleurok;
			}
			else {
				e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
					if (!e.test(d)) {
  						test = 1;
  					}
					else {
						test =0;
					}
  				
				j = parseInt(d.split("/")[0], 10); // jour
				m = parseInt(d.split("/")[1], 10); // mois
				a = parseInt(d.split("/")[2], 10); // année
  				
  					if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  					else fev = 28;

				nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
					if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] ) && (d.length == 10)){
  						document.forms[form].elements[date].style.backgroundColor=couleurok;
  					}
  					else {
  						document.forms[form].elements[date].style.backgroundColor=couleurpb;
							if (errors.length==0) {
								document.forms[form].elements[date].focus();
							}
						errors[errors.length] = msg;
						return errors;
  					}
 				
			}

	}
	if (vide == 1){
		
		d = document.forms[form].elements[date].value;
		e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
			if ((d=='//') || (!e.test(d))) {
  				test = 1;
  			}
			else {
				test =0;
			}
  		
		j = parseInt(d.split("/")[0], 10); // jour
		m = parseInt(d.split("/")[1], 10); // mois
		a = parseInt(d.split("/")[2], 10); // année
  		
  			if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  			else fev = 28;
	
			nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
	
			if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] ) && (d.length == 10)){
				document.forms[form].elements[date].style.backgroundColor=couleurok;
  			}
  			else {
  				document.forms[form].elements[date].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[date].focus();
					}
				errors[errors.length] = msg;
				return errors;
  			}
 	}
  
}


function VerifInputIsHour(heure, vide, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 0){
		//d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
		d = document.forms[form].elements[heure].value;
			if (d == '//'){
			  	document.forms[form].elements[heure].style.backgroundColor=couleurok;
			}
			else {
				e = new RegExp("^[0-9]{1,2}\:[0-9]{1,2}$");
					if (!e.test(d)) {
  						test = 1;
  					}
					else {
						test =0;
					}
  				
		h = parseInt(d.split(":")[0], 5); // heure
		m = parseInt(d.split(":")[1], 5); // minute

			if ((test == 0) && ( h >= 0 && h <=23 && m >= 0 && m <= 59) && (d.length == 5)){
				document.forms[form].elements[heure].style.backgroundColor=couleurok;
  			}
  					else {
  						document.forms[form].elements[heure].style.backgroundColor=couleurpb;
							if (errors.length==0) {
								document.forms[form].elements[heure].focus();
							}
						errors[errors.length] = msg;
						return errors;
  					}
 				
			}

	}
	if (vide == 1){
		
		d = document.forms[form].elements[heure].value;
		e = new RegExp("^[0-9]{1,2}\:[0-9]{1,2}$");
			if ((d==':') || (!e.test(d))) {
  				test = 1;
  			}
			else {
				test =0;
			}
  		
		h = parseInt(d.split(":")[0], 5); // heure
		m = parseInt(d.split(":")[1], 5); // minute

			if ((test == 0) && ( h >= 0 && h <=23 && m >= 0 && m <= 59) && (d.length == 5)){
				document.forms[form].elements[heure].style.backgroundColor=couleurok;
  			}
  			else {
  				document.forms[form].elements[heure].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[heure].focus();
					}
				errors[errors.length] = msg;
				return errors;
  			}
 	}
  
}


function VerifInputsAreDate(jour, mois, annee, vide, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 0){
		d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
			if (d == '//'){
			  	document.forms[form].elements[jour].style.backgroundColor=couleurok;
				document.forms[form].elements[mois].style.backgroundColor=couleurok;
				document.forms[form].elements[annee].style.backgroundColor=couleurok;
			}
			else {
				e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
					if (!e.test(d)) {
  						test = 1;
  					}
					else {
						test =0;
					}
  				
				j = parseInt(d.split("/")[0], 10); // jour
				m = parseInt(d.split("/")[1], 10); // mois
				a = parseInt(d.split("/")[2], 10); // année
  				
  					if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  					else fev = 28;

				nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
					if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] )){
  						document.forms[form].elements[jour].style.backgroundColor=couleurok;
						document.forms[form].elements[mois].style.backgroundColor=couleurok;
						document.forms[form].elements[annee].style.backgroundColor=couleurok;
  					}
  					else {
  						document.forms[form].elements[jour].style.backgroundColor=couleurpb;
						document.forms[form].elements[mois].style.backgroundColor=couleurpb;
						document.forms[form].elements[annee].style.backgroundColor=couleurpb;
							if (errors.length==0) {
								document.forms[form].elements[jour].focus();
							}
						errors[errors.length] = msg;
						return errors;
  					}
 				
			}

	}
	if (vide == 1){
		d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
		e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
			if ((d=='//') || (!e.test(d))) {
  				test = 1;
  			}
			else {
				test =0;
			}
  		
		j = parseInt(d.split("/")[0], 10); // jour
		m = parseInt(d.split("/")[1], 10); // mois
		a = parseInt(d.split("/")[2], 10); // année
  		
  			if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  			else fev = 28;
	
			nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
	
			if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] )){
				document.forms[form].elements[jour].style.backgroundColor=couleurok;
				document.forms[form].elements[mois].style.backgroundColor=couleurok;
				document.forms[form].elements[annee].style.backgroundColor=couleurok;
  			}
  			else {
  				document.forms[form].elements[jour].style.backgroundColor=couleurpb;
				document.forms[form].elements[mois].style.backgroundColor=couleurpb;
				document.forms[form].elements[annee].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[jour].focus();
					}
				errors[errors.length] = msg;
				return errors;
  			}
 	}
  
}

//	Vérification champ select / valeur
function VerifSelectNonVide(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (document.forms[form].elements[nom].value == valeur) 
	{
		document.forms[form].elements[nom].style.backgroundColor=couleurpb;
			if (errors.length==0) {
				document.forms[form].elements[nom].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		document.forms[form].elements[nom].style.backgroundColor=couleurok;
	}
}



function VerifSelectsAreDate(jour, mois, annee, valjour, valmois, valannee, vide, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	if (vide == 0){
		d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
		d2 = valjour+'/'+valmois+'/'+valannee;
			if (d == d2){
			  	document.forms[form].elements[jour].style.backgroundColor=couleurok;
				document.forms[form].elements[mois].style.backgroundColor=couleurok;
				document.forms[form].elements[annee].style.backgroundColor=couleurok;
			}
			else {
				e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
					if (!e.test(d)) {
  						test = 1;
  					}
					else {
						test =0;
					}
  				
				j = parseInt(d.split("/")[0], 10); // jour
				m = parseInt(d.split("/")[1], 10); // mois
				a = parseInt(d.split("/")[2], 10); // année
  				
  					if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  					else fev = 28;

				nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
					if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] )){
  						document.forms[form].elements[jour].style.backgroundColor=couleurok;
						document.forms[form].elements[mois].style.backgroundColor=couleurok;
						document.forms[form].elements[annee].style.backgroundColor=couleurok;
  					}
  					else {
  						document.forms[form].elements[jour].style.backgroundColor=couleurpb;
						document.forms[form].elements[mois].style.backgroundColor=couleurpb;
						document.forms[form].elements[annee].style.backgroundColor=couleurpb;
							if (errors.length==0) {
								document.forms[form].elements[jour].focus();
							}
						errors[errors.length] = msg;
						return errors;
  					}
 				
			}

	}
	if (vide == 1){
		d = document.forms[form].elements[jour].value+'/'+document.forms[form].elements[mois].value+'/'+document.forms[form].elements[annee].value;
		e = new RegExp("^[0-9]{1,2}\/[0-9]{1,2}\/([0-9]{2}|[0-9]{4})$");
		d2 = valjour+'/'+valmois+'/'+valannee;
			if ((d == d2) || (!e.test(d))) {
  				test = 1;
  			}
			else {
				test =0;
			}
  		
		j = parseInt(d.split("/")[0], 10); // jour
		m = parseInt(d.split("/")[1], 10); // mois
		a = parseInt(d.split("/")[2], 10); // année
  		
  			if (a%4 == 0 && a%100 !=0 || a%400 == 0) fev = 29;
  			else fev = 28;
	
			nbJours = new Array(31,fev,31,30,31,30,31,31,30,31,30,31);
	
			if ((test == 0) && ( m >= 1 && m <=12 && j >= 1 && j <= nbJours[m-1] )){
				document.forms[form].elements[jour].style.backgroundColor=couleurok;
				document.forms[form].elements[mois].style.backgroundColor=couleurok;
				document.forms[form].elements[annee].style.backgroundColor=couleurok;
  			}
  			else {
  				document.forms[form].elements[jour].style.backgroundColor=couleurpb;
				document.forms[form].elements[mois].style.backgroundColor=couleurpb;
				document.forms[form].elements[annee].style.backgroundColor=couleurpb;
					if (errors.length==0) {
						document.forms[form].elements[jour].focus();
					}
				errors[errors.length] = msg;
				return errors;
  			}
 	}
  
}

//	Vérification champ select multiple / valeur
function VerifSelectMultipleNonVide(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);

	multarray = document.forms[form].elements[nom];
	cpt = 0;
	for (i=0; i<multarray.length; i++)
	{
		if ((multarray[i].selected==true) && (multarray[i].value != valeur))
		{
			cpt++;
		}
	}
	
	if (cpt == 0)
	{
		document.forms[form].elements[nom].style.backgroundColor=couleurpb;
			if (errors.length==0) {
				document.forms[form].elements[nom].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		document.forms[form].elements[nom][0].selected=false;
		document.forms[form].elements[nom].style.backgroundColor=couleurok;
	}

}



//	Vérification checkboxes / nombre à cocher
function VerifCheckboxSelected(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);

	multarray = document.forms[form].elements[nom];
	cpt = 0;
	for (i=0; i<multarray.length; i++)
	{
		if (multarray[i].checked==true)
		{
			cpt++;
		}
	}
	
	if (cpt < valeur)
	{
		for (i=0; i<multarray.length; i++)
		{
			document.forms[form].elements[nom][i].style.backgroundColor=couleurpb;
		}
			if (errors.length==0) {
				document.forms[form].elements[nom][0].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		for (i=0; i<multarray.length; i++)
		{
			document.forms[form].elements[nom][i].style.backgroundColor=couleurok;
		}
	}

}


//	Vérification checkboxes / nombre à cocher
function VerifRadioSelected(nom, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);

	multarray = document.forms[form].elements[nom];
	cpt = 0;
	for (i=0; i<multarray.length; i++)
	{
		if (multarray[i].checked==true)
		{
			cpt++;
		}
	}
	
	if (cpt == 0)
	{
		for (i=0; i<multarray.length; i++)
		{
			document.forms[form].elements[nom][i].style.backgroundColor=couleurpb;
		}
			if (errors.length==0) {
				document.forms[form].elements[nom][0].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		for (i=0; i<multarray.length; i++)
		{
			document.forms[form].elements[nom][i].style.backgroundColor=couleurok;
		}
	}

}

//	Vérification champs texte similaires
function VerifInputsAreSimilar(nom, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);

	test = 0;
	if (nom.length>=2) {
	 	for (i=0; i<nom.length; i++){
			elem1 = ''+nom[0]+'';
			elemi = ''+nom[i]+'';
				if ((document.forms[form].elements[elem1].value=='') || (document.forms[form].elements[elemi].value=='') || (document.forms[form].elements[elem1].value != document.forms[form].elements[elemi].value)){
					test++;
				}
		}
		
		if (test >0){
			for (i=0; i<nom.length; i++){
				elemi = ''+nom[i]+'';
				document.forms[form].elements[elemi].style.backgroundColor=couleurpb;
			}
			if (errors.length==0) {
				elem1 = ''+nom[0]+'';
				document.forms[form].elements[elem1].focus();
			}
			errors[errors.length] = msg;
	 		return errors;	
		}
		else {
			for (i=0; i<nom.length; i++){
				elemi = ''+nom[i]+'';
				document.forms[form].elements[elemi].style.backgroundColor=couleurok;
			}
		}
	 }
}


function VerifInputIsPassword(nom, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	var regEx=/^[a-zA-Z0-9]{4,20}$/;
	var ret=false;
		
		if (regEx.test(document.forms[form].elements[nom].value)) ret=true;
	
		if (ret === true) 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurok;		

		}
		else {
		//alert(document.forms[form].elements[nom].);
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
	 		errors[errors.length] = msg;
	 		return errors;
		}
}


function VerifInputIsLogin(nom, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	var regEx=/^[a-zA-Z0-9]{4,20}$/;
	var ret=false;
		
		if (regEx.test(document.forms[form].elements[nom].value)) ret=true;
	
		if (ret == false) 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
	 		errors[errors.length] = msg;
	 		return errors;
		}
		else {
			document.forms[form].elements[nom].style.backgroundColor=couleurok;
		}
}


function HighLightChamp(nom, msg, check_infos){

	ReturnArrayInfo(check_infos);
	document.forms[form].elements[nom].style.backgroundColor=couleurpb;
	document.forms[form].elements[nom].focus();	
	alert(' '+msg+' ');
	document.forms[form].elements[nom].value='';

}

//	Vérification champ texte / partie contenue
function VerifInputWithOutNeedle(nom, valeur, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	if (document.forms[form].elements[nom].value.indexOf(valeur) != -1) 
	{
		document.forms[form].elements[nom].style.backgroundColor=couleurpb;
			if (errors.length==0) {
				document.forms[form].elements[nom].focus();
			}
	 	errors[errors.length] = msg;
	 	return errors;
	}
	else {
		document.forms[form].elements[nom].style.backgroundColor=couleurok;
	}
}

function VerifInputIsSearchable(nom, msg, check_infos, errors){

	ReturnArrayInfo(check_infos);
	
	var regEx=/^[a-zA-Z0-9@_\'\s+-]{3,15}$/;
	var ret=false;
		
		if (regEx.test(document.forms[form].elements[nom].value)) ret=true;
	
		if (ret == false) 
		{
			document.forms[form].elements[nom].style.backgroundColor=couleurpb;
				if (errors.length==0) {
					document.forms[form].elements[nom].focus();
				}
	 		errors[errors.length] = msg;
	 		return errors;
		}
		else {
			document.forms[form].elements[nom].style.backgroundColor=couleurok;
		}
}