
var opcaoN1Seleccionada=-1
var opcaoN2Seleccionada=-1
var opcaoN3Seleccionada=-1

// TODO - restituir links, ou ver cm vai ficar nas opcoes onde nao ha links (N1 e N2 com submenus) jadir 160507
/*

*/

function menuLateral_Nivel_1(texto,arrayMenuLateral_Nivel_2) {
    this.texto=texto
    this.arrayMenuLateral_Nivel_2=arrayMenuLateral_Nivel_2
}

function menuLateral_Nivel_2(link,texto,arrayMenuLateral_Nivel_3,id_Pai){
	this.link=link
	this.texto=texto
	this.arrayMenuLateral_Nivel_3=arrayMenuLateral_Nivel_3
	this.id_Pai=id_Pai
}

function menuLateral_Nivel_3(link,texto,id_Pai,id_Avo){
	this.link=link
	this.texto=texto
	this.id_Pai=id_Pai
	this.id_Avo=id_Avo
}


function eFilho(idPai,id)
{
    if(idPai==0)
    {
        for(t=0; t<arrayMenuLateral_Nivel_1_2[id].arrayMenuLateral_Nivel_3.length; t++)
        {
            id_Pai=arrayMenuLateral_Nivel_1_2[id].arrayMenuLateral_Nivel_3[t].id_Pai
            id_Avo=arrayMenuLateral_Nivel_1_2[id].arrayMenuLateral_Nivel_3[t].id_Avo
            if(id_Avo == idPai)
                if(id_Pai == id)
                    return true     
        }
    }
    if(idPai==1)
    {
        for(t=0; t<arrayMenuLateral_Nivel_2_2[id].arrayMenuLateral_Nivel_3.length; t++)
        {
            id_Pai=arrayMenuLateral_Nivel_2_2[id].arrayMenuLateral_Nivel_3[t].id_Pai
            id_Avo=arrayMenuLateral_Nivel_2_2[id].arrayMenuLateral_Nivel_3[t].id_Avo
            if(id_Avo == idPai)
                if(id_Pai == id)
                    return true     
        }
    }
    return false
}



//efectuar a validacao do aparecimento dos menus de 3ºnivel
function mouseClickTR(idPai,id)
{    
    //se existir o elemento
    if(document.getElementById('opcao_menu_'+idPai+'_'+id)!=null)
    {     
        //se menuN3 "novo" estiver escondido (vai mostrar, e N2 muda estilo) 
	    if(document.getElementById('table_menu_'+idPai+'_'+id+'_3').style.display=='none')
	    {
	        //se existir menuN3 anteriormente selecionado do outro menuN1
	        if(opcaoN1Seleccionada != idPai && opcaoN1Seleccionada != -1)
	        {
	           //esconde menuN3 anterior
	            document.getElementById('table_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_3').style.display='none'
                
                //coloca menuN2 correspondente a default (a nivel visual)
                if(opcaoN1Seleccionada==0)
                {
                    if(opcaoN2Seleccionada >5)
                        document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_1_nivel_2_op_5_default'
                    else
                        document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_1_nivel_2_op_'+opcaoN2Seleccionada+'_default'
                }
                else
                {
                    document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_2_nivel_2_default'   
                }
                
                if(opcaoN3Seleccionada!=-1)
                {
                    //coloca a default (a nivel visual) o link do menuN3 escolhido                  
                    document.getElementById('link_opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_'+opcaoN3Seleccionada+'').className='linkMenuN3'
                    opcaoN3Seleccionada=-1
                } 
	        }
	        else
	        {
	            if(opcaoN2Seleccionada != id && opcaoN2Seleccionada != -1)
	            {
	                //esconde menuN3 anterior
	                document.getElementById('table_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_3').style.display='none'
                    
                    //coloca menuN2 correspondente a default (a nivel visual)
                    if(opcaoN1Seleccionada==0)
                    {
                        if(opcaoN2Seleccionada >5)
                            document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_1_nivel_2_op_5_default'
                        else
                            document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_1_nivel_2_op_'+opcaoN2Seleccionada+'_default'
                    }
                    else
                    {
                        document.getElementById('opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada).className='menu_nivel_2_nivel_2_default'   
                    }
                    
                    if(opcaoN3Seleccionada!=-1)
                    {
                        //coloca a default (a nivel visual) o link do menuN3 escolhido
                                                 
                        document.getElementById('link_opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_'+opcaoN3Seleccionada+'').className='linkMenuN3'
                        opcaoN3Seleccionada=-1
                    }
                }   
            }
            document.getElementById('opcao_menu_'+idPai+'_'+id).className='menu_nivel_'+ ( idPai + 1 )+'_nivel_2_selected'
            
		    //mostra menuN3 se menuN2 tiver filhos
	        if(eFilho(idPai,id))
	        {                           
		        document.getElementById('table_menu_'+idPai+'_'+id+'_3').style.display=''
		    }
		    opcaoN2Seleccionada=id
		    opcaoN1Seleccionada = idPai
	    }
	    //entao menuN3 "novo" esta aberto e tem de ser escondido
	    else
	    {
	        document.getElementById('table_menu_'+idPai+'_'+id+'_3').style.display='none'
	        
	        if(idPai==0)
                if(id >5)
                    document.getElementById('opcao_menu_'+idPai+'_'+id).className='menu_nivel_1_nivel_2_op_5_default'
                else
                    document.getElementById('opcao_menu_'+idPai+'_'+id).className='menu_nivel_1_nivel_2_op_'+id+'_default'
            else
                document.getElementById('opcao_menu_'+idPai+'_'+id).className='menu_nivel_2_nivel_2_default'
	    
	        if(opcaoN3Seleccionada!=-1)
            {
                //coloca a default (a nivel visual) o link do menuN3 escolhido
                document.getElementById('link_opcao_menu_'+idPai+'_'+id+'_'+opcaoN3Seleccionada+'').className='linkMenuN3'
                opcaoMenuSeleccionadaN3=-1                
            }
	    }
    }
}

//alterar estilo N3
function seleccionaOpcaoMenuN3(idF)
{
	//colocar opcao anterior em "default" (cm se nao estivesse selecionada)
	if(opcaoN3Seleccionada != -1)
	{
	    document.getElementById('link_opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_'+opcaoN3Seleccionada).className='linkMenuN3'
	}
	opcaoN3Seleccionada=idF
	document.getElementById('link_opcao_menu_'+opcaoN1Seleccionada+'_'+opcaoN2Seleccionada+'_'+idF).className='linkMenuN3_selected'
}

/**
* A utilização de uma estrutura de arrays assim:
* var arrayMenuLateral_Nivel_1 = new Array()
* var arrayMenuLateral_Nivel_1_2 = new Array()
* var arrayMenuLateral_Nivel_2_2 = new Array()
* var arrayMenuLateral_Nivel_1_2_3 = new Array()
* var arrayMenuLateral_Nivel_2_2_3 = new Array()
*
* Leva a que seja necessario ter codigo repetido por cada menu de nivel 1
* Até ao momento só existem 2 menus
*/
function desenhaMenuLateral()
{
    var txt
    var i
    var j
    var z
    var texto_nivel_1
    var texto_nivel_2
    var texto_nivel_3
    var link_nivel_2
    var link_nivel_3
    var id_Pai
    var id_Avo
    
	txt='<table id="menuEsquerdo" width=168px  cellpadding=0 cellspacing=0>'     
    
    for(i=0; i<arrayMenuLateral_Nivel_1.length; i++)
    {
        texto_nivel_1=arrayMenuLateral_Nivel_1[i].texto
        
        if(i==0)
        {
            txt+='<tr id=opcao_menu_'+i+' width=168>'
            txt+='  <td >'
        }
        else
        {
        
	        txt+='<tr width=168><td> <img id="separador" src=/img/vazio.gif width=168 height=3 border=0></td></tr>'
            txt+='<tr id="opcao_menu_'+i+'" class="menu_nivel_1" width=168>'
            txt+='  <td id=menu2 > <div style="padding-left:22px" class="linkN2N1">'+texto_nivel_1+' </div>' 
        }
        txt+='	</td>'
	    txt+='</tr>'
	    
	    txt+='<tr width=168 px><td> <img id="separador" src=/img/vazio.gif width=168px height=1 border=0></td></tr>'
	    
	    txt+='<tr width=168px ><td>'
		txt+='<table id="menuEsquerdoN2_'+i+'" cellpadding=1 cellspacing=0 border=0>'
		
		if(i==0)
		{
	        for (j=0; j<arrayMenuLateral_Nivel_1_2.length; j++)
	        {
		        link_nivel_2=arrayMenuLateral_Nivel_1_2[j].link
		        texto_nivel_2=arrayMenuLateral_Nivel_1_2[j].texto
		        
	            //txt+='tr=opcao_menu_2_'+j+' -'+texto_nivel_2+'-'
	           
                //no caso de serem acrescentadas mais opções no sitemap
                //ficam com a imagem no menu igual as ultimas entradas
                if(j>5)
                    txt+='<tr id=opcao_menu_0_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_op_5_default" onclick=mouseClickTR('+i+','+j+') >'
                    //txt+='<tr id=opcao_menu_0_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_op_5_default" >'
                else
                    txt+='<tr id=opcao_menu_0_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_op_'+j+'_default" onclick=mouseClickTR('+i+','+j+') >'
                    //txt+='<tr id=opcao_menu_0_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_op_'+j+'_default" >'
                txt+='	<td  id=icon_opcao_menu_0_'+j+' >' 
                txt+='		<div style="padding-left:22px"> <a class="linkN2" id=link_opcao_menu_0_'+j+' href="'+formataLink(link_nivel_2,i,j,"N")+'">'+texto_nivel_2+'</a> </div>'
                txt+='	</td>'
	            txt+='</tr>'
		            
	            txt+='<tr ><td>'
		        txt+='	<table id=table_menu_0_'+j+'_3 class=menu_nivel_3_default style="display:none" cellpadding=1 cellspacing=0 border=0>'
    		
	            for (z=0; z<arrayMenuLateral_Nivel_1_2[j].arrayMenuLateral_Nivel_3.length; z++)
	            {
		            link_nivel_3=arrayMenuLateral_Nivel_1_2[j].arrayMenuLateral_Nivel_3[z].link
		            texto_nivel_3=arrayMenuLateral_Nivel_1_2[j].arrayMenuLateral_Nivel_3[z].texto
                    id_Pai=arrayMenuLateral_Nivel_1_2[j].arrayMenuLateral_Nivel_3[z].id_Pai
	                
		            if(id_Pai != j )
		            {
		            }
		            else
		            {   
	                    txt+='<tr id=opcao_menu_0_'+j+'_'+z+' width=170px onclick=seleccionaOpcaoMenuN3('+z+')>'
	                    txt+='<td>' 
	                    //txt+='<a id=link_opcao_menu_0_'+j+'_'+z+' class="menu_nivel_3_link_default" href="'+link_nivel_3+"?ms="+i+"-"+j+"-"+z+'" name="'+texto_nivel_3+'"> - '+texto_nivel_3+'</a>'
	                    txt+='<a id=link_opcao_menu_0_'+j+'_'+z+' class="linkMenuN3" href="'+formataLink(link_nivel_3,i,j,z)+'" name="'+texto_nivel_3+'"> - '+texto_nivel_3+'</a>'
	                                
	                    txt+='</td></tr>'    
		             }
	            }
	            txt+='	</table>'
	            txt+='</td></tr>'

	            txt+='<tr id=imgSeparador_'+j+'"><td><img id="separador" src=/img/vazio.gif width=168 height=1 border=0></td></tr>'
	        }
            txt+='	</table>'
            txt+='</td></tr>'
        }
      
        if(i==1)
        {
            for (j=0; j<arrayMenuLateral_Nivel_2_2.length; j++)
            {
	            link_nivel_2=arrayMenuLateral_Nivel_2_2[j].link
	            texto_nivel_2=arrayMenuLateral_Nivel_2_2[j].texto
	            id_Pai=arrayMenuLateral_Nivel_2_2[j].id_Pai
    		    
                txt+='<tr id=opcao_menu_1_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_default" onclick=mouseClickTR('+i+','+j+') >'
                //txt+='<tr id=opcao_menu_1_'+j+' class="menu_nivel_'+(i+1)+'_nivel_2_default" >'
                txt+='	<td id=icon_opcao_menu_1_'+j+' >' 
                txt+='		<div style="padding-left:22px"> <a class="linkN2" id=link_opcao_menu_1_'+j+' href="'+formataLink(link_nivel_2,i,j,"N")+'">'+texto_nivel_2+'</a></div>'
                txt+='	</td>'
	            txt+='</tr>'
	                  
                txt+='<tr ><td>' 
	            txt+='	<table id=table_menu_1_'+j+'_3 class=menu_nivel_3_default style="display:none" cellpadding=1 cellspacing=0 border=0>'
    		
                for (z=0; z<arrayMenuLateral_Nivel_2_2[j].arrayMenuLateral_Nivel_3.length; z++)
                {
	                link_nivel_3=arrayMenuLateral_Nivel_2_2[j].arrayMenuLateral_Nivel_3[z].link
	                texto_nivel_3=arrayMenuLateral_Nivel_2_2[j].arrayMenuLateral_Nivel_3[z].texto
                    id_Pai=arrayMenuLateral_Nivel_2_2[j].arrayMenuLateral_Nivel_3[z].id_Pai
                    id_Avo=arrayMenuLateral_Nivel_2_2[j].arrayMenuLateral_Nivel_3[z].id_Avo
	                
	                if(id_Pai != j )
	                {
	                }
	                else
	                {   
                        txt+='<tr id=opcao_menu_1_'+j+'_'+z+' width=170px onclick=seleccionaOpcaoMenuN3('+z+')>'
                        txt+='<td>'
                        //txt+='<a id=link_opcao_menu_1_'+j+'_'+z+' class="menu_nivel_3_link_default" href="'+link_nivel_3+"?ms="+i+"-"+j+"-"+z+'" name="'+texto_nivel_3+'"> - '+texto_nivel_3+'</a>'
                        txt+='<a id=link_opcao_menu_1_'+j+'_'+z+' class="linkMenuN3" href="'+formataLink(link_nivel_3,i,j,z)+'" name="'+texto_nivel_3+'"> - '+texto_nivel_3+'</a>'
                        
                        txt+='</td></tr>'
	                }
	            }
                txt+='	</table>'
                txt+='</td></tr>'
                txt+='<tr><td><img id="separador" src=/img/menu/separador_menu.gif width=168 height=3 border=0></td></tr>'
            }
            txt+='	</table>'
            txt+='</td></tr>'
        }
    }
	txt+='</table>'
	document.write(txt)
}



/*
* Esta função serve para, atraves do parametro que existe no endereço, "abrir" a opção do menu correspondente
* Sintaxe do parametro é "<num de N1>-<num de N2>-<num de N3>" caso seja nulo é usado simbolo "N"
*/
function opcaoSelecionada(nivel1,nivel2,nivel3)
{
    var n1 = nivel1;
    var n3 = nivel3;
    var nulo = "N";
    var v1 = "N";
    var v2 = "N";
    var v3 = "N";
    
    if(n1 != nulo)
    {
        v1 = Number(nivel1);
        v2 = Number(nivel2);
        mouseClickTR(v1,v2);
       
        if(n3 != nulo)
        {
            v3 = Number(nivel3);
            seleccionaOpcaoMenuN3(v3);
        }
    }    
}

function formataLink(texto,i,j,z)
{
    var index = Number (texto.indexOf('?'));
    var temp = "javascript:void(0)";
    var ms1 = "?ms=" + i + "-" + j;
    var ms2 = "&ms=" + i + "-" + j;
    var nulo = "N";
    
    if( z != nulo )
    {
        ms1+="-" + z;
        ms2+="-" + z;
    }

    if(index == -1)
    {
        if(texto == temp)
        {
            return texto;
        }
        else
            return texto + ms1;
    }
    else
        return texto + ms2;
    
}

//Array dos menus laterais
var arrayMenuLateral_Nivel_1 = new Array();

var arrayMenuLateral_Nivel_1_2 = new Array();
var arrayMenuLateral_Nivel_2_2 = new Array();

var arrayMenuLateral_Nivel_1_2_3 = new Array();
var arrayMenuLateral_Nivel_2_2_3 = new Array();
