function affich_menu(){
	document.getElementById("menu").style.display = "block"; 
	document.getElementById("cache").style.display = "none"; 
}
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_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_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];}
}
//***********************************
//Fontion sur les touches pressées
function codeTouche(evenement)
{
        for (prop in evenement)
        {
                if(prop == 'which') return(evenement.which);
        }
        return(evenement.keyCode);
}

function scanTouche(evenement, expression)
{
        //var reCarValides = /\w/;
        var reCarValides = expression;

        var codeDecimal  = codeTouche(evenement);
        var car = String.fromCharCode(codeDecimal);
        
		if (codeTouche(evenement) != 8 && codeTouche(evenement) != 0)
			var autorisation = reCarValides.test(car);
		else
			var autorisation = true;

        return autorisation;
}

//Fonction d'activation/desactivation d'éléments
function activ() 
{
	var args=activ.arguments;
   
	for (i=0; i<(args.length); i++) 
	{
		if (document.getElementById(args[i]).disabled == true)
			document.getElementById(args[i]).disabled = false;
		else
			document.getElementById(args[i]).disabled = true;
	}
}

function limitcar(texte, nb, maxi) {
 if (texte.value.length > maxi)
   texte.value = texte.value.substring(0, maxi);
 else 
   nb.value = maxi - texte.value.length;
}

function storeCaret(text)
{ // voided
}

function AddText(startTag,defaultText,endTag,champ) 
{

 if (champ.createTextRange) 
 {
  var text;
  champ.focus(champ.caretPos);
  champ.caretPos = document.selection.createRange().duplicate();
  if(champ.caretPos.text.length>0)
  {
   champ.caretPos.text = startTag + champ.caretPos.text + endTag;
  }
  else
  {
   champ.caretPos.text = startTag+defaultText+endTag;
  }
 }
 else champ.value += startTag+defaultText+endTag;
}

function afficheMaxi(chemin)
	{
	i1 = new Image;
	i1.src = chemin;
	html = '<HTML><HEAD><TITLE>TROUILLET</TITLE></HEAD><BODY LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0><CENTER><IMG SRC="'+chemin+'" BORDER=0 NAME=imageTest onLoad="window.resizeTo(document.imageTest.width+33,document.imageTest.height+61)"></CENTER></BODY></HTML>';
	//html = '<HTML><HEAD><TITLE>TROUILLET</TITLE></HEAD><BODY LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0><CENTER><IMG SRC="'+chemin+'" BORDER=0 width="955" NAME=imageTest onLoad="window.resizeTo(955,document.imageTest.height+61)"></CENTER></BODY></HTML>';
	popupImage = window.open('','_blank','toolbar=0,location=0,directories=0,menuBar=0,scrollbars=1,resizable=1');
	popupImage.document.open();
	popupImage.document.write(html);
	popupImage.document.close()
	};

function afficheMaxi_spec(chemin,largeur)
	{
	i1 = new Image;
	i1.src = chemin;
	
	if (largeur>955)
		largeur = 955;
	
	html = '<HTML><HEAD><TITLE>TROUILLET</TITLE></HEAD><BODY LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0><CENTER><IMG SRC="'+chemin+'" BORDER=0 NAME=imageTest width="'+largeur+'" onLoad="window.resizeTo('+largeur+'+33,document.imageTest.height+61)"></CENTER></BODY></HTML>';
	//html = '<HTML><HEAD><TITLE>TROUILLET</TITLE></HEAD><BODY LEFTMARGIN=0 MARGINWIDTH=0 TOPMARGIN=0 MARGINHEIGHT=0><CENTER><IMG SRC="'+chemin+'" BORDER=0 width="955" NAME=imageTest onLoad="window.resizeTo(955,document.imageTest.height+61)"></CENTER></BODY></HTML>';
	popupImage = window.open('','_blank','toolbar=0,location=0,directories=0,menuBar=0,scrollbars=1,resizable=1');
	popupImage.document.open();
	popupImage.document.write(html);
	popupImage.document.close()
	};


/********************************************************************
	Fonctions pour crypter les emails afin d'éviter le spam
********************************************************************/
var keyNoSpam='mfl52idp3n@zm7lvnc@-ds58';

function antispam_mail()
{
f_decode_all_email(keyNoSpam,'emailATraduire');
return;
}

var avaibleCharList='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ-.@_';
function f_decode_all_email(key,styleSheetRestriction)
{
	var tabs=document.getElementsByTagName('a');  //on rÃ©cupÃ¨re tous les liens de la page
	var i;
	for(i=0 ; i<tabs.length ; i++)
	{
		if(tabs[i].href)  // on filtre les ancres
		{
			if(tabs[i].href.toLowerCase().indexOf('mailto')==0)   //filtrage des liens de type url, etc...
			{
				if(styleSheetRestriction==null || (styleSheetRestriction!=null && tabs[i].className==styleSheetRestriction))
				//si styleSheetRestriction a Ã©tÃ© prcisÃ© on filtre les liens emails en fonction de leur class CSS,
				//permet de ne pas appliquer le dÃ©codage sur tous les liens
				{
					//on decrypte l'email
					var str=nospam_decrypte(tabs[i].href.replace('mailto:',''),key);  //email decrypte
					tabs[i].href='mailto:'+str; //on met Ã  jour le lien href
					
					//document.write(str.length);
					if (str.length<40)
					{
						tabs[i].innerHTML=str;		//on met Ã§ jour ce qui est affichÃ©
					}
					else
					{
						tabs[i].innerHTML=str.substr(0,40)+"...";		//on met Ã§ jour ce qui est affichÃ©
					}					
				}
			}
		}
	}
	return;
}

function nospam_decrypte(txt,key)
{
	var resu='';
	var i;
	for(i=0 ; i<txt.length ; i++) //decodage caracteres aprÃ¨s caractÃ¨res
	{	//selon l'Algorithme de cryptage de Blaise de VigÃ©nÃ¨re.
		//http://www.chez.com/algor/vigenere.htm
		var ch=txt.charAt(i);
		var index=avaibleCharList.indexOf(ch);
		var chK=key.charAt(i%key.length);
		var indexK=avaibleCharList.indexOf(chK);
		var jj=(index-indexK)%avaibleCharList.length;
		if(jj<0) { jj+=avaibleCharList.length; }
		var chResu=avaibleCharList.charAt(jj);
		resu+=''+chResu;
	}
	return resu; 
}


/*****************************************************************************************************************/
/*																												 */
/*																												 */
/*									Génération de mots de passe aléatoires										 */
/*																												 */
/*																												 */
/*****************************************************************************************************************/

function getRandomNum(lbound, ubound) {
return (Math.floor(Math.random() * (ubound - lbound)) + lbound);
}
function getRandomChar() {
var numberChars = "0123456789";
var lowerChars = "abcdefghijklmnopqrstuvwxyz";
var upperChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
var otherChars = "!@#$%&*-_+";
var charSet = '';
charSet += numberChars;
charSet += lowerChars;
charSet += upperChars;
charSet += otherChars;
return charSet.charAt(getRandomNum(0, charSet.length));
}
function getPassword(length) {
var rc = "";
if (length > 0)
rc = rc + getRandomChar();
for (var idx = 1; idx < length; ++idx) {
rc = rc + getRandomChar();
}
return rc;
}

/************************* changement mot de passe de l'organisme*************************************************/
function organisme_change_mdp(act)
{
	if (act=='true')
	{
		document.getElementById('mot_de_passe').value='';
		document.getElementById('confirmation_mot_de_passe').value='';
	}
		
	eval("document.getElementById('mot_de_passe').readOnly="+act);
	eval("document.getElementById('confirmation_mot_de_passe').readOnly="+act);
	eval("document.getElementById('passwordLength').disabled="+act);
	eval("document.getElementById('generer').disabled="+act);
}
