// Ajout du proto pour accéder à la fonction trim
String.prototype.trim = function() { return this.replace(/^\s+|\s+$/, ''); };

// areaLimit définit le nombre de caracères des textarea soumis à un tel contrôle
var areaLimit = 1000;
var timages=new Array();
var timages_survol=new Array();
var timages_inactif=new Array();
var repertoireImages="/design/fo/images/assets";
var messageErreurFormulaire="";
var strError_manqueArobase="Ceci n'est pas une adresse mail valide !";
var strError_manqueExtension="Ceci n'est pas une adresse mail valide !";
var strError_emailInvalide="Ceci n'est pas une adresse mail valide !";
var strError_balisesDetectees="Les balises (<.>, [.]) ne sont pas autoris&eacute;es dans les commentaires !";
var strError_depassementCaracteres="Les commentaires sont limit&eacute;s &agrave; "+areaLimit+" caract&egrave;res !";


// Ajout FRa : soumission des formulaires
// sForm : id/name du formulaire

function submit_form(sForm) {
if (document.getElementsByTagName('forms') && document.getElementsByTagName('forms')[sForm])
        document.getElementsByTagName('forms')[sForm].submit();
else if (document.getElementsByTagName('form') && document.getElementsByTagName('form')[sForm])
        document.getElementsByTagName('form')[sForm].submit();
else if (document.getElementsById(sForm))
        document.getElementsById(sForm).submit();
}

function init()
{
	prechargerImages();	
	//activation de l'image de larubrique
	
	var idbody=document.getElementsByTagName("body")[0].id;

	// Sélectionner l'onglet du menu principal (sauf si on est sur la home ou sur une rubrique satellite)
	if(idbody!="home" && idbody!="rubh" && idbody!="rubi" && idbody!="rubg")
		document.images["img_menu_"+idbody].src=timages_survol["img_menu_"+idbody].src;
}
function effacerchampstexte(truc)
{
	truc.value="";	
	
}
function validerRecherche(path){    
      //par défaut recherche interne
	//alert(path);	
       document.frm_recherche.target= '_self';
       document.frm_recherche.action = path ;                
       document.frm_recherche.SearchText.value = document.frm_recherche.q.value;
       document.frm_recherche.submit();
}

function effacerchampstexteBis(truc)
{
	truc.value="";	
	
}

function validerRechercheBis(path){    	
      document.frm_recherche_recette.target= '_self';
      document.frm_recherche_recette.action = path ;  
      document.frm_recherche_recette.Recette.value = document.frm_recherche_recette.Recette.value;          
      document.frm_recherche_recette.SearchText.value = document.frm_recherche_recette.q.value;
      document.frm_recherche_recette.submit();
}


function effacerchampstexteBisBis(truc)
{
	truc.value="";	
	
}

function validerRechercheBisBis(path){    	
      document.frm_recherche_recette_bis.target= '_self';
      document.frm_recherche_recette_bis.action = path ;  
      document.frm_recherche_recette_bis.Recette.value = document.frm_recherche_recette_bis.Recette.value;          
      document.frm_recherche_recette_bis.SearchText.value = document.frm_recherche_recette_bis.q.value;
      document.frm_recherche_recette_bis.submit();
}

function survolon_bloclettre(truc)
{
	var re;
	truc.style.cursor="pointer";
	re=/repos/;
	if (re.test(truc.className)==true)
	{
		var newclasse=truc.className.replace(re,"itemsurvol");
		truc.className=newclasse;
		
	}
	
}
function survolout_bloclettre(truc)
{
	var re;
	
	re=/itemsurvol/;
	if (re.test(truc.className)==true)
	{
		var newclasse=truc.className.replace(re,"repos");
		truc.className=newclasse;
	}
	
}

function survolon_lienimage(truc)
{
	var re;
	truc.style.cursor="none";
	re=/.gif/;
	if (re.test(truc.getElementsByTagName("img")[0].src)==true)
	{
		var newsrc=truc.getElementsByTagName("img")[0].src.replace(re,"_actif.gif");
		truc.getElementsByTagName("img")[0].src=newsrc;
	}
}
function survolout_image(truc)
{
	var re;
	
	re=/_actif.gif/;
	if (re.test(truc.src)==true)
	{
		var newsrc=truc.src.replace(re,".gif");
		truc.src=newsrc;
	}
	
}

function survolon_image(truc)
{
	var re;
	
	re=/.gif/;
	if (re.test(truc.src)==true)
	{
		var newsrc=truc.src.replace(re,"_actif.gif");
		truc.src=newsrc;
	}
}
function survolout_image(truc)
{
	var re;
	
	re=/_actif.gif/;
	if (re.test(truc.src)==true)
	{
		var newsrc=truc.src.replace(re,".gif");
		truc.src=newsrc;
	}
	
}


function survolon_btok(truc)
{
	truc.src=repertoireImages+"/bt_ok_actif.gif";
	truc.style.cursor="pointer";	
	
}
function survolout_btok(truc)
{
	truc.src=repertoireImages+"/bt_ok.gif";	
	
}

function survolon_lien(truc)
{
	truc.style.background="url(" + repertoireImages + "/picto_lien_fleche_over.gif) no-repeat 0px 2px";
	truc.style.color="#666666";
	truc.style.cursor="pointer";
}
function survolout_lien(truc)
{
	truc.style.background="url(" + repertoireImages + "/picto_lien_fleche_off.gif) no-repeat 0px 2px";
	truc.style.color="#000000";	
}
function alerte(truc)
{
	alert("une action a determiner "+truc);	
	
}
function survolon_base(truc)
{
	truc.style.cursor="pointer";
		
}
function survolout_base(truc)
{
	
}

function survolon_simple(truc)
{
	truc.style.cursor="pointer";
	truc.className="txtfonce";	
}
function survolout_simple(truc)
{
	truc.className="txtclair";
}

function rubnav_survolon(truc)
{
	truc.style.cursor="pointer";
	
}

function sousrubrique_survolon(truc)
{
	truc.className="rubriqueactive";	
	
}


function sousrubrique_survolout(truc)
{
	truc.className="";	
	
}





function prechargerImages()
{
	//remplissage du tableau inactif
	timages_inactif["img_menu_ruba"]=new Image(39,127);
	timages_inactif["img_menu_ruba"].src=repertoireImages+"/navp_rubriquea.gif";
	timages_inactif["img_menu_rubb"]=new Image(39,127);
	timages_inactif["img_menu_rubb"].src=repertoireImages+"/navp_rubriqueb.gif";
	timages_inactif["img_menu_rubc"]=new Image(39,127);
	timages_inactif["img_menu_rubc"].src=repertoireImages+"/navp_rubriquec.gif";
	timages_inactif["img_menu_rubd"]=new Image(39,127);
	timages_inactif["img_menu_rubd"].src=repertoireImages+"/navp_rubriqued.gif";
	timages_inactif["img_menu_rube"]=new Image(39,127);
	timages_inactif["img_menu_rube"].src=repertoireImages+"/navp_rubriquee.gif";
	timages_inactif["img_menu_rubf"]=new Image(39,127);
	timages_inactif["img_menu_rubf"].src=repertoireImages+"/navp_rubriquef.gif";
	timages_inactif["img_menu_goutte"]=new Image(16,16);
	timages_inactif["img_menu_goutte"].src=repertoireImages+"/icone_piedpage_goutte.jpg";
	
	timages_survol["img_menu_ruba"]=new Image(39,127);
	timages_survol["img_menu_ruba"].src=repertoireImages+"/navp_rubriquea_actif.gif";
	timages_survol["img_menu_rubb"]=new Image(39,127);
	timages_survol["img_menu_rubb"].src=repertoireImages+"/navp_rubriqueb_actif.gif";
	timages_survol["img_menu_rubc"]=new Image(39,127);
	timages_survol["img_menu_rubc"].src=repertoireImages+"/navp_rubriquec_actif.gif";
	timages_survol["img_menu_rubd"]=new Image(39,127);
	timages_survol["img_menu_rubd"].src=repertoireImages+"/navp_rubriqued_actif.gif";
	timages_survol["img_menu_rube"]=new Image(39,127);
	timages_survol["img_menu_rube"].src=repertoireImages+"/navp_rubriquee_actif.gif";
	timages_survol["img_menu_rubf"]=new Image(39,127);
	timages_survol["img_menu_rubf"].src=repertoireImages+"/navp_rubriquef_actif.gif";
	timages_survol["img_menu_goutte"]=new Image(16,16);
	timages_survol["img_menu_goutte"].src=repertoireImages+"/icone_piedpage_goutte.jpg";
}


function survolon_menu(trucid)
{
	if(document.images)
	{
		try
		{
			document.images[trucid].style.cursor="pointer";
			document.images[trucid].src=timages_survol[trucid].src;
  		}
		catch(e) {}
	}


}
function survolout_menu(trucid)
{
	//verification si l'id du body est diffŽrent de celui de la rubrique active
	// s'ils sont identiques il n'y a pas de survol out
	//alert(document.getElementsByTagName("body")[0].id);
	if(trucid.indexOf(document.getElementsByTagName("body")[0].id)==-1)
	{
		if(document.images)
		{
			try
			{
				document.images[trucid].style.cursor="pointer";
				document.images[trucid].src=timages_inactif[trucid].src;
			}
			catch(e) {}
		}
	}

}


function feminaValiderFormulaire(iform,strMessageValidation)
{
	messageErreurFormulaire="";
	document.getElementById("messageerreur").style.display="none";
	iform=document.getElementById(iform);
	var tix=new Array();
	var nberreurs=0;
	tix=iform.getElementsByTagName("input");

	for(var x=0;x<tix.length;x++)
	{
		if((tix[x].type=="text" || tix[x].type=="password")  && tix[x].className.indexOf("obligatoire")!=-1)
		{
			if(tix[x].value.length==0)
			{
				tix[x].style.backgroundColor="#ed0d65";
				tix[x].style.color="#ffffff";
				nberreurs++;
			}
			else
			{
				tix[x].style.backgroundColor="#ffffff";
				tix[x].style.color="#333333";
				if(tix[x].className.indexOf("courriel")!=-1)
				nberreurs=nberreurs+verifierCourriel(tix[x]);
			}

		}

	}

        // AJOUT FRA
	var ta=iform.getElementsByTagName("textarea");
	var areaFilter1 = /<\S[^><]*>/;
	var areaFilter2 = /\[\S[^\]\[]*\]/;
	for(var y=0;y<ta.length;y++)
	{
		if(ta[y].name=="corps")
		{
                        // interdire les commentaires vides ou "pseudo remplis"
			if(ta[y].value.trim()=='') {
				ta[y].style.backgroundColor="#ed0d65";
				ta[y].style.color="#ffffff";
				nberreurs++;
                        }
                        // interdire les balises
                        else if(areaFilter1.test(ta[y].value) || areaFilter2.test(ta[y].value)) {
				ta[y].style.backgroundColor="#ed0d65";
				ta[y].style.color="#ffffff";
				nberreurs++;
        			messageErreurFormulaire+='<br>'+strError_balisesDetectees;
                        }
                        // interdire trop de caractères
                        else if (ta[y].value.length > areaLimit) {
				ta[y].style.backgroundColor="#ed0d65";
				ta[y].style.color="#ffffff";
				nberreurs++;
        			messageErreurFormulaire+='<br>'+strError_depassementCaracteres;
                        }
			else
			{
				ta[y].style.backgroundColor="#ffffff";
				ta[y].style.color="#333333";
			}
                }
        }
        // FIN AJOUT FRA

	if(messageErreurFormulaire.length>0)
	{
		document.getElementById("messageerreur").style.display="block";
		document.getElementById("messageerreur").innerHTML=messageErreurFormulaire+"<br />&nbsp;";
	}

	if(nberreurs==0)
	{
		document.getElementById("messageerreur").style.display="none";
		//alert("le formulaire est valide... la methode submit() peut s'executer ");
		if(strMessageValidation.length>0)
		{
			document.getElementById("messageerreur").style.display="block";
			document.getElementById("messageerreur").innerHTML=strMessageValidation;
		}
		iform.submit();
	}
}


function verifierCourriel(nodeInput)
{
        var emailFilter = /^([a-zA-Z0-9_\.\-])+\@(([a-zA-Z0-9\-])+\.)+([a-zA-Z0-9]{2,4})+$/;
        if (emailFilter.test(nodeInput.value)) {
		nodeInput.style.backgroundColor="#ffffff";
		nodeInput.style.color="#333333";
		return 0;
        }
        else {
		nodeInput.style.backgroundColor="#ed0d65";
		nodeInput.style.color="#ffffff";
		messageErreurFormulaire+=strError_emailInvalide;
		return 1;
        }
}


function vignettedefile_survolon(truc)
{
	truc.style.cursor="pointer";
	document.getElementById("legendegalerie").innerHTML=truc.getElementsByTagName("span")[0].innerHTML;
	
}

function vignettedefile_survolout(truc)
{
	document.getElementById("legendegalerie").innerHTML="&nbsp;";
}


// Ajout FRA : compteur pour les textarea
function textCounter(field, countfield) {
        field=document.getElementById(field);
        countfield=document.getElementById(countfield);

        if (field.value.length > areaLimit) field.value = field.value.substring(0, areaLimit);
        else countfield.innerHTML = areaLimit - field.value.length;
}


