//*************************************************************//
// FUNZIONI PER LA GESTIONE DEI MENUS
//*************************************************************//

function getStato(objId)
{
	if (objId == null)
		return null;
	else
		return objId.slice(objId.indexOf(KeyStartCode) + 1, objId.length);
}

function getStatoAt(code, level)
{
	var code1;
	if (code == null)
		return null;
	else
	{	
		code = code.slice(code.indexOf(KeyStartCode) + 1, code.length);
		var code_split = code.split(KeyMenuLevel);
		for (j=0; j<=level; j++)
		{
			if ( j==0 ) code1 = code_split[j];
			else code1 = code1 + KeyMenuLevel + code_split[j];
		}
		return code1;
	}
}

function getLevel(code)
{
	if (code == null)
		return 0;
	else
		return (code.split( KeyMenuLevel )).length;
}

function Compare (nextstato, pos)
{
	if (getStatoAt(stato, pos) == getStatoAt(nextstato, pos))
		return true;
	else
		return false;
}

function SelezionaBarra(obj, color)
{
	obj.style.backgroundColor = color;
}

function DeSelezionaBarra(obj)
{
	obj.style.backgroundColor = "transparent";
}

function Seleziona(obj, color)
{
	obj.style.color = color;
}

function DeSeleziona(obj)
{
	obj.style.color = MenuColor0;
}

function ClickOnBarra(obj)
{
	var subMenu = top.document.getElementById(CONST_Nome_Menu + getStatoAt(stato, 0) + KeySubMenu);
	if ( subMenu != null ) subMenu.style.display = "none";
	subMenu = top.document.getElementById(CONST_Nome_Menu + getStato(obj.id) + KeySubMenu);
	if ( subMenu != null )
	{
		if ( subMenu.style.display == "" )
			subMenu.style.display = "none";
		else
			subMenu.style.display = "";
	}

	setStato( getStato(obj.id) );
}

function ClickOnLink(obj)
{
	var IMG = null;
	var subMenu = top.document.getElementById(CONST_Nome_Menu + getStato(obj.id) + KeySubMenu);
	if ( subMenu != null )
	{
		if ( subMenu.style.display == "" && obj.style.color.toUpperCase() == MenuColor2.toUpperCase() )
		{
			subMenu.style.display = "none";
			IMG = top.document.getElementById("img" + getStato(obj.id));
			if (IMG != null)
			{
				top.document.getElementById("img" + getStato(obj.id)).src = "images/OggettiGraficiSistema/Interfaccia/NodoChiuso.gif";
			}
		}
		else
		{
			subMenu.style.display = "";
			IMG = top.document.getElementById("img" + getStato(obj.id));
			if (IMG != null)
			{
				top.document.getElementById("img" + getStato(obj.id)).src = "images/OggettiGraficiSistema/Interfaccia/NodoAperto.gif";
			}
		}
	}

	setStato( getStato(obj.id) );
}

function setStato(nextstato)
{
	var k = 0;
	var IMG;
	var Oggetto = top.document.getElementById("AutoHiddenBanner");
	if (Oggetto != null)
	{
		if( nextstato == 1 )
			Oggetto.style.display = '';
		else
			Oggetto.style.display = 'none';
	}
	
	// GESTIONE DELLA BARRA
	Oggetto = top.document.getElementById(CONST_Nome_BarraMenu_Voce + getStatoAt(stato, 0));
	if ( Oggetto != null )	DeSelezionaBarra (Oggetto);

	Oggetto = top.document.getElementById(CONST_Nome_BarraMenu_Voce + getStatoAt(nextstato, 0));
	if ( Oggetto != null )	SelezionaBarra (Oggetto, MenuBarraColor2);

	// DECOLORA MENU
	k = 1;
	while ( k < getLevel(stato) )
	{
		NomeOggetto1 = CONST_Nome_Menu + getStatoAt(stato, k);
		Oggetto1 = top.document.getElementById(NomeOggetto1);
		if ( Oggetto1 != null )	DeSeleziona(Oggetto1);
		k++;
	}

	// COLORA KRNL_FRONT_MAPPA
	k = 1;
	while ( k < getLevel(nextstato) )
	{
		NomeOggetto1 = CONST_Nome_Menu + getStatoAt(nextstato, k);
		Oggetto1 = top.document.getElementById(NomeOggetto1);
		if ( Oggetto1 != null )	Seleziona(Oggetto1, MenuColor2);
		k++;
	}

	// NASCONDE IL VECCHIO CANALE
	if ( getStatoAt(nextstato, 0) != getStatoAt(stato, 0) )
	{
		NomeOggetto1 = CONST_Nome_Menu + getStatoAt(stato, 0);
		Oggetto1 = top.document.getElementById(NomeOggetto1 + KeySubMenu);
		if ( Oggetto1 != null )	Oggetto1.style.display = "none";
	}

	// SROTOLA IL MENU
	k = 0;
	while ( k < (getLevel(nextstato) - 1) )
	{
		NomeOggetto1 = CONST_Nome_Menu + getStatoAt(nextstato, k);
		Oggetto1 = top.document.getElementById(NomeOggetto1 + KeySubMenu);
		if ( Oggetto1 != null )	
		{
			Oggetto1.style.display = "";
			IMG = top.document.getElementById("img" + getStatoAt(nextstato, k));
			if (IMG != null)
			{
				top.document.getElementById("img" + getStatoAt(nextstato, k)).src = "images/OggettiGraficiSistema/Interfaccia/NodoAperto.gif";
			}
		}
		k++;
	}	
	
	NomeOggetto1 = CONST_Nome_Menu + getStatoAt(nextstato, 0);
	Oggetto1 = top.document.getElementById(NomeOggetto1 + KeySubMenu);
	if ( Oggetto1 != null )	Oggetto1.style.display = "";
	stato = nextstato;
}

function OverBarra(obj, color)
{
	if ( !Compare (getStato(obj.id), 0)) SelezionaBarra(obj, color);
}

function OutBarra(obj)
{
	if ( !Compare(getStato(obj.id), 0) ) DeSelezionaBarra(obj);
}

function OverMenu(obj, color)
{
	if ( obj.style.color.toUpperCase() != MenuColor2.toUpperCase() ) Seleziona(obj, color);
}

function OutMenu(obj)
{
	if ( obj.style.color.toUpperCase() != MenuColor2.toUpperCase() ) DeSeleziona(obj);
}

function HideDiagnostic()
{
	var Oggetto = top.document.getElementById("DiagnosticBar");
	if ( Oggetto != null )
	{
		Oggetto.innerText = "";
		Oggetto.style.display = "none";
	}

	Oggetto = top.document.getElementById("CopyrightBar");
	if ( Oggetto != null ) Oggetto.style.display = "";
}

function ShowDiagnostic(testo)
{
	var Oggetto = top.document.getElementById("DiagnosticBar");
	if ( Oggetto != null )
	{
		Oggetto.innerText = testo;
		Oggetto.style.display = "";
	}
	
	Oggetto = top.document.getElementById("CopyrightBar");
	if ( Oggetto != null ) Oggetto.style.display = "none";
}

//*************************************************************//