var debMess = "Le champ ";
var finMess = " n'est pas valide !\n";
var sAction ="";//redirection
var tbFichier= new Array("jpg","bmp","jpeg","png","gif","pdf","zip");

	function testFormulaire(formulaire,intitule,type,target) {

		sAction = target;
		squal=0;
		var titre=('\nDésolé, le formulaire présente des anomalies\n\n');
		tb= new Array();
		tbIntitule = new Array();tbIntitule = intitule.split(",");
		tbType = new Array();tbType = type.split(",");
		tbValue = new Array();
		tbName = new Array();
				
		for (j=0;j<tbType.length;j++) {		
			tbName[j]=formulaire.elements[j].name;
			tbValue[j]=formulaire.elements[j].value;
			testChamps (tbType[j],tbIntitule[j],formulaire,j);		
		}
		scanErreur(titre,formulaire);
	}

	function testChamps (type,champIntitule,formulaire,j) {
			if (type=="NonVide"){				
				if (''==tbValue[j]){ creerMessage(debMess+champIntitule+finMess,formulaire);}				
			}		
			if (type=="Text"){
				if ((tbValue[j].search(/[\D*]/)==-1)){ creerMessage(debMess+champIntitule+finMess,formulaire);}				
			}
			if (type=="Mail") {		
				if ((tbValue[j].search(/.+@.+\..+/)==-1) || (tbValue[j].search(/ /)!=-1))  { creerMessage(debMess+champIntitule+finMess,formulaire);}
			}
			if (type=="MailVide") {		
				if ('' != tbValue[j] && ((tbValue[j].search(/.+@.+\..+/)==-1) || (tbValue[j].search(/ /)!=-1)))  { creerMessage(debMess+champIntitule+finMess,formulaire);}

				var temoin= 0;
				for(k=0;k<tbValue.length;k++){
					if((tbValue[k] == tbValue[j]) && '' != tbValue[j]){temoin++;}
				}
				
				if(1<temoin){creerMessage(debMess+champIntitule+' est en doublon !\n',formulaire);}
			}
			if (type=="Password") {		
				if (tbValue[j].search(/[\D*\d*]/)==-1) { creerMessage(debMess+champIntitule+finMess,formulaire);}
			}
			if (type=="Confirmation") {				
				if ((tbValue[j])!=(tbValue[j-1])) { creerMessage(debMess+champIntitule+finMess,formulaire); }			
			}
			if (type=="Num") {				
				if ((tbValue[j].search(/[\D*]/)!=-1) || tbValue[j].length < 9) { creerMessage(debMess+champIntitule+finMess,formulaire); }			
			}
			if ((type=="Checkbox") || (type=="Radio")) {				
				if (formulaire[tbName[j]].checked==false) { creerMessage(debMess+champIntitule+finMess,formulaire); }			
			}
			if (type=="MultiSelect"){				
				selection= false;
				
				for(i=0;i<(formulaire[tbName[j]].length);i++){
					if(''!=formulaire[tbName[j]].options.value)					
						selection= true;
				}
				if(!selection)
					creerMessage(debMess+champIntitule+finMess,formulaire);
			}		
			if (type=="Select") {
				if (formulaire[tbName[j]].options[formulaire[tbName[j]].selectedIndex].value=="default") { creerMessage(debMess+champIntitule+finMess,formulaire); }			
			}
			if (type=="Fichier" && ''!=tbValue[j]){
					var match=0;
					for(i=0;i<tbFichier.length;i++){
						if(tbValue[j].search(tbFichier[i])!=-1){match++;}
					}
					if (0==match){ creerMessage(debMess+champIntitule+finMess,formulaire);}
			}
			if ((type=="Radio")) {
				thisChecked= 0;
				for(i=0;i<formulaire[tbName[j]].length;i++){
					if (formulaire[tbName[j]][i].checked==true)
						thisChecked++;
				}
				if(0>=thisChecked)
					creerMessage(debMess+champIntitule+finMess,formulaire);
					
				thisChecked= 0;
			}			
	}	

	function creerMessage(parNom,formulaire) {
		
		squal++;			
		tb[squal]=(parNom);
		return;
	}
	
	function scanErreur(titre,formulaire){
		if (tb.length!=0) {			
			var finalMess =(titre+tb.join(" "));
			alert(finalMess);
			//layerWrite(formulaire,finalMess);
		} else {		
			var finalMess =("");
			//sendMail(formulaire);
			formulaire.action=sAction;		
			formulaire.submit();
		}
	}

	function layerWrite(formulaire,message) {	
		document.getElementById("liste").innerHTML = ('<center><FONT SIZE="2" FACE="Arial"><b>'+message+'</b></font></center>\n');
	}
