/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 * Sezione personalizzabile..
 * Modificare le variabili e gli array seguenti per adattare il menu al propri sito.
 * L'ultima voce di questo menu e' un link a JsDir, se credete potete toglierlo, ma in tal caso vi preghiamo
 * di lasciare il riferimento della riga seguente... dopotutto non l'avete pagato nulla, quindi... che vi costa? :-)
 *
 * Ultimo aggiornamento: 16 Gennaio 2006
 *
 * Questo menu e' (C)2001 webmasterATjsdir.com - Lo script e' reperibile al sito http://www.jsdir.com - JavaScript Directory
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
var ron="#003300"; // Colore al MouseOver
var roff="#006633"; // Colore di default
var leftmargin=10; // Distanza dal margine sinistro della pagina ( ---> v. commento alla riga 57)
var topmargin=105; // Distanza dal margine superiore della pagina
var largo=110; // Larghezza dei layers, quindi distanza (orizzontale) fra i sottomenu

var Home = true; // Settare a "false" se non si desidera il link all'homepage
var HomeLink = "home.htm"; // URL della homepage
var HomeText = "home"; // Testo del link alla homepage
var HomeWidth = 100; // Larghezza del livello che contiene il tasto alla homepage. (se "Home" viene impostato a "false" viene azzerato.

/* L'array seguente contiene i testi che verranno visualizzati dal menu.
 * Nell'esempio (il menu di JsDir) trovate quattro elementi dell'array "voci" corrispondenti alle quattro voci del menu principale
 * Il primo elemento degli array e' il nome del menu, gli elementi successivi sono i links contenuti nel singolo menu.
 * Il tasto "Home" non compare in questo array perche' viene inserito di default come primo elemento */
var voci=new Array();
	voci[0]=new Array("chi siamo", "biografia", "nome", "storia", "ultime news")
	voci[1]=new Array("live");
	voci[2]=new Array("musica", "testi", "mp3", "discografia", "acquista il CD!");
	voci[3]=new Array("foto", "cortile cafè", "studio 1", "studio 2", "Trimi's festival", "semifinali Trimi's");
	voci[4]=new Array("contatti");
	voci[5]=new Array("forum");

	

/* Questo array contiene invece i links che saranno aperti dalle singole voci dei sottomenu.
 * In questa nuova versione del menu ( 09 Dic 2002 ) e' possibile specificare un link anche per la voce principale del menu */
var links=new Array();
	links[0]=new Array("#", "biografia.htm", "nome.htm", "storia.htm", "news.htm", "#")
	links[1]=new Array("live.htm", "#", "#", "#", "#")
	links[2]=new Array("#", "testi.htm", "mp3.htm", "discografia.htm", "acquisto.htm")
	links[3]=new Array("#", "foto cortile.htm", "foto studio1.htm", "foto studio2.htm", "foto trimis.htm", "semifinalitrimis.htm")
	links[4]=new Array("contatti.htm", "contatti.htm", "http://www.freeforumzone.leonardo.it/viewForum.aspx?f=91846", "scheda tecnica.htm", "#", "http://www.jsdir.com")
	links[5]=new Array("http://www.freeforumzone.leonardo.it/viewForum.aspx?f=91846", "biografia.htm", "nome.htm", "storia.htm", "news.htm", "#")


/* Questo array contiene i target dei links
 * A partire dal 10 Ottobre 2004 e' in grdo di gestire frames, finestre e pop-up.
 * La prima parte della stringa ("nome" o lettera+|)  indica il tipo di destinazione:
 *   "win" sta per "nuova finestra": analogo al target='_blank' di un normale link A HREF
 *   "self" apre nello stesso frame in cui e' contenuto il menu, analogo al target="_self" di un normale link A HREF
 *   "top" apre il link sostitendo il frameset, analogo al target="_top" di un normale link A HREF
 *   "p|" sta per pop-up, seguono nella stessa stringa le consuete istruzioni per la formattazione, ad esempio "p|width=100,height=100,resizable=yes"
 *   "f|" sta per "in un frame", segue il nome del frame in cui aprire il link, ad esempio "f|nomeframe".
 * 
 * Se non viene riconosciuta la stringa di destinazione, il link viene aperto in modalita' "self", quindi sostituendo la pagina in cui e' contenuto il menu.
 * 
 * Forse e' un po' macchinoso, ma evita di dover gestire un altro array solo per poter specificare il nome di un eventuale frame. :-)
 * 
 * Nell'esempio che segue:
 * - il primo link vene aperto in un'altra finestra del browser;
 * - il secondo nello stesso frame dov'e' contenuto il menu;
 * - il terzo sostituisce il frameset
 * - il quarto nel frame "contenuti"
 * - il quinto in una pop-up di 300x400 pixel
 * 
 * targets[...]=new Array("win", "self", "top", "f|contenuti", "p|width=300,height=400")
 * 
 * - - - - - - - - - - - - - - - - - */
var targets=new Array();
	targets[0]=new Array("self", "self", "self", "self", "self")
	targets[1]=new Array("self", "self", "self", "f|main", "f|main")
	targets[2]=new Array("self", "self", "self", "self", "self")
	targets[3]=new Array("self", "self", "self", "self", "self", "self")
	targets[4]=new Array("self", "self", "self", "self", "self")
	targets[5]=new Array("self", "self", "self", "self", "self")

	
	

/* Ultimo array.
 * Contiene i testi che saranno visualizzati nella barra di stato del browser quando il mouse e' sopra una voce del menu  */
var wst=new Array();
	wst[0]=new Array("", "", "");
	wst[1]=new Array("");
	wst[2]=new Array("");
	wst[3]=new Array("");
	wst[4]=new Array("");
	wst[5]=new Array("");

	
	

/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 
 * Fine sezione personalizzabile.
 * Le righe che seguono costituiscono il menu vero e proprio.
 * La personalizzazione e' consigliata solo a webmaster un po' esperti di JavaScript, ad eccezione della riga evidenziata
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
var nn=document.layers?true:false,N6=navigator.userAgent.toLowerCase().indexOf("gecko")!=-1?true:false,conta=0,last=0;
var op=navigator.userAgent.toLowerCase().indexOf("opera")!=-1?true:false
HomeWidth=Home?HomeWidth:0;
var MenuLength=HomeWidth+largo*voci.length;
var BrowserWidth=nn||op?window.innerWidth:N6?document.width:document.body.clientWidth;
leftmargin=parseInt((BrowserWidth-MenuLength)/2); // Commentare questa riga con // all'inizio se non si desidera i menu al centro della pagina, bensi' nella posizione definita in "leftmargin"

if (nn)
	{
	if (Home)
		document.write("<LAYER NAME=mtop. position=absolute left="+leftmargin+" top="+topmargin+" width="+HomeWidth+" height=15 clip=0,0,"+HomeWidth+",15 bgColor="+roff+" visibility=visible onMouseOver=showdeps(last,false);mroll('mtop.') onMouseOut=unmroll('mtop.') CLASS=menuNNb>&nbsp;<A HREF='"+HomeLink+"' CLASS=menuNNb>"+HomeText+"</A></LAYER>");
	for (i=0;i<voci.length;i++)
		{
		var n=i;
		document.writeln("<LAYER NAME=mtop"+n+". position=absolute left="+eval(leftmargin+HomeWidth+largo*i)+" top="+topmargin+" width="+largo+" height=15 clip=0,0,"+largo+",15 bgColor="+roff+" visibility=visible onMouseOver=MostraMenu("+i+");mroll('mtop"+i+".');conta++ onMouseOut=last="+i+";unmroll('mtop"+i+".');conta--><DIV ALIGN=center CLASS=menuNNb>&nbsp;<A HREF=javascript:mroll('mtop"+i+".') onClick=vai('"+links[i][0]+"',"+i+",0) CLASS=menuNNb>"+voci[i][0]+"</A></DIV></LAYER>");
		for (l=1;l<voci[i].length;l++)
			document.writeln("<LAYER NAME=mdep"+i+"."+l+" position=absolute left="+eval(leftmargin+HomeWidth+largo*i)+" top="+eval(topmargin+15*l)+" width="+largo+" height=15 clip=0,0,"+largo+",15 bgColor="+roff+" visibility=hidden onMouseOver=mroll('mdep"+n+"."+l+"');conta++ onMouseOut=unmroll('mdep"+n+"."+l+"');conta--  CLASS=menuNNb>&nbsp;<A HREF=javascript:mroll('mdep"+n+"."+l+"') onClick=vai('"+links[i][l]+"',"+i+","+l+") CLASS=menuNN>"+voci[i][l]+"</A></LAYER>");
		}
	}
	else
	{
	if (Home)
		document.write("<div id='mtop.' style=\"position:absolute;left:"+leftmargin+"px;top:"+topmargin+"px;width:"+HomeWidth+"px;height:15px;background-color:"+roff+";visibility:visible;cursor:hand;\" onmouseover=\"showdeps(last,false);mroll('mtop.');\" onmouseout=\"unmroll('mtop.');\"><div class='menuIEb'><a href='"+HomeLink+"' class='menuIEb' onfocus='this.blur();'>&nbsp;"+HomeText+"</a></div></div>");
	for (i=0;i<voci.length;i++)
		{
		var n=i;
		document.writeln("<div id='mtop"+n+".' style=\"position:absolute;left:"+eval(leftmargin+HomeWidth+largo*i)+"px;top:"+topmargin+"px;width:"+largo+"px;height:15px;background-color:"+roff+";visibility:visible;cursor:hand\" onmouseover=\"MostraMenu("+n+");mroll('mtop"+n+".');conta++;\" onmouseout=\"last="+n+";unmroll('mtop"+n+".');conta--;\"><div style='text-align : center ; ' class='menuIEb' onclick=\"vai('"+links[i][0]+"',"+i+",0);\">&nbsp;"+voci[i][0]+"</div></div>");
		for (l=1;l<voci[i].length;l++)
			document.writeln("<div id='mdep"+i+"."+l+"' style=\"position:absolute;left:"+eval(leftmargin+HomeWidth+largo*i)+"px;top:"+eval(topmargin+15*l)+"px;width:"+largo+"px;height:15px;background-color:"+roff+";visibility:hidden;cursor:hand\" onmouseover=\"mroll('mdep"+n+"."+l+"');conta++;\" onmouseout=\"unmroll('mdep"+n+"."+l+"');conta--;\" class='menuIE' onclick=\"vai('"+links[i][l]+"',"+i+","+l+");\">&nbsp;"+voci[i][l]+"</div>");
		}
	}

timer=setInterval("NascondiMenu()",1000)

function NascondiMenu()
	{
	if (conta==0)
		{
		coloratutti(true)
		timer=setTimeout("coloratutti(false)",200);
		timer=setTimeout("showdeps(last,false)",250);
		}
	}

function coloratutti(col)
	{
	colore=col?ron:roff;
	for (i=0;i<voci.length;i++)
		for (j=1;j<voci[i].length;j++)
			{
		if (nn)
			document.layers["mdep"+i+"."+j].bgColor=colore;
		else
			if(document.all)
				document.all["mdep"+i+"."+j].style.background=colore;
				else
				document.getElementById('mdep'+i+"."+j).style.background=colore;
			}
	}

function MostraMenu(n)
	{
	showdeps(last,false);
	showdeps(n,true);
	last=n;
	}

function showdeps(n,act)
	{
	if (conta==0)
		{
		act?stat="visible":stat="hidden";
	if (nn)
		for (i=1;i<voci[n].length;i++)
			document.layers["mdep"+n+"."+i].visibility=stat;
	else
		for (i=1;i<voci[n].length;i++)
			if(document.all)
				document.all["mdep"+n+"."+i].style.visibility=stat;
				else
				document.getElementById('mdep'+n+"."+i).style.visibility=stat;
		}
	}

function vai(dove,r,c)
	{
	if (c>0)
		lev=nn?document.layers["mdep"+r+"."+c]:(document.all)?document.all["mdep"+r+"."+c].style:document.getElementById("mdep"+r+"."+c).style;
	else
		lev=nn?document.layers["mtop"+r+"."]:(document.all)?document.all["mtop"+r+"."].style:document.getElementById("mtop"+r+".").style;
	if (nn)
		{
		lev.bgColor=roff;
		timer=setTimeout("lev.bgColor=ron",50)
		timer=setTimeout("lev.bgColor=roff",100)
		timer=setTimeout("lev.bgColor=ron",150)
		timer=setTimeout("lev.bgColor=roff",200)
		timer=setTimeout("lev.bgColor=ron",250)
		}
		else
		{
		lev.background=roff;
		timer=setTimeout("lev.background=ron",50)
		timer=setTimeout("lev.background=roff",100)
		timer=setTimeout("lev.background=ron",150)
		timer=setTimeout("lev.background=roff",200)
		timer=setTimeout("lev.background=ron",250)
		}
   	if (navigator.userAgent.toLowerCase().indexOf("msie")!=-1 && navigator.platform.toLowerCase().indexOf("mac")=="mac")
	   document.write("")  
	
	dest=targets[r][c].split("|");
	switch (dest[0])
		{
		case "top" : timer=setTimeout("top.location.href='"+dove+"'",350) ; break;
		case "self" : timer=setTimeout("self.location.href='"+dove+"'",350) ; break;
		case "win" : timer=setTimeout("window.open('"+dove+"')",350) ; break;
		case "f" : timer=setTimeout("parent."+dest[1]+".location.href='"+dove+"'",350) ; break;
		case "p" : timer=setTimeout("window.open('"+dove+"','','"+dest[1]+"')",350) ; break;
		default : timer=setTimeout("self.location.href='"+dove+"'",350);
		}
	}

function mroll(l)
	{
	LTop="mtop"+l.substr(4,l.indexOf(".")-4)+".";
	nn?document.layers[LTop].bgColor=ron:(document.all)?document.all[LTop].style.background=ron:document.getElementById(LTop).style.background=ron;
	nn?document.layers[l].bgColor=ron:(document.all)?document.all[l].style.background=ron:document.getElementById(l).style.background=ron;
	document.getElementById?document.getElementById(l).style.cursor=document.all?'hand':'pointer':'void(0)';
	if (l.substr(0,4)=="mdep")
		stringa=wst[l.substr(4,l.indexOf(".")-4)][l.substring(l.indexOf(".")+1,l.length)];
			else if (l.length>5)
			stringa=wst[l.substr(4,l.indexOf(".")-4)][0];
				else stringa="Home Page";		
	window.status=stringa;
	timer=setTimeout("window.status=stringa",20);
	}

function unmroll(l)
	{
	LTop="mtop"+l.substr(4,l.indexOf(".")-4)+".";
	nn?document.layers[LTop].bgColor=roff:(document.all)?document.all[LTop].style.background=roff:document.getElementById(LTop).style.background=roff;
	nn?document.layers[l].bgColor=roff:(document.all)?document.all[l].style.background=roff:document.getElementById(l).style.background=roff;
	window.status="";
	}

onresize=function() {self.location.reload()};

