/* lista di item di menu principali */
var menuItems = new Array();

/* costruzione del menu 

per inserire una nuova voce di menu digitare addMenuItem(id,padre,descrizione,link,rimani aperto)

dove

id = id dell'item di menu che si sta creando
padre = id del padre dell'item di menu che si sta creando
descrizione = testo che appare nel menu
link = URL a cui punta il link. Se non c'e' non viene attivato alcun link
rimani aperto = true/false indica se la voce di menu deve essere espansa al momento della creazione
*/


//primo livello
function buildMenu()
{
	addMenuItem("WHO","",menuItemsLabels["WHO"],"/chisiamo.html",true);
	//addMenuItem("GAB","",menuItemsLabels["GAB"],"#",true);
	//addMenuItem("ART","",menuItemsLabels["ART"],"#",true);
    //addMenuItem("IEM","",menuItemsLabels["IEM"],"#",true);
    //addMenuItem("WEF","",menuItemsLabels["WEF"],"#",true);
	addMenuItem("RIC","",menuItemsLabels["RIC"],"/ricerche.html",true);
	addMenuItem("STR","",menuItemsLabels["STR"],"/strumenti.html",true);
	addMenuItem("PUB","",menuItemsLabels["PUB"],"/pubblicazioni.html",true);
	addMenuItem("INI","",menuItemsLabels["INI"],"/iniziative.html",false);
	addMenuItem("LIN","",menuItemsLabels["LIN"],"/link.html",false);
	
	//livelli successivi
	addMenuItem("MDD","PUB",menuItemsLabels["MDD"],"/pubbl/cappapers.html",false);
	addMenuItem("ALP","PUB",menuItemsLabels["ALP"],"/pubbl/altrepubbl.html",false);
	addMenuItem("SSI","PUB",menuItemsLabels["SSI"],"/pubbl/solosuinternet.html",false);
	addMenuItem("MEM","WHO",menuItemsLabels["MEM"],"/membri.html",false);
	addMenuItem("STA","WHO",menuItemsLabels["STA"],"/statuto.html",false);
    addMenuItem("MSS","STR",menuItemsLabels["MSS"],"/strumenti/MAPP.html",false);
	addMenuItem("MSD","STR",menuItemsLabels["MSD"],"/strumenti/CAPP_DYN.html",false);
	addMenuItem("ICE","STR",menuItemsLabels["ICE"],"/strumenti/ICESMO.html",false);
    addMenuItem("WEF","RIC",menuItemsLabels["WEF"],"/ricerche/welfare.html",false);
	addMenuItem("GEN","RIC",menuItemsLabels["GEN"],"/ricerche/gendercapp.html",false);
	addMenuItem("ART","RIC",menuItemsLabels["ART"],"/ricerche/artcapp.html",false);
}


/********************************
 *      DO NOT EDIT BELOW       *
 ********************************/

// oggetto che descrive l'item di menu
function menuItem()
{
	var obj = new Object();
	obj.id = "";
	obj.description = "";
	obj.stayOpened = false;
	obj.url = "#";
	obj.items = new Array();
	return obj;
}

/* metodo per inserire un item fra le voci di menu */
function addMenuItem(id,parentId,description,url,stayOpened)
{
	var parentItem = getMenuItem(menuItems,parentId);
	var item = new menuItem();
	item.id = id;
	item.description = description;
	var pos = url.lastIndexOf(".");
	url = url.substr(0,pos)+(langId == "IT" ? "" : langId)+url.substr(pos,url.length);
	item.url = url;
	item.stayOpened = stayOpened;	
	if(parentItem == null)
		menuItems[menuItems.length] = item;
	else
		parentItem.items[parentItem.items.length] = item;
}

/* metodo per avere un oggetto item di menu */
function getMenuItem(itemsList,id)
{
	var retValue = null;
	if(itemsList.length > 0)
		for(var i= 0; i < itemsList.length; i++)
			if(itemsList[i].id == id)
			{
				retValue = itemsList[i];
				break;
			}
	//se non trovo...
	if(retValue == null)
	{
		if(itemsList.length > 0)
			for(var i= 0; i < itemsList.length; i++)
				if((retValue = getMenuItem(itemsList[i].items,id)) != null)
				break;
	}
	return retValue;
}

/* metodo per generare il menu nell'HTML*/
function writeMenu(list, elem,root)
{
	buildMenu();
	createTree(list, elem,root);
}

function createTree(list, elem,root)
{
	var innerHTML = "";
	var imgSrcNO = (root) ? "menuItemNO.gif" : "menuItemNO2.gif";
	var imgSrcO = "menuItemO.gif";
	for(var i=0; i < list.length; i++)
	{
		//controllo eventuali doppioni
		if(document.getElementById("divItemMenu_"+list[i].id))
			alert("L'item con id "+menuItems[i].id+" e' gia' presente");
		else
		{
			//costruisco il div
			innerHTML = '<div id="divItemMenu_'+list[i].id+'" class="itemMenuDiv'+((root) ? "" : "2")+'"></div>';
			elem.innerHTML += innerHTML;
			
			//prendo l'elemento appnea costruito
			var elem2 = document.getElementById("divItemMenu_"+list[i].id);
	
			//inserisce le immagini e la descrizione
			if(list[i].items.length > 0 && !list[i].stayOpened)
				innerHTML = '<img id="imgItemMenu_'+list[i].id+'" style="cursor:pointer" onclick="toggleMenuDiv(\''+list[i].id+'\')" src="images/'+imgSrcO+'" align="middle" alt="" />';
			else
				innerHTML = '<img id="imgItemMenu_'+list[i].id+'" src="/images/'+imgSrcNO+'" align="middle" alt="" />';
			if(list[i].url != "" && list[i].url != "#")
				innerHTML += '<a href="'+list[i].url+'" class="menu">'+list[i].description+'</a>';
			else
				innerHTML += list[i].description;
			innerHTML += '<div id="divItemMenu_'+list[i].id+'_cnt" style="display: '+((list[i].stayOpened) ? "block" : "none" )+'"></div>';;
			elem2.innerHTML += innerHTML;
			elem2 = document.getElementById("divItemMenu_"+list[i].id+"_cnt");
			//costruisce i figli
			if(list[i].items.length > 0)
				createTree(list[i].items, elem2,false);
		}
	}
	return 
}

/* metodo per far apparire/sparire un submenu */
function toggleMenuDiv(id)
{
	var elem = document.getElementById("divItemMenu_"+id+"_cnt");
	if(elem.style.display == "none")
	{
		elem.style.display = "block";
		elem = document.getElementById("imgItemMenu_"+id);
		elem.src = "/images/menuItemC.gif";
	}
	else
	{
		elem.style.display = "none";
		elem = document.getElementById("imgItemMenu_"+id);
		elem.src = "/images/menuItemO.gif";
	}
}
