diff --git a/admin/admin.db b/admin/admin.db index 12b02ad..038e099 100755 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin/php/classe_arvore.php b/admin/php/classe_arvore.php index c05bf63..9b41d4b 100755 --- a/admin/php/classe_arvore.php +++ b/admin/php/classe_arvore.php @@ -92,7 +92,7 @@ class Arvore else{ $coluna = $idioma; } - $this->sql_grupos = "select CASE i3geoadmin_grupos.$coluna WHEN '' THEN nome_grupo ELSE i3geoadmin_grupos.$coluna END as nome_grupo,id_n1,id_menu,i3geoadmin_n1.publicado,n1_perfil,ordem from ".$this->esquemaadmin."i3geoadmin_n1 LEFT JOIN ".$this->esquemaadmin."i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo "; + $this->sql_grupos = "select CASE i3geoadmin_grupos.$coluna WHEN '' THEN nome_grupo ELSE i3geoadmin_grupos.$coluna END as nome_grupo,i3geoadmin_grupos.id_grupo, id_n1,id_menu,i3geoadmin_n1.publicado,n1_perfil,ordem from ".$this->esquemaadmin."i3geoadmin_n1 LEFT JOIN ".$this->esquemaadmin."i3geoadmin_grupos ON i3geoadmin_n1.id_grupo = i3geoadmin_grupos.id_grupo "; if($filtro === "ogc" || $filtro === "download"){ //esse sql retorna tambem os grupos dos temas que estao na raiz do grupo $this->sql_grupos = "select DISTINCT * from (select CASE grupos.$coluna WHEN '' THEN nome_grupo ELSE grupos.$coluna END as nome_grupo,gr.id_n1,gr.id_menu,gr.publicado,gr.n1_perfil, 0 as ordem from ".$this->esquemaadmin."i3geoadmin_grupos as grupos, ".$this->esquemaadmin."i3geoadmin_n1 as gr, ".$this->esquemaadmin."i3geoadmin_n2 as sg, ".$this->esquemaadmin."i3geoadmin_n3 as t, ".$this->esquemaadmin."i3geoadmin_temas as temas where gr.id_grupo = grupos.id_grupo AND sg.id_n1 = gr.id_n1 AND t.id_n2 = sg.id_n2 AND t.id_tema = temas.id_tema AND (temas.ogc_tema NOT IN ('NAO','nao') OR temas.download_tema NOT IN ('NAO','nao') ) UNION select c.nome_grupo as nome_grupo,a.id_nivel as id_n1,a.id_menu,'SIM' as publicado,a.perfil as n1_perfil, 0 as ordem from ".$this->esquemaadmin."i3geoadmin_raiz as a, ".$this->esquemaadmin."i3geoadmin_temas as b, ".$this->esquemaadmin."i3geoadmin_grupos as c, ".$this->esquemaadmin."i3geoadmin_n1 as d where nivel = 1 AND a.id_tema = b.id_tema AND a.id_nivel = d.id_n1 AND d.id_grupo = c.id_grupo) as s "; @@ -104,7 +104,7 @@ class Arvore else{ $coluna = $idioma; } - $this->sql_subgrupos = "select CASE i3geoadmin_subgrupos.$coluna WHEN '' THEN nome_subgrupo ELSE i3geoadmin_subgrupos.$coluna END as nome_subgrupo,i3geoadmin_n2.id_n2,i3geoadmin_n2.publicado,i3geoadmin_n2.n2_perfil from ".$this->esquemaadmin."i3geoadmin_n2 LEFT JOIN ".$this->esquemaadmin."i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo "; + $this->sql_subgrupos = "select CASE i3geoadmin_subgrupos.$coluna WHEN '' THEN nome_subgrupo ELSE i3geoadmin_subgrupos.$coluna END as nome_subgrupo,i3geoadmin_subgrupos.id_subgrupo,i3geoadmin_n2.id_n2,i3geoadmin_n2.publicado,i3geoadmin_n2.n2_perfil from ".$this->esquemaadmin."i3geoadmin_n2 LEFT JOIN ".$this->esquemaadmin."i3geoadmin_subgrupos ON i3geoadmin_n2.id_subgrupo = i3geoadmin_subgrupos.id_subgrupo "; if($idioma == "pt"){ $coluna = "nome_tema"; @@ -201,6 +201,54 @@ class Arvore return $resultado; } /* + Function: pegaListaDeTiposGrupos + + Retorna a lista de grupos de um menu + + Parametros: + + id_menu {string} + + Return: + + {array} + */ + function pegaListaDeTiposGrupos(){ + if($this->idioma == "pt"){ + $coluna = "nome_grupo"; + } + else{ + $coluna = $this->idioma; + } + $sql = "select CASE i3geoadmin_grupos.$coluna WHEN '' THEN nome_grupo ELSE i3geoadmin_grupos.$coluna END as nome_grupo, id_grupo from ".$this->esquemaadmin."i3geoadmin_grupos ORDER by nome_grupo "; + $grupos = $this->execSQL($sql); + return $grupos; + } + /* + Function: pegaListaDeTiposSubGrupos + + Retorna a lista de grupos de um menu + + Parametros: + + id_menu {string} + + Return: + + {array} + */ + function pegaListaDeTiposSubGrupos(){ + if($this->idioma == "pt"){ + $coluna = "nome_subgrupo"; + } + else{ + $coluna = $this->idioma; + } + $sql = "select CASE i3geoadmin_subgrupos.$coluna WHEN '' THEN nome_subgrupo ELSE i3geoadmin_subgrupos.$coluna END as nome_subgrupo, id_subgrupo from ".$this->esquemaadmin."i3geoadmin_subgrupos ORDER by nome_subgrupo "; + $subgrupos = $this->execSQL($sql); + return $subgrupos; + } + /* Function: procuraTemas Localiza temas conforme uma palavra de busca diff --git a/admin1/cadastros/identifica/index.php b/admin1/cadastros/identifica/index.php index 4ddcece..442b6a9 100755 --- a/admin1/cadastros/identifica/index.php +++ b/admin1/cadastros/identifica/index.php @@ -141,18 +141,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.identifica.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.identifica.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.identifica.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.identifica.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.identifica.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.identifica.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.identifica.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.identifica.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.identifica.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.identifica.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.identifica.dicionario.nao = i3GEOadmin.core.dicionario.nao; - i3GEOadmin.identifica.dicionario.publicado = i3GEOadmin.core.dicionario.publicado; + i3GEOadmin.identifica.dicionario = $.extend( + {}, + i3GEOadmin.identifica.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/cadastros/perfis/index.php b/admin1/cadastros/perfis/index.php index f21ab76..fdae457 100755 --- a/admin1/cadastros/perfis/index.php +++ b/admin1/cadastros/perfis/index.php @@ -101,15 +101,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.perfis.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.perfis.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.perfis.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.perfis.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.perfis.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.perfis.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.perfis.dicionario.txtPerfil = i3GEOadmin.core.dicionario.txtPerfil; - i3GEOadmin.perfis.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.perfis.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.perfis.dicionario = $.extend( + {}, + i3GEOadmin.perfis.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/cadastros/servicos/index.php b/admin1/cadastros/servicos/index.php index 79c5518..e59c27f 100755 --- a/admin1/cadastros/servicos/index.php +++ b/admin1/cadastros/servicos/index.php @@ -76,13 +76,13 @@ include "../../head.php";

{{{nome_ws}}}

- +
- +
@@ -142,17 +142,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.webservices.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.webservices.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.webservices.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.webservices.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.webservices.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.webservices.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.webservices.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.webservices.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.webservices.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.webservices.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.webservices.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.webservices.dicionario = $.extend( + {}, + i3GEOadmin.webservices.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/cadastros/tags/index.php b/admin1/cadastros/tags/index.php index 907e8f6..7ff17f4 100755 --- a/admin1/cadastros/tags/index.php +++ b/admin1/cadastros/tags/index.php @@ -101,15 +101,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.tags.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.tags.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.tags.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.tags.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.tags.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.tags.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.tags.dicionario.txtTag = i3GEOadmin.core.dicionario.txtTag; - i3GEOadmin.tags.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.tags.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.tags.dicionario = $.extend( + {}, + i3GEOadmin.tags.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/catalogo/atlas/index.php b/admin1/catalogo/atlas/index.php index 9d346df..176131d 100755 --- a/admin1/catalogo/atlas/index.php +++ b/admin1/catalogo/atlas/index.php @@ -204,17 +204,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.atlas.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.atlas.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.atlas.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.atlas.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.atlas.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.atlas.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.atlas.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.atlas.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.atlas.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.atlas.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.atlas.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.atlas.dicionario = $.extend( + {}, + i3GEOadmin.atlas.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/catalogo/atlas/pranchas/index.php b/admin1/catalogo/atlas/pranchas/index.php index da90fd2..b17d5f4 100755 --- a/admin1/catalogo/atlas/pranchas/index.php +++ b/admin1/catalogo/atlas/pranchas/index.php @@ -162,17 +162,11 @@ $titulo_atlas = filter_var($_GET["titulo_atlas"], FILTER_SANITIZE_STRING); //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.prancha.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.prancha.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.prancha.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.prancha.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.prancha.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.prancha.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.prancha.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.prancha.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.prancha.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.prancha.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.prancha.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.prancha.dicionario = $.extend( + {}, + i3GEOadmin.prancha.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/catalogo/atlas/pranchas/temas/index.php b/admin1/catalogo/atlas/pranchas/temas/index.php index c168d72..3ee5dc8 100755 --- a/admin1/catalogo/atlas/pranchas/temas/index.php +++ b/admin1/catalogo/atlas/pranchas/temas/index.php @@ -121,17 +121,11 @@ $id_atlas = filter_var($_GET["id_atlas"], FILTER_SANITIZE_NUMBER_INT); //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.prancha.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.prancha.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.prancha.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.prancha.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.prancha.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.prancha.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.prancha.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.prancha.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.prancha.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.prancha.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.prancha.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.prancha.dicionario = $.extend( + {}, + i3GEOadmin.prancha.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/catalogo/mapas/index.php b/admin1/catalogo/mapas/index.php index 7ade179..5182c6d 100755 --- a/admin1/catalogo/mapas/index.php +++ b/admin1/catalogo/mapas/index.php @@ -200,17 +200,11 @@ include "../../head.php"; //traducao var t = $("#titulo"); //complementa dicionario - i3GEOadmin.mapas.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; - i3GEOadmin.mapas.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; - i3GEOadmin.mapas.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; - i3GEOadmin.mapas.dicionario.salvar = i3GEOadmin.core.dicionario.salva; - i3GEOadmin.mapas.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; - i3GEOadmin.mapas.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; - i3GEOadmin.mapas.dicionario.nome = i3GEOadmin.core.dicionario.nome; - i3GEOadmin.mapas.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; - i3GEOadmin.mapas.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; - i3GEOadmin.mapas.dicionario.sim = i3GEOadmin.core.dicionario.sim; - i3GEOadmin.mapas.dicionario.nao = i3GEOadmin.core.dicionario.nao; + i3GEOadmin.mapas.dicionario = $.extend( + {}, + i3GEOadmin.mapas.dicionario, + i3GEOadmin.core.dicionario + ); i3GEOadmin.core.dicionario = null; diff --git a/admin1/catalogo/menus/grupos/exec.php b/admin1/catalogo/menus/grupos/exec.php index 7714887..d5f4f3d 100755 --- a/admin1/catalogo/menus/grupos/exec.php +++ b/admin1/catalogo/menus/grupos/exec.php @@ -1,4 +1,7 @@ pegaGruposMenu($id_menu); $temas = $arvore->pegaTodosTemas(true); + $tiposGrupos = $arvore->pegaListaDeTiposGrupos(); unset($arvore); $grupos["perfis"] = $perfis; $grupos["temas"] = $temas; + $grupos["tiposGrupos"] = $tiposGrupos; retornaJSON($grupos); break; case "EXCLUIR" : - $temas = pegaDados("SELECT id_tema from ".$esquemaadmin."i3geoadmin_atlast where id_prancha = '$id_prancha'"); - if(count($temas) > 0){ - header ( "HTTP/1.1 500 erro ao excluir. Exclua os temas da prancha primeiro" ); + $r = pegaDados("SELECT id_n2 from ".$esquemaadmin."i3geoadmin_n2 where id_n1 ='$id'"); + if(count($r) > 0){ + header ( "HTTP/1.1 500 erro ao excluir. Exclua os subgrupos primeiro" ); + exit (); + } + $r = pegaDados("SELECT id_raiz from ".$esquemaadmin."i3geoadmin_raiz where nivel='1' and id_nivel ='$id'"); + if(count($r) > 0){ + header ( "HTTP/1.1 500 erro ao excluir. Exclua os temas na raiz do grupo primeiro" ); exit (); } - $retorna = excluir ( $id_prancha, $dbhw ); + $retorna = excluir ( $id_n1, $dbhw ); $dbhw = null; $dbh = null; if ($retorna === false) { header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); exit (); } - retornaJSON ( $id_prancha ); + retornaJSON ( $id_n1 ); exit (); break; } cpjson ( $retorno ); -function adicionar( $id_atlas, $titulo_prancha, $ordem_prancha, $desc_prancha, $h_prancha, $icone_prancha, $link_prancha, $mapext_prancha, $w_prancha, $dbhw) { +function adicionar( $id_grupo, $id_menu, $publicado, $n1_perfil, $ordem, $dbhw) { global $esquemaadmin; try { $dataCol = array( - "ordem_prancha"=>0, - "mapext_prancha"=>'', - "desc_prancha"=>'', - "h_prancha"=>$h_prancha == "" ? 0 : $h_prancha, - "w_prancha"=>$w_prancha == "" ? 0 : $w_prancha, - "icone_prancha"=>'', - "link_prancha"=>'', - "titulo_prancha"=>'', - "id_atlas"=>$id_atlas + "id_menu" => $id_menu, + "publicado" => 'NAO', + "ordem" => 0, + "n1_perfil" => '' ); - $id_prancha = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_atlasp",$dataCol,"titulo_prancha","id_prancha"); - $retorna = alterar ( $id_atlas, $id_prancha, $titulo_prancha, $ordem_prancha, $desc_prancha, $h_prancha, $icone_prancha, $link_prancha, $mapext_prancha, $w_prancha, $dbhw ); - + $id_n1 = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_n1",$dataCol,"n1_perfil","id_n1"); + $retorna = alterar ( $id_n1, $id_grupo, $id_menu, $publicado, $n1_perfil, $ordem, $dbhw ); return $retorna; } catch ( PDOException $e ) { return false; } } // $papeis deve ser um array -function alterar($id_atlas, $id_prancha, $titulo_prancha, $ordem_prancha, $desc_prancha, $h_prancha, $icone_prancha, $link_prancha, $mapext_prancha, $w_prancha, $dbhw) { +function alterar($id_n1, $id_grupo, $id_menu, $publicado, $n1_perfil, $ordem, $dbhw) { global $esquemaadmin; - if($convUTF){ - $desc_prancha = utf8_encode($desc_prancha); - $titulo_prancha = utf8_encode($titulo_prancha); - } $dataCol = array( - "ordem_prancha"=>$ordem_prancha, - "mapext_prancha"=>$mapext_prancha, - "desc_prancha"=>$desc_prancha, - "h_prancha"=>$h_prancha == "" ? 0 : $h_prancha, - "w_prancha"=>$w_prancha == "" ? 0 : $w_prancha, - "icone_prancha"=>$icone_prancha, - "link_prancha"=>$link_prancha, - "titulo_prancha"=>$titulo_prancha + "publicado" => $publicado, + "id_grupo" => $id_grupo, + "ordem" => $ordem, + "n1_perfil" => $n1_perfil ); - $resultado = i3GeoAdminUpdate ( $dbhw, "i3geoadmin_atlasp", $dataCol, "WHERE id_prancha = $id_prancha AND id_atlas = $id_atlas" ); + $resultado = i3GeoAdminUpdate($dbhw,"i3geoadmin_n1",$dataCol,"WHERE id_n1 = $id_n1"); if ($resultado === false) { return false; } - return $id_atlas; + return $id_n1; } -function excluir($id_prancha, $dbhw) { +function excluir($id_n1, $dbhw) { global $esquemaadmin; - $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_atlasp", "id_prancha", $id_prancha, $dbhw, false ); + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_n1", "id_n1", $id_n1, $dbhw, false ); if ($resultado === false) { return false; } diff --git a/admin1/catalogo/menus/grupos/execraiz.php b/admin1/catalogo/menus/grupos/execraiz.php new file mode 100755 index 0000000..e8912f2 --- /dev/null +++ b/admin1/catalogo/menus/grupos/execraiz.php @@ -0,0 +1,134 @@ + $id_menu, + "id_nivel" => 0, + "nivel" => 0, + "ordem" => 0, + "perfil" => '' + ); + $id_raiz = i3GeoAdminInsertUnico ( $dbhw, "i3geoadmin_raiz", $dataCol, "perfil", "id_raiz" ); + + $retorna = alterar ( $id_raiz, $id_tema, $ordem, $perfil, $dbhw ); + + return $retorna; + } catch ( PDOException $e ) { + return false; + } +} +// $papeis deve ser um array +function alterar($id_raiz, $id_tema, $ordem, $perfil, $dbhw) { + global $esquemaadmin; + + $dataCol = array( + "id_tema" => $id_tema, + "perfil" => $perfil, + "ordem" => $ordem + ); + $resultado = i3GeoAdminUpdate($dbhw,"i3geoadmin_raiz",$dataCol,"WHERE id_raiz = $id_raiz"); + $retorna = $id; + if ($resultado === false) { + return false; + } + return $id_raiz; +} +function excluir($id_raiz, $dbhw) { + global $esquemaadmin; + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_raiz", "id_raiz", $id_raiz, $dbhw, false ); + if ($resultado === false) { + return false; + } + return $resultado; +} +?> diff --git a/admin1/catalogo/menus/grupos/index.js b/admin1/catalogo/menus/grupos/index.js index 66d4db4..ce605e6 100755 --- a/admin1/catalogo/menus/grupos/index.js +++ b/admin1/catalogo/menus/grupos/index.js @@ -24,10 +24,12 @@ Free Software Foundation, Inc., no endereço */ i3GEOadmin.grupos = { id_menu: "", + nome_menu: "", ondeRaiz: "", ondeNos: "", //conteudo html do formulario de adicao na raiz formAdicionaRaiz: "", + formAdicionaNo: "", init: function(ondenos,onderaiz){ i3GEOadmin.grupos.ondeRaiz = onderaiz; i3GEOadmin.grupos.ondeNos = ondenos; @@ -50,7 +52,7 @@ i3GEOadmin.grupos = { {"data":json["perfis"]} ); i3GEOadmin.grupos.listaRaiz(json["raiz"],opcoesPerfil,json["temas"]); - i3GEOadmin.grupos.listaNos(json["grupos"],opcoesPerfil); + i3GEOadmin.grupos.listaNos(json["grupos"],opcoesPerfil,json["tiposGrupos"]); $.material.init(); } ) @@ -77,15 +79,15 @@ i3GEOadmin.grupos = { var id = ""; //marca o selecionado $(temas).each( - function(i,el){ - if(el.codigo_tema == p){ - temas[i]["selected"] = "selected"; - id = i; - } - else{ - temas[i]["selected"] = ""; - } + function(i,el){ + if(el.codigo_tema == p){ + temas[i]["selected"] = "selected"; + id = i; } + else{ + temas[i]["selected"] = ""; + } + } ); var html = '' + Mustache.to_html( "{{#data}}" + $("#templateOpcoesTema").html() + "{{/data}}", @@ -127,9 +129,7 @@ i3GEOadmin.grupos = { i3GEOadmin.grupos.formAdicionaRaiz = html; } }, - listaNos: function(dados,opcoesPerfil){ - //{"nome_grupo":"_Grupo teste","id_n1":"3","id_menu":"4","publicado":"SIM","n1_perfil":""} - + listaNos: function(dados,opcoesPerfil,grupos){ var templateNos = $("#templateNos").html(); var html = Mustache.to_html( "{{#data}}" + templateNos + "{{/data}}", @@ -141,15 +141,43 @@ i3GEOadmin.grupos = { "opcoesPerfil": opcoesPerfil, "onExcluir": "i3GEOadmin.grupos.excluirNoDialogo",//funcao "onSalvar": "i3GEOadmin.grupos.salvarNoDialogo",//funcao + "opcoesPublicado": function(){ + var hash = {}; + hash[this.publicado + "-sel"] = "selected"; + hash["sim"] = i3GEOadmin.grupos.dicionario.sim; + hash["nao"] = i3GEOadmin.grupos.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesPublicado").html(), + hash + ); + }, "opcoesNo": function(){ - + var p = this.id_grupo; + var id = ""; + //marca o selecionado + $(grupos).each( + function(i,el){ + if(el.id_grupo == p){ + grupos[i]["selected"] = "selected"; + id = i; + } + else{ + grupos[i]["selected"] = ""; + } + } + ); + var html = '' + Mustache.to_html( + "{{#data}}" + $("#templateOpcoesNo").html() + "{{/data}}", + {"data":grupos} + ); + //volta ao normal + grupos[id]["selected"] = ""; + return html; } } ) ); i3GEOadmin.grupos.ondeNos.html(html); - - //valor do filtro atual var filtro = i3GEOadmin.core.valorFiltro(); //filtro @@ -161,7 +189,41 @@ i3GEOadmin.grupos = { $("#filtro").combobox(); if(filtro != ""){ i3GEOadmin.core.defineFiltro(filtro); - i3GEOadmin.core.filtra(i3GEOadmin.grupos.pegaFiltro()); + i3GEOadmin.core.filtra(i3GEOadmin.core.pegaFiltro()); + } + if(i3GEOadmin.grupos.formAdicionaNo == ""){ + html = Mustache.to_html( + templateNos, + $.extend( + {}, + i3GEOadmin.grupos.dicionario, + { + "id_n1": "modal", + "escondido": "hidden", + "excluir": i3GEOadmin.grupos.dicionario.cancelar, + "opcoesPerfil": opcoesPerfil, + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao + "onSalvar": "i3GEOadmin.grupos.adicionaNo",//funcao + "opcoesPublicado": function(){ + var hash = {}; + hash["sim"] = i3GEOadmin.grupos.dicionario.sim; + hash["nao"] = i3GEOadmin.grupos.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesPublicado").html(), + hash + ); + }, + "opcoesNo": function(){ + var html = '' + Mustache.to_html( + "{{#data}}" + $("#templateOpcoesNo").html() + "{{/data}}", + {"data":grupos} + ); + return html; + } + } + ) + ); + i3GEOadmin.grupos.formAdicionaNo = html; } }, adicionaTemaDialogo: function(){ @@ -170,7 +232,96 @@ i3GEOadmin.grupos = { }, // os parametros sao obtidos do formulario aberto do modal adicionaTemaRaiz: function(){ - var parametros = $("#form-modal form").serialize(); + var parametros = $("#formRaiz-modal form").serialize(); + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "execraiz.php?funcao=adicionar", + parametros + "&id_menu=" + i3GEOadmin.grupos.id_menu + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeRaiz); + i3GEOadmin.grupos.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + excluirTemaDialogo: function(id){ + var hash = { + "mensagem": i3GEOadmin.grupos.dicionario.confirma, + "onBotao1": "i3GEOadmin.grupos.excluirTema('"+id+"')", + "botao1": i3GEOadmin.grupos.dicionario.sim, + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.grupos.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + excluirTema: function(id){ + i3GEOadmin.core.modalAguarde(true); + $.post( + "execraiz.php?funcao=excluir", + "id_raiz=" + id + "&id_menu=" + i3GEOadmin.grupos.id_menu + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + var json = jQuery.parseJSON(data)*1; + $("#formRaiz-" + json).remove(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + salvarTemaDialogo: function(id){ + var hash = { + "mensagem": i3GEOadmin.grupos.dicionario.confirma, + "onBotao1": "i3GEOadmin.grupos.salvarTema('"+id+"')", + "botao1": i3GEOadmin.grupos.dicionario.sim, + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.grupos.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + salvarTema: function(id){ + var parametros = $("#formRaiz-" + id + " form").serialize(); + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "execraiz.php?funcao=alterar", + "id_raiz="+ id + "&"+parametros + "&id_menu=" + i3GEOadmin.grupos.id_menu + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeRaiz); + i3GEOadmin.grupos.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + adicionaNoDialogo: function(){ + i3GEOadmin.core.abreModalGeral(i3GEOadmin.grupos.formAdicionaNo); + $("#body-formNo-modal").collapse('show'); + }, +// os parametros sao obtidos do formulario aberto do modal + adicionaNo: function(){ + var parametros = $("#formNo-modal form").serialize(); i3GEOadmin.core.fechaModalGeral(); i3GEOadmin.core.modalAguarde(true); $.post( @@ -180,7 +331,7 @@ i3GEOadmin.grupos = { .done( function(data, status){ i3GEOadmin.core.modalAguarde(false); - i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeLista); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeNos); i3GEOadmin.grupos.lista(); } ) @@ -191,27 +342,27 @@ i3GEOadmin.grupos = { } ); }, - excluirDialogo: function(id){ + excluirNoDialogo: function(id){ var hash = { "mensagem": i3GEOadmin.grupos.dicionario.confirma, - "onBotao1": "i3GEOadmin.grupos.excluir('"+id+"')", + "onBotao1": "i3GEOadmin.grupos.excluirNo('"+id+"')", "botao1": i3GEOadmin.grupos.dicionario.sim, "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", "botao2": i3GEOadmin.grupos.dicionario.nao }; i3GEOadmin.core.abreModalConfirma(hash); }, - excluir: function(id){ + excluirNo: function(id){ i3GEOadmin.core.modalAguarde(true); $.post( "exec.php?funcao=excluir", - "id_grupos=" + id + "&id_menu=" + i3GEOadmin.grupos.id_menu + "id_n1=" + id ) .done( function(data, status){ i3GEOadmin.core.modalAguarde(false); var json = jQuery.parseJSON(data)*1; - $("#form-" + json).remove(); + $("#formNo-" + json).remove(); } ) .fail( @@ -221,28 +372,28 @@ i3GEOadmin.grupos = { } ); }, - salvarDialogo: function(id){ + salvarNoDialogo: function(id){ var hash = { "mensagem": i3GEOadmin.grupos.dicionario.confirma, - "onBotao1": "i3GEOadmin.grupos.salvar('"+id+"')", + "onBotao1": "i3GEOadmin.grupos.salvarNo('"+id+"')", "botao1": i3GEOadmin.grupos.dicionario.sim, "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", "botao2": i3GEOadmin.grupos.dicionario.nao }; i3GEOadmin.core.abreModalConfirma(hash); }, - salvar: function(id){ - var parametros = $("#form-" + id + " form").serialize(); + salvarNo: function(id){ + var parametros = $("#formNo-" + id + " form").serialize(); i3GEOadmin.core.fechaModalGeral(); i3GEOadmin.core.modalAguarde(true); $.post( "exec.php?funcao=alterar", - "id_grupos="+ id + "&"+parametros + "&id_menu=" + i3GEOadmin.grupos.id_menu + "id_n1="+ id + "&"+parametros + "&id_menu=" + i3GEOadmin.grupos.id_menu ) .done( function(data, status){ i3GEOadmin.core.modalAguarde(false); - i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeLista); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeNos); i3GEOadmin.grupos.lista(); } ) @@ -253,12 +404,12 @@ i3GEOadmin.grupos = { } ); }, - editarTemas: function(id_menu, id_grupos,titulo_grupos){ + editarSubGrupos: function(id,titulo){ //muda a url para que o usuario possa voltar pelo botao do navegador - var u = window.location.origin + window.location.pathname + "?id_menu=" + id_menu + "&id_filtro=" + id_grupos; + var u = window.location.origin + window.location.pathname + "?nome_menu=" + i3GEOadmin.grupos.nome_menu + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&id_filtro=" + id; window.history.replaceState(null,null,u); //abre a pagina de edicao - window.location.href = "temas/index.php?id_grupos=" + id_grupos + "&titulo_grupos=" + titulo_grupos + "&id_menu=" + id_menu; + window.location.href = "subgrupos/index.php?id_n1=" + id + "&nome_grupo=" + titulo + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu; }, addInput: function(id,valor){ var i = $("#"+id); diff --git a/admin1/catalogo/menus/grupos/index.php b/admin1/catalogo/menus/grupos/index.php index e478855..a0109a8 100755 --- a/admin1/catalogo/menus/grupos/index.php +++ b/admin1/catalogo/menus/grupos/index.php @@ -28,7 +28,7 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING );

{{{txtTitulo}}}

- +

{{{txtDesc}}}

-
- +
@@ -132,14 +131,14 @@ include "../../head.php"; class="btn btn-primary" role="button">{{salvar}}
-