// Fonctions propores à Dreamweaver -------------------------------------------------------------------
function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}
// -- FIN Fonctions propores à Dreamweaver -------------------------------------------------------------


function verifFormulaire(formulaire, arrayChToTest)
{
	lang = "fr";	
	if(arrayChToTest) // seulemnt les champs du tableau arrayChToTest sont à tester
	{
		var box = new Array();
		for(bclChToTest=0; bclChToTest < arrayChToTest.length; bclChToTest++)
		{
			// Reconstruction des objets à partir des string passer dans le tableau
			box[bclChToTest] = eval("window.document."+formulaire.name+"."+arrayChToTest[bclChToTest]);
		}
	}
	else // Tous les champs seront testés
	{
		box = formulaire.elements;
	}
	formErreur = false;
	regXp = /^[a-zA-Z0-9]*\*$/;
	
	// Définition des Messages d'erreur --------------------------------------------------------------------------------------------------
	var arrayMsg = new Array();
	arrayMsg["fr"] = new Array();	
	// Français
	arrayMsg["fr"]["vide"] = "Non renseigné !!!";	
	arrayMsg["fr"]["email"] = "e-mail incorrect !!!";
	arrayMsg["fr"]["msgFin"] = "Vérifiez que les champs du formulaire\ndont le fond est rouge sont bien remplis...";
	
	// FIN Définition des Messages d'erreur --------------------------------------------------------------------------------------------------
	
	for (bclChamps=0; bclChamps < box.length; bclChamps++)
	{
		// Reinitialisation de l'aspect du champs
		colorNormal(box[bclChamps]);
		
		// Test des champs textes
		if ((box[bclChamps].value == "" || box[bclChamps].value == arrayMsg[lang]["vide"])&& box[bclChamps].name.match(regXp)==null) // si le champs est vide
		{
			colorErreur(box[bclChamps]);			
			if (box[bclChamps].type != "password" && box[bclChamps].type != "select-one")
				box[bclChamps].value = arrayMsg[lang]["vide"];
			formErreur = true;
		}
		else if (box[bclChamps].name == "chMail") // si le champs est le mail
		{
			result = box[bclChamps].value.match(/^[a-zA-Z0-9\-\_\.]*@[a-zA-Z0-9\-\_\.]*\.[a-zA-Z]{2,4}$/);
			if (result == null)
			{
				colorErreur(box[bclChamps]);
				box[bclChamps].value = arrayMsg[lang]["email"];
				formErreur = true;
			}				
		}
	}
	if (formErreur == false)
		formulaire.submit();
	else
		alert (arrayMsg[lang]["msgFin"]);

}
function colorErreur(elementDuForm)
{
	elementDuForm.style.color = "#FF0000";
	elementDuForm.style.fontWeight = "bold";
}
function colorNormal(elementDuForm)
{
	elementDuForm.style.color = "#000000";
	elementDuForm.style.fontWeight = "normal";
}