'
initEditorSubGrupos()
};
var botao1 = new YAHOO.widget.Button("botaoEditorMenu",{ onclick: { fn: editorDeMenus } });
var botao2 = new YAHOO.widget.Button("botaoEditorGrupo",{ onclick: { fn: editorDeGrupos } });
var botao3 = new YAHOO.widget.Button("botaoEditorSubGrupo",{ onclick: { fn: editorDeSubGrupos } });
core_carregando("ativa");
core_ativaPainelAjuda("ajuda","botaoAjuda");
core_pegaPerfis("pegaMenus()");
}
function pegaMenus()
{
try
{YAHOO.util.Event.removeListener(YAHOO.example.container.panelEditor.close, "click");}
catch(e){}
core_pegaDados("buscando menus...","../php/menutemas.php?funcao=pegaMenus","montaArvore")
}
function montaArvore(dados)
{
YAHOO.example.treeExample = new function()
{
var currentIconMode;
tree = "";
function changeIconMode()
{
var newVal = parseInt(this.value);
if (newVal != currentIconMode)
{currentIconMode = newVal;}
buildTree();
}
function loadNodeData(node, fnLoadComplete)
{
var sUrl = "../php/arvore.php?funcao=pegaGrupos&id_menu="+node.data.id_menu;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
montaNosGrupos(node.data.id_menu,node,dados,true)
oResponse.argument.fnLoadComplete();
},
failure: function(oResponse)
{
oResponse.argument.fnLoadComplete();
},
argument:
{
"node": node,
"fnLoadComplete": fnLoadComplete
},
timeout: 25000
};
YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
}
function buildTree()
{
tree = new YAHOO.widget.TreeView("arvoreMenus");
tree.setDynamicLoad(loadNodeData, currentIconMode);
var root = tree.getRoot();
var tempNode = new YAHOO.widget.TextNode('', root, false);
tempNode.isLeaf = true;
core_carregando("desativa");
}
buildTree();
}();
montaNosMenus(dados)
tree.draw();
}
//
//adiciona os menus na árvore
//
function montaNosMenus(dados,redesenha)
{
var root = tree.getRoot();
for (var i=0, j=dados.length; i"+dados[i].nome_menu+""
var d = {html:conteudo,id_menu:dados[i].id_menu,tipo:"menu"};
var tempNode = new YAHOO.widget.HTMLNode(d, root, false,true);
}
if(redesenha){tree.draw();}
}
//
//adiciona os grupos em um menu
//
function montaNosGrupos(idmenu,no,dados,redesenha)
{
function temaIconMode()
{
var newVal = parseInt(this.value);
if (newVal != currentIconMode)
{currentIconMode = newVal;}
}
function loadSubgruposData(node, fnLoadComplete)
{
var sUrl = "../php/arvore.php?funcao=pegaSubGrupos&id_n1="+node.data.id_n1+"&id_menu="+idmenu;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
montaNosSubgrupos(idmenu,node,dados,true)
oResponse.argument.fnLoadComplete();
},
failure: function(oResponse)
{
oResponse.argument.fnLoadComplete();
},
argument:
{
"node": node,
"fnLoadComplete": fnLoadComplete
},
timeout: 7000
};
YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
}
//pega os temas que ficam na raiz da árvore
if(!tree.getNodeByProperty("etiquetaTemasRaiz","menu_"+idmenu))
montaTemasRaiz(no,dados,true)
//pega os grupos do menu
if(!tree.getNodeByProperty("etiquetaGrupo","menu_"+idmenu))
{
var conteudo = ""
var temp = "menu_"+idmenu
var d = {tipo:"etiqueta","etiquetaGrupo":temp,html:conteudo+"Grupos:"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
for (var i=0, j=dados.grupos.length; i"
conteudo += " "
conteudo += " "
conteudo += " ";
var cor = "";
if(dados.grupos[i].publicado == "NAO")
var cor = "style='color:red'";
conteudo += ""+dados.grupos[i].nome_grupo+""
var d = {html:conteudo,id_n1:dados.grupos[i].id_n1,tipo:"grupo"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.setDynamicLoad(loadSubgruposData, temaIconMode);
}
if(redesenha){tree.draw();}
}
function montaNosSubgrupos(idmenu,no,dados,redesenha)
{
function loadTemasData(node, fnLoadComplete)
{
var sUrl = "../php/arvore.php?funcao=pegaTemas&id_n2="+node.data.id_n2;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
montaTemas(idmenu,node,dados,false)
oResponse.argument.fnLoadComplete();
},
failure: function(oResponse)
{
oResponse.argument.fnLoadComplete();
},
argument:
{
"node": node,
"fnLoadComplete": fnLoadComplete
},
timeout: 7000
};
YAHOO.util.Connect.asyncRequest('GET', sUrl, callback);
}
if(!tree.getNodeByProperty("etiquetaTemasGrupo","grupo_"+no.data.id_n1))
montaTemasRaizGrupo(idmenu,no,dados,true)
if(!tree.getNodeByProperty("etiquetaTemasSubGrupo",no.data.id_n1))
{
var conteudo = ""
var d = {tipo:"etiqueta",etiquetaTemasSubGrupo:no.data.id_n1,html:conteudo+"Sub-grupos:"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
function temaIconMode()
{
var newVal = parseInt(this.value);
if (newVal != currentIconMode)
{currentIconMode = newVal;}
}
for (var i=0, j=dados.subgrupos.length; i"
conteudo += " "
conteudo += " "
conteudo += " "
var cor = "";
if(dados.subgrupos[i].publicado == "NAO")
var cor = "style='color:red'";
conteudo += ""+dados.subgrupos[i].nome_subgrupo+""
var d = {html:conteudo,id_n2:dados.subgrupos[i].id_n2,tipo:"subgrupo"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.setDynamicLoad(loadTemasData, temaIconMode);
}
if(redesenha){tree.draw();}
}
function montaTemas(idmenu,no,dados,redesenha)
{
if(!tree.getNodeByProperty("etiquetaTemas",no.data.id_n2))
{
var conteudo = ""
var d = {tipo:"etiqueta",etiquetaTemas:no.data.id_n2,html:conteudo+"Temas:"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
for (i=0, j=dados.length; i"
conteudo += " "
conteudo += " "
conteudo += " "
var cor = "";
if(dados[i].publicado == "NAO")
var cor = "style='color:red'";
if(dados[i].nome_tema)
conteudo += ""+dados[i].nome_tema+""
else
conteudo += "edite para escolher o tema"
var d = {html:conteudo,id_n3:dados[i].id_n3,tipo:"tema"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
if(redesenha){tree.draw();}
}
function montaTemasRaiz(no,dados,redesenha)
{
if(!tree.getNodeByProperty("etiquetaTemasRaiz","menu_"+no.data.id_menu))
{
var temp = "menu_"+no.data.id_menu
var d = {etiquetaTemasRaiz:temp,tipo:"etiqueta",html:"Temas na raiz do menu:"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
var resultado = new Array();
for (var i=0, j=dados.raiz.length; i"
conteudo += " "
conteudo += " "
conteudo += " "+dados.raiz[i].nome_tema+""
var d = {html:conteudo,id_raiz:dados.raiz[i].id_raiz,tipo:"raizmenu"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
resultado.push(tempNode)
}
return resultado;
}
function montaTemasRaizGrupo(idmenu,no,dados,redesenha)
{
if(!tree.getNodeByProperty("etiquetaTemasGrupo","grupo_"+no.data.id_n1))
{
var temp = "grupo_"+no.data.id_n1
var d = {etiquetaTemasGrupo:temp,tipo:"etiqueta",html:"Temas na raiz do grupo:"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
}
var resultado = new Array();
for (var i=0, j=dados.raiz.length; i"
conteudo += " "
conteudo += " "
conteudo += " "+dados.raiz[i].nome_tema+""
var d = {html:conteudo,id_raiz:dados.raiz[i].id_raiz,tipo:"raizmenu"}
var tempNode = new YAHOO.widget.HTMLNode(d, no, false,true);
tempNode.isLeaf = true;
resultado.push(tempNode)
}
return resultado;
}
//
//adiciona um novo tema na raiz do menu
//id = id do menu alvo
//
function novoTemaRaiz(id)
{
core_carregando("ativa");
var mensagem = " adicionando tema...";
core_carregando(mensagem);
var no = tree.getNodeByProperty("id_menu",id)
var noEtiquetaGrupo = tree.getNodeByProperty("etiquetaGrupo","menu_"+id)
var sUrl = "../php/arvore.php?funcao=adicionarTemaRaiz&id_menu="+id;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
var nos = montaTemasRaiz(no,dados,false)
tree.popNode(nos[0])
nos[0].insertBefore(noEtiquetaGrupo)
tree.draw();
core_carregando("desativa");
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
function novoTemaRaizGrupo(idmenu,id)
{
core_carregando("ativa");
var mensagem = " adicionando tema...";
core_carregando(mensagem);
var no = tree.getNodeByProperty("id_n1",id)
var noEtiquetaSubGrupo = tree.getNodeByProperty("etiquetaTemasSubGrupo",id)
var sUrl = "../php/arvore.php?funcao=adicionarTemaRaizGrupo&id_n1="+id+"&id_menu="+idmenu;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
var nos = montaTemasRaizGrupo(idmenu,no,dados,false)
tree.popNode(nos[0])
nos[0].insertBefore(noEtiquetaSubGrupo)
tree.draw();
core_carregando("desativa");
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
//
//adiciona um novo grupo
//
function novoGrupo(id_menu)
{
core_carregando("ativa");
var mensagem = " adicionando grupo...";
core_carregando(mensagem);
var sUrl = "../php/arvore.php?funcao=adicionarGrupo&id_menu="+id_menu;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
var no = tree.getNodeByProperty("id_menu",id_menu)
montaNosGrupos(id_menu,no,dados,false)
tree.draw();
core_carregando("desativa");
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
//
//adiciona um novo sub-grupo
//
function novoSubGrupo(idmenu,id_n1)
{
core_carregando("ativa");
var mensagem = " adicionando Sub-grupo...";
core_carregando(mensagem);
var sUrl = "../php/arvore.php?funcao=adicionarSubGrupo&id_n1="+id_n1;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
var no = tree.getNodeByProperty("id_n1",id_n1)
montaNosSubgrupos(idmenu,no,dados,false)
tree.draw();
core_carregando("desativa");
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
//
//adiciona um novo tema em um sub-grupo
//
function novoTema(idmenu,id_n2)
{
core_carregando("ativa");
var mensagem = " adicionando tema...";
core_carregando(mensagem);
var sUrl = "../php/arvore.php?funcao=adicionarTema&id_n2="+id_n2;
var callback =
{
success: function(oResponse)
{
var dados = YAHOO.lang.JSON.parse(oResponse.responseText)
var no = tree.getNodeByProperty("id_n2",id_n2)
montaTemas(idmenu,no,dados,false)
tree.draw();
core_carregando("desativa");
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
core_makeRequest(sUrl,callback)
}
function excluir(tipo,id)
{
var mensagem = " excluindo o registro do id= "+id;
if(tipo == "raizgrupo" || tipo == "raizmenu")
{
var no = tree.getNodeByProperty("id_raiz",id)
var sUrl = "../php/arvore.php?funcao=excluir&id="+id+"&tabela=i3geoadmin_raiz";
}
if(tipo == "grupo")
{
var no = tree.getNodeByProperty("id_n1",id)
var sUrl = "../php/arvore.php?funcao=excluir&id="+id+"&tabela=i3geoadmin_n1";
}
if(tipo == "subgrupo")
{
var no = tree.getNodeByProperty("id_n2",id)
var sUrl = "../php/arvore.php?funcao=excluir&id="+id+"&tabela=i3geoadmin_n2";
}
if(tipo == "tema")
{
var no = tree.getNodeByProperty("id_n3",id)
var sUrl = "../php/arvore.php?funcao=excluir&id="+id+"&tabela=i3geoadmin_n3";
}
core_excluiNoTree(sUrl,no,mensagem)
}
function editar(tipo,id)
{
core_carregando("ativa");
core_carregando(" buscando dados");
var callback =
{
success:function(o)
{
try
{
if(tipo == "grupo")
{
var dados = YAHOO.lang.JSON.parse(o.responseText)[0];
core_montaEditor("gravaDados('grupo','"+id+"')")
$i("editor_bd").innerHTML = montaDivGrupo(dados)
core_comboGrupos("comboGrupo","Eid_grupo",dados.id_grupo,"")
core_comboPerfis("comboPerfil","Eperfil_grupo","","registraPerfil(this.value,\"En1_perfil\")")
}
if(tipo == "subgrupo")
{
var dados = YAHOO.lang.JSON.parse(o.responseText)[0];
core_montaEditor("gravaDados('subgrupo','"+id+"')")
$i("editor_bd").innerHTML = montaDivSubGrupo(dados)
core_comboSubGrupos("comboSubGrupo","Eid_subgrupo",dados.id_subgrupo,"")
core_comboPerfis("comboPerfil","Eperfil_subgrupo","","registraPerfil(this.value,\"En2_perfil\")")
}
if(tipo == "tema")
{
var dados = YAHOO.lang.JSON.parse(o.responseText)[0];
core_montaEditor("gravaDados('tema','"+id+"')")
$i("editor_bd").innerHTML = montaDivTema(dados)
core_comboTemas("comboTema","Eid_tema",dados.id_tema,"")
core_comboPerfis("comboPerfil","Eperfil_tema","","registraPerfil(this.value,\"En3_perfil\")")
}
if(tipo == "raizmenu" || tipo == "raizgrupo")
{
var dados = YAHOO.lang.JSON.parse(o.responseText)[0];
core_montaEditor("gravaDados('"+tipo+"','"+id+"')")
$i("editor_bd").innerHTML = montaDivRaiz(dados)
core_comboTemas("comboTema","Eid_tema",dados.id_tema,"")
core_comboPerfis("comboPerfil","Eperfil","","registraPerfil(this.value,\"Eperfil\")")
}
core_carregando("desativa");
}
catch(e){core_handleFailure(e,o.responseText);}
},
failure:core_handleFailure,
argument: { foo:"foo", bar:"bar" }
};
if(tipo == "grupo")
{var sUrl = "../php/arvore.php?funcao=pegaDadosGrupo&id="+id;}
if(tipo == "subgrupo")
{var sUrl = "../php/arvore.php?funcao=pegaDadosSubGrupo&id="+id;}
if(tipo == "tema")
{var sUrl = "../php/arvore.php?funcao=pegaDadosTema&id="+id;}
if(tipo == "raizmenu" || tipo == "raizgrupo")
{var sUrl = "../php/arvore.php?funcao=pegaDadosRaiz&id="+id;}
core_makeRequest(sUrl,callback)
}
function montaDivGrupo(i)
{
var ins = " Grupo:
"
ins += "
Buscando...
"
ins += "
Perfis que podem ver:
"
ins += ""
ins += "
Buscando...
";
ins += " Publicado? "
ins += ""
ins += "
"
ins += ""
return(ins)
}
function montaDivSubGrupo(i)
{
var ins = " Sub-Grupo:
"
ins += "
Buscando...
"
ins += "
Perfis que podem ver:
"
ins += ""
ins += "
Buscando...
";
ins += " Publicado? "
ins += ""
ins += "
"
ins += ""
return(ins)
}
function montaDivTema(i)
{
var ins = " Tema:
"
ins += "
Buscando...
"
ins += "
Perfis que podem ver:
"
ins += ""
ins += "
Buscando...
";
ins += " Publicado? "
ins += ""
ins += " Ordem "
ins += ""
return(ins)
}
function montaDivRaiz(i)
{
var ins = " Tema: