/* JAVASCRIPT per GESTIONE MENU' AD ALBERO (per CSS2)
LA gestione avviene tramite ID legati agli UL delle liste del menù.
Il menù ha queste caratteristiche:
- si apre e chiude
- fa illuminare la voce del menù ralativa ad una pagina in cui si giunge
- gestisce solo 3 LIVELLI di sottomenu: es 01-23-04

E' necessario che :
!!! Nella pagina da legare via menù, deve essere collocato un ID nel BODY ( es. <body id="pag01-1-1"> )
tale id permette la gestione dell'illuminazione della pagina corrispondente via CSS2
e la contemporanea "apertura" delle liste del menù gerarchicamente legate alla pagina in questione.

l'ID DEVE AVERE LA STRUTTURA : id=pagNN-NN-N ..è obbligatorio che le prime due cifre siano due. (1 = 01 , 2 = 02 )

IN questo JS : 
99 è il numero massimo di sottoelementi di un ramo del menù

 */

var status;

/* funzione principale */
function mmenu(ID) {
var clic = document.getElementById(ID);
status = clic.style.display;
var uls = document.getElementsByTagName("ul");
for (i=0;i<uls.length;i++) {
if(uls[i].getAttribute("class")=="submenu")uls[i].style.display = "none";
if(uls[i].getAttribute("id") && uls[i].getAttribute("id").search("submenu-")!= -1) uls[i].style.display = "none";
}
if(ID) { getmenu(ID); }
}

/* gestione del menu */
function getmenu(ID) {
var menu = document.getElementById(ID);
var root = ID.substring(0, 10);
var menuroot = document.getElementById(root);
if(ID.length > 13) {
var sub = ID.substring(0, 13);
var menusub = document.getElementById(sub);
}
//var display = menu.style.display;
var display = status;
menuroot.style.display = "block";
if(ID.length > 13) { menusub.style.display = "block"; }
menu.style.display = (display == "block") ? "none" : "block";
}

/* inizializzazione del menu */
function inizializzazione() {
var uls = document.getElementsByTagName("ul");
for (i=0;i<uls.length;i++) {
if(uls[i].getAttribute("class")=="submenu")uls[i].style.display = "none";
if(uls[i].getAttribute("id") && uls[i].getAttribute("id").search("submenu-")!= -1) uls[i].style.display = "none";
}
var mID = 'submenu-' + document.getElementsByTagName("body")[0].getAttribute("id").substr(3);
if(mID) { getmenu(mID); }
}

/* link esterni */
window.onerror = HandleError;function HandleError() {return true}
function externalLinks() { 
if (!document.getElementsByTagName) return;
var anchors = document.getElementsByTagName("a"); 
for (var i=0; i<anchors.length; i++) { 
	var anchor = anchors[i]; 
	if (anchor.getAttribute("href") && anchor.getAttribute("rel") == "esterno") {
		anchor.target = "_blank";
		if (anchor.title) anchor.title += " (Il link apre una nuova finestra)";
		if (!anchor.title) anchor.title = "Il link apre una nuova finestra";
	} 
} 
} 

function inizia() {
	externalLinks();
	inizializzazione();
}

window.onload = inizia; 