// ** fonction qui appelle la liste des infos locales, et qui l'affiche
function local_display (tab,tab_local,niv)
{

var res = new Array(new Array(),"",0);
arb_boucle (tab,tab_local,niv,res,"");
document.write ("<table width='100%' border='0' cellspacing='0' cellpadding='0'>\n");
document.write ("<tr><td class='txtmarine'>" + res[1] + "</td></tr>");
document.write ("</table><br><br>");

}

// ** fonction récursive qui parcourt l'arbo du site et qui extrait les liens sources des infos locales
function arb_boucle (tab,tab_local,niveau,result) {

   if ( tab == null ) { 
     document.write("Problème : Le Menu est vide" ); 
	 return;
	 }

   if ( tab.length == undefined ) { 
     document.write("Problème : une donnée d\'un menu comporte un problème, ou un caractère interdit" );
     return; 
	 }

   var something = false;

   // on commence a parcourir   
   for ( var cle in tab )
   {
     something = true;
     var info = tab[cle];

     // tant que des sous themes existent, on descends dans l'arbo
     if ( ( typeof info == "object" ) && ( info.length != undefined  ) )
      { 
        if ( cle == 1 ) { result[0][niveau] = tab[0][0] ; niveau = niveau + 1; } 
        // appel de la même fonction (recursive) appliquee au niveau en dessous
	    arb_boucle (info,tab_local,niveau,result) ;      
	  }

     // on arrive sur une extremité de l'arbo
     else
      {
       if ( cle == 0 && tab[0] != "") 
	     { 
             // si on est sur un thème principal de l'arbo, on le note (pour l'affichage)
             if (niveau == 1)
			   {  
				 titretheme = "<br><br><img src='../../images/spacer_bleu.gif' width='300' height='2'><br><img src='../../images/fleche_org_01.gif' width='14' height='11' align='absmiddle'>";
                 titretheme = titretheme + "<font size='2'><b>" + tab[0] + "</b></font>";
                 result[2] = 0;
               }
             var sous_local = "";

             // on regarde si on est sur une page pouvant être la source d'une des infos locales
             for (k=0; k<tab_local.length ; k++)
               {
                 // si oui, on prepare la ligne d'affichage correspondante + lien
                 if ( tab[1] == tab_local[k][0] && tab_local[k][0] != "pageshtm/en_travaux.htm")
                   {
                      result[2] = result[2] + 1;
                      sous_local = sous_local + "<img src='../../images/spacer.gif' width='1' height='10'><br><br><font face='Arial' size='1'>(";
                      for (n=2; n<niveau ; n++) { sous_local = sous_local + " > "  + result[0][n]; }
                      sous_local = sous_local + " > " + tab[0] + ")</font><br>&nbsp;&nbsp;" + "<img src='../../images/fleche_org_01.gif' width='14' height='11' align='absmiddle'>";
                      sous_local = sous_local + "<a href='../../" + tab_local[k][2] + "' class='lien1'>" + tab_local[k][1] + "</a>";
                   }
               }
             // un test pour regrouper les données par thèmes principaux, pour ne pas repeter les noms de ces derniers
             if (sous_local != "" && result[2] == 1) {result[1] = result[1] + titretheme + sous_local;}             
             if (sous_local != "" && result[2] > 1) {result[1] = result[1] + sous_local;}

         }
      }
   }

   if ( !something ) { document.writeln( "<BR> : Une rubrique n\'est pas renseignée" ); }
   niveau = niveau - 1;
}

