/*
*** DaMenu Ver 0.13 au 07/03/2002 ***
Utilisation :
exemple : onMouseOver="MM_callJS('daMenu('pomme',1,1)')"

daMenu([le nom du calque à afficher dans l'ex ci dessus c pomme], [le niveau de votre calque dans l'arborscence : de 1 à n dans l'ex ci dessous c 1], [facultatif : si vous voulez que les sousrubriques s'affichent sur un clic de la rubrique puis qu'apres ce  clic les autres sous rubriques s'affichent sur un survol (comme le menu windows) il faut rajouter une virgule et inscrire 1 dans le onmouseover des liens des calques de niveau 1 comme dans l'ex ci dessus])

Note sur la parade du bug des menus déroulants :
daMenu cache automatiquement tous les calque portant la nom "déroulant
*/

// *** Délcaration des varaibles ***
var stock = new Array(); // Le tableau qui stock le nom des calques
var check = 0; // intialisation du check

// *** Mise en place du calque récepteur des cliques "en dehors" ***    ATTENTION => !!!!!!!!!!!!!!!!!!!!(ajout de la fonction MM_swapImgRestore() dans le mouseover special pour pierre de bourgogne)!!!!!!!!!!!!!!!!!
document.write('<div id="blank" style="position:absolute; left:0px; top:95px; width:677x; height:120px; z-index:0; visibility: hidden;"><img src="pics/blank.gif" width="677" height="120" onmouseover="daMenu(\'blank\',1,1);MM_swapImgRestore()"></div>');

// *** Utiliser la bonne instruction en fonction du navigateur ***
if (document.getElementById) {
  prefixe = "moncalque = document.getElementById(";
  suffixe = ")";
  show = "; moncalque.style.visibility = 'visible'";
  hide = "; moncalque.style.visibility = 'hidden'";  }

else if (document.all) {
  prefixe = "document.all[";
  suffixe = "]";
  show = ".style.visibility = 'visible'";
  hide = ".style.visibility = 'hidden'"; }

else if (document.layers) {
  prefixe = "document.layers[";
  suffixe = "]";
  show = ".visibility = 'show'";
  hide = ".visibility = 'hidden'"; }

// *** Corps du script : le niveau à cacher, le calque à afficher, et si le mouseOver est en survol
function daMenu(afficher,niveau,survol) {
// * Détection du second mousOver
if ((survol == 1) && (stock[0] != null)) { check = 1; }
if (!survol) { check = 1; }
if (survol == 0) { check = 0; } // pour re-initialiser onClick

  // * Cacher les calques et destockage dans sotck
  if ((niveau) && (stock.length >= niveau)) {
        for(i = stock.length; i >= niveau; i--) {
          showhide(stock[(i-1)],0);
          stock = stock.slice(0,(i-1)); }

        // * Afficher les calques "menu deroulant" deroulant1, deroulant2, etc... et cacher blank
    j=1; while (eval(prefixe+"'deroulant'+j"+suffixe)) { showhide('deroulant'+j,1); j++; }
    showhide('blank',0);
  }

  // * Afficher les claques et stockage dans stock
  if ((afficher) && (check == 1)) {
    showhide(afficher, 1);
        for(i = stock.length; i < niveau; i++) {
    if (stock[i] == null) { stock[i] = afficher; }

    // * Cacher les calques "menu deroulant" deroulant1, deroulant2, etc... et afficher blank
    j=1; while (eval(prefixe+"'deroulant'+j"+suffixe)) { showhide('deroulant'+j,0); j++; }
        showhide('blank', 1);
    }
  }
}

// Showhide pour afficher ou cacher un calque
function showhide (nom, visible) {
  if (visible == 1) { eval(prefixe+"nom"+suffixe+show); }
  else { eval(prefixe+"nom"+suffixe+hide); }
}

// cacher les menus d'un certain niveau a partir d un autre calque (ajouter specialement pour pierre de bourgogne)
function hideall (niveau) {
  for(i = niveau; i < stock.length; i++) {
          showhide(stock[i],0);
        }
}

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];}
}
function MM_reloadPage(init) {  //reloads the window if Nav4 resized
  if (init==true) with (navigator) {if ((appName=="Netscape")&&(parseInt(appVersion)==4)) {
    document.MM_pgW=innerWidth; document.MM_pgH=innerHeight; onresize=MM_reloadPage; }}
  else if (innerWidth!=document.MM_pgW || innerHeight!=document.MM_pgH) location.reload();
}
MM_reloadPage(true);

function MM_showHideLayers() { //v6.0
  var i,p,v,obj,args=MM_showHideLayers.arguments;
  for (i=0; i<(args.length-2); i+=3) if ((obj=MM_findObj(args[i]))!=null) { v=args[i+2];
    if (obj.style) { obj=obj.style; v=(v=='show')?'visible':(v=='hide')?'hidden':v; }
    obj.visibility=v; }
}

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}