Commit 0e94bce8a90b9ab61abfb14cb19454289880b12f
1 parent
896df65b
Exists in
master
and in
7 other branches
Adaptação do editor de menus para bootstrap
Showing
10 changed files
with
591 additions
and
16 deletions
Show diff stats
admin1/catalogo/menus/grupos/index.js
| @@ -406,7 +406,10 @@ i3GEOadmin.grupos = { | @@ -406,7 +406,10 @@ i3GEOadmin.grupos = { | ||
| 406 | }, | 406 | }, |
| 407 | editarSubGrupos: function(id,titulo){ | 407 | editarSubGrupos: function(id,titulo){ |
| 408 | //muda a url para que o usuario possa voltar pelo botao do navegador | 408 | //muda a url para que o usuario possa voltar pelo botao do navegador |
| 409 | - var u = window.location.origin + window.location.pathname + "?nome_menu=" + i3GEOadmin.grupos.nome_menu + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&id_filtro=" + id; | 409 | + var u = window.location.origin |
| 410 | + + window.location.pathname | ||
| 411 | + + "?id_filtro=" + id + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu | ||
| 412 | + + "&nome_grupo=" + titulo + "&id_n1=" + id; | ||
| 410 | window.history.replaceState(null,null,u); | 413 | window.history.replaceState(null,null,u); |
| 411 | //abre a pagina de edicao | 414 | //abre a pagina de edicao |
| 412 | window.location.href = "subgrupos/index.php?id_n1=" + id + "&nome_grupo=" + titulo + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu; | 415 | window.location.href = "subgrupos/index.php?id_n1=" + id + "&nome_grupo=" + titulo + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu; |
admin1/catalogo/menus/grupos/index.php
| @@ -26,9 +26,9 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | @@ -26,9 +26,9 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | ||
| 26 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> | 26 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> |
| 27 | <i class="material-icons">help</i> | 27 | <i class="material-icons">help</i> |
| 28 | </button> | 28 | </button> |
| 29 | - <h3>{{{txtTitulo}}}</h3> | ||
| 30 | - <h3><?php echo $nome_menu; ?></h3> | ||
| 31 | - <h4>{{{txtDesc}}}</h4> | 29 | + <h2><small>{{{menu}}}: <?php echo $nome_menu; ?></small></h2> |
| 30 | + <blockquote>{{{txtDesc}}}</blockquote> | ||
| 31 | + | ||
| 32 | <!-- aqui entra o filtro --> | 32 | <!-- aqui entra o filtro --> |
| 33 | <div class="form-group"> | 33 | <div class="form-group"> |
| 34 | <label class="control-label">{{{filtro}}}</label> <select | 34 | <label class="control-label">{{{filtro}}}</label> <select |
admin1/catalogo/menus/grupos/subgrupos/index.js
| @@ -406,12 +406,16 @@ i3GEOadmin.subgrupos = { | @@ -406,12 +406,16 @@ i3GEOadmin.subgrupos = { | ||
| 406 | } | 406 | } |
| 407 | ); | 407 | ); |
| 408 | }, | 408 | }, |
| 409 | - editarSubsubgrupos: function(id,titulo){ | 409 | + editarTemas: function(id,titulo){ |
| 410 | //muda a url para que o usuario possa voltar pelo botao do navegador | 410 | //muda a url para que o usuario possa voltar pelo botao do navegador |
| 411 | - var u = window.location.origin + window.location.pathname + "?nome_menu=" + i3GEOadmin.subgrupos.nome_menu + "id_menu=" + i3GEOadmin.subgrupos.id_menu + "&id_filtro=" + id_n1; | 411 | + var u = window.location.origin |
| 412 | + + window.location.pathname | ||
| 413 | + + "?id_filtro=" + id + "&id_menu=" + i3GEOadmin.subgrupos.id_menu + "&nome_menu=" + i3GEOadmin.subgrupos.nome_menu | ||
| 414 | + + "&nome_grupo=" + i3GEOadmin.subgrupos.nome_grupo + "&id_n1=" + i3GEOadmin.subgrupos.id_n1 | ||
| 415 | + + "&nome_subgrupo=" + titulo + "&id_n2=" + id; | ||
| 412 | window.history.replaceState(null,null,u); | 416 | window.history.replaceState(null,null,u); |
| 413 | //abre a pagina de edicao | 417 | //abre a pagina de edicao |
| 414 | - window.location.href = "subsubgrupos/index.php?id_n2=" + id + "&nome_grupo=" + titulo + "&id_menu=" + i3GEOadmin.subgrupos.id_menu + "&nome_menu=" + i3GEOadmin.subgrupos.nome_menu; | 418 | + window.location.href = "temas/index.php?id_n1=" + i3GEOadmin.subgrupos.id_n1 + "&nome_grupo=" + i3GEOadmin.subgrupos.nome_grupo + "&id_n2=" + id + "&nome_subgrupo=" + titulo + "&id_menu=" + i3GEOadmin.subgrupos.id_menu + "&nome_menu=" + i3GEOadmin.subgrupos.nome_menu; |
| 415 | }, | 419 | }, |
| 416 | addInput: function(id,valor){ | 420 | addInput: function(id,valor){ |
| 417 | var i = $("#"+id); | 421 | var i = $("#"+id); |
admin1/catalogo/menus/grupos/subgrupos/index.php
| @@ -30,9 +30,8 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | @@ -30,9 +30,8 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | ||
| 30 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> | 30 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> |
| 31 | <i class="material-icons">help</i> | 31 | <i class="material-icons">help</i> |
| 32 | </button> | 32 | </button> |
| 33 | - <h3>{{{txtTitulo}}}</h3> | ||
| 34 | - <h3><?php echo $nome_grupo; ?></h3> | ||
| 35 | - <h4>{{{txtDesc}}}</h4> | 33 | + <h2><small>{{{txtTitulo}}}: <?php echo $nome_grupo; ?></small></h2> |
| 34 | + <blockquote>{{{txtDesc}}}</blockquote> | ||
| 36 | <!-- aqui entra o filtro --> | 35 | <!-- aqui entra o filtro --> |
| 37 | <div class="form-group"> | 36 | <div class="form-group"> |
| 38 | <label class="control-label">{{{filtro}}}</label> <select | 37 | <label class="control-label">{{{filtro}}}</label> <select |
| @@ -195,7 +194,7 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | @@ -195,7 +194,7 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | ||
| 195 | </div> | 194 | </div> |
| 196 | <div class="panel-footer {{escondido}}" style="padding-top: 0px; padding-bottom: 0px;"> | 195 | <div class="panel-footer {{escondido}}" style="padding-top: 0px; padding-bottom: 0px;"> |
| 197 | <div class="pull-right"> | 196 | <div class="pull-right"> |
| 198 | - <button onclick="i3GEOadmin.subgrupos.editarSubsubgrupos('{{id_n2}}','{{{nome_subgrupo}}}')" class="btn btn-primary btn-xs" style="margin-top: 2px; margin-bottom: 2px;"> | 197 | + <button onclick="i3GEOadmin.subgrupos.editarTemas('{{id_n2}}','{{{nome_subgrupo}}}')" class="btn btn-primary btn-xs" style="margin-top: 2px; margin-bottom: 2px;"> |
| 199 | <i class="material-icons">folder_open</i> {{{editarSub}}} | 198 | <i class="material-icons">folder_open</i> {{{editarSub}}} |
| 200 | </button> | 199 | </button> |
| 201 | </div> | 200 | </div> |
| @@ -0,0 +1,145 @@ | @@ -0,0 +1,145 @@ | ||
| 1 | +<?php | ||
| 2 | +// | ||
| 3 | +//Executa as operacoes para um grupo de um menu | ||
| 4 | +// | ||
| 5 | +/* | ||
| 6 | + * Licenca: | ||
| 7 | + * | ||
| 8 | + * GPL2 | ||
| 9 | + * | ||
| 10 | + * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | ||
| 11 | + * | ||
| 12 | + * Direitos Autorais Reservados (c) 2006 Edmar Moretti | ||
| 13 | + * Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com | ||
| 14 | + * | ||
| 15 | + * Este programa é software livre; você pode redistribuí-lo | ||
| 16 | + * e/ou modificá-lo sob os termos da Licença Pública Geral | ||
| 17 | + * GNU conforme publicada pela Free Software Foundation; | ||
| 18 | + * | ||
| 19 | + * Este programa é distribuído na expectativa de que seja útil, | ||
| 20 | + * porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita | ||
| 21 | + * de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. | ||
| 22 | + * Consulte a Licença Pública Geral do GNU para mais detalhes. | ||
| 23 | + * Você deve ter recebido uma copia da Licença Pública Geral do | ||
| 24 | + * GNU junto com este programa; se não, escreva para a | ||
| 25 | + * Free Software Foundation, Inc., no endereço | ||
| 26 | + * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | ||
| 27 | + */ | ||
| 28 | +error_reporting ( 0 ); | ||
| 29 | +// | ||
| 30 | +// pega as variaveis passadas com get ou post | ||
| 31 | +// | ||
| 32 | + | ||
| 33 | +include_once (dirname ( __FILE__ ) . "/../../../../../../admin/php/login.php"); | ||
| 34 | +$funcoesEdicao = array ( | ||
| 35 | + "ADICIONAR", | ||
| 36 | + "ALTERAR", | ||
| 37 | + "EXCLUIR" | ||
| 38 | +); | ||
| 39 | +if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) { | ||
| 40 | + if (verificaOperacaoSessao ( "admin/html/arvore" ) === false) { | ||
| 41 | + header ( "HTTP/1.1 403 Vc nao pode realizar essa operacao" ); | ||
| 42 | + exit (); | ||
| 43 | + } | ||
| 44 | +} | ||
| 45 | +include (dirname ( __FILE__ ) . "/../../../../../../admin/php/conexao.php"); | ||
| 46 | + | ||
| 47 | +$funcao = strtoupper ( $funcao ); | ||
| 48 | +switch ($funcao) { | ||
| 49 | + case "ADICIONAR" : | ||
| 50 | + $novo = adicionar( $id_subgrupo, $id_n1, $publicado, $n2_perfil, $ordem, $dbhw ); | ||
| 51 | + if ($novo === false) { | ||
| 52 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
| 53 | + exit (); | ||
| 54 | + } | ||
| 55 | + exit (); | ||
| 56 | + break; | ||
| 57 | + case "ALTERAR" : | ||
| 58 | + $novo = alterar ( $id_n2, $id_subgrupo, $id_menu, $publicado, $n2_perfil, $ordem, $dbhw ); | ||
| 59 | + if ($novo === false) { | ||
| 60 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
| 61 | + exit (); | ||
| 62 | + } | ||
| 63 | + $dados = pegaDados ( "SELECT id_n2 from ".$esquemaadmin."i3geoadmin_n2 WHERE id_n2 = $id_n2", $dbh, false ); | ||
| 64 | + | ||
| 65 | + if ($dados === false) { | ||
| 66 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
| 67 | + exit (); | ||
| 68 | + } | ||
| 69 | + $dbhw = null; | ||
| 70 | + $dbh = null; | ||
| 71 | + retornaJSON ( $dados ); | ||
| 72 | + exit (); | ||
| 73 | + break; | ||
| 74 | + case "LISTA" : | ||
| 75 | + $perfis = pegaDados ( "SELECT id_perfil, perfil from ".$esquemaadmin."i3geoadmin_perfis order by perfil", $dbh, false ); | ||
| 76 | + $dbhw = null; | ||
| 77 | + $dbh = null; | ||
| 78 | + include($locaplic."/admin/php/classe_arvore.php"); | ||
| 79 | + $arvore = new Arvore($locaplic); | ||
| 80 | + $temassubgrupo = array("dados" => $arvore->pegaTemasSubGrupo($id_n2)); | ||
| 81 | + $temas = $arvore->pegaTodosTemas(true); | ||
| 82 | + unset($arvore); | ||
| 83 | + $temassubgrupo["perfis"] = $perfis; | ||
| 84 | + $temassubgrupo["temas"] = $temas; | ||
| 85 | + retornaJSON($temassubgrupo); | ||
| 86 | + break; | ||
| 87 | + case "EXCLUIR" : | ||
| 88 | + $r = pegaDados("SELECT id_n3 from ".$esquemaadmin."i3geoadmin_n3 where id_n2 ='$id'"); | ||
| 89 | + if(count($r) > 0){ | ||
| 90 | + header ( "HTTP/1.1 500 erro ao excluir. Exclua os subgrupos primeiro" ); | ||
| 91 | + exit (); | ||
| 92 | + } | ||
| 93 | + $retorna = excluir ( $id_n2, $dbhw ); | ||
| 94 | + $dbhw = null; | ||
| 95 | + $dbh = null; | ||
| 96 | + if ($retorna === false) { | ||
| 97 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | ||
| 98 | + exit (); | ||
| 99 | + } | ||
| 100 | + retornaJSON ( $id_n2 ); | ||
| 101 | + exit (); | ||
| 102 | + break; | ||
| 103 | +} | ||
| 104 | +cpjson ( $retorno ); | ||
| 105 | + | ||
| 106 | +function adicionar( $id_subgrupo, $id_n1, $publicado, $n2_perfil, $ordem, $dbhw) { | ||
| 107 | + global $esquemaadmin; | ||
| 108 | + try { | ||
| 109 | + $dataCol = array( | ||
| 110 | + "id_n1" => $id_n1, | ||
| 111 | + "publicado" => 'NAO', | ||
| 112 | + "ordem" => 0, | ||
| 113 | + "n2_perfil" => '' | ||
| 114 | + ); | ||
| 115 | + $id_n2 = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_n2",$dataCol,"n2_perfil","id_n2"); | ||
| 116 | + $retorna = alterar ( $id_n2, $id_subgrupo, $id_n1, $publicado, $n2_perfil, $ordem, $dbhw ); | ||
| 117 | + return $retorna; | ||
| 118 | + } catch ( PDOException $e ) { | ||
| 119 | + return false; | ||
| 120 | + } | ||
| 121 | +} | ||
| 122 | +// $papeis deve ser um array | ||
| 123 | +function alterar($id_n2, $id_subgrupo, $id_n1, $publicado, $n2_perfil, $ordem, $dbhw) { | ||
| 124 | + global $esquemaadmin; | ||
| 125 | + $dataCol = array( | ||
| 126 | + "publicado" => $publicado, | ||
| 127 | + "id_subgrupo" => $id_subgrupo, | ||
| 128 | + "ordem" => $ordem, | ||
| 129 | + "n2_perfil" => $n2_perfil | ||
| 130 | + ); | ||
| 131 | + $resultado = i3GeoAdminUpdate($dbhw,"i3geoadmin_n2",$dataCol,"WHERE id_n2 = $id_n2"); | ||
| 132 | + if ($resultado === false) { | ||
| 133 | + return false; | ||
| 134 | + } | ||
| 135 | + return $id_n2; | ||
| 136 | +} | ||
| 137 | +function excluir($id_n1, $dbhw) { | ||
| 138 | + global $esquemaadmin; | ||
| 139 | + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_n2", "id_n2", $id_n2, $dbhw, false ); | ||
| 140 | + if ($resultado === false) { | ||
| 141 | + return false; | ||
| 142 | + } | ||
| 143 | + return $resultado; | ||
| 144 | +} | ||
| 145 | +?> |
| @@ -0,0 +1,223 @@ | @@ -0,0 +1,223 @@ | ||
| 1 | +/* | ||
| 2 | +Licenca: | ||
| 3 | + | ||
| 4 | +GPL2 | ||
| 5 | + | ||
| 6 | +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | ||
| 7 | + | ||
| 8 | +Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil | ||
| 9 | +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com | ||
| 10 | + | ||
| 11 | +Este programa é software livre; você pode redistribuí-lo | ||
| 12 | +e/ou modificá-lo sob os termos da Licença Pública Geral | ||
| 13 | +GNU conforme publicada pela Free Software Foundation; | ||
| 14 | + | ||
| 15 | +Este programa é distribuído na expectativa de que seja útil, | ||
| 16 | +porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita | ||
| 17 | +de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. | ||
| 18 | +Consulte a Licença Pública Geral do GNU para mais detalhes. | ||
| 19 | +Você deve ter recebido uma cópia da Licença Pública Geral do | ||
| 20 | +GNU junto com este programa; se não, escreva para a | ||
| 21 | +Free Software Foundation, Inc., no endereço | ||
| 22 | +59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | ||
| 23 | + | ||
| 24 | + */ | ||
| 25 | +i3GEOadmin.temas = { | ||
| 26 | + id_menu: "", | ||
| 27 | + nome_menu: "", | ||
| 28 | + id_n1: "", | ||
| 29 | + nome_grupo: "", | ||
| 30 | + id_n2: "", | ||
| 31 | + nome_subgrupo: "", | ||
| 32 | + onde: "", | ||
| 33 | + //conteudo html do formulario de adicao na raiz | ||
| 34 | + formAdiciona: "", | ||
| 35 | + init: function(onde){ | ||
| 36 | + i3GEOadmin.temas.onde = onde; | ||
| 37 | + i3GEOadmin.temas.lista(); | ||
| 38 | + }, | ||
| 39 | + lista: function(){ | ||
| 40 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.temas.onde); | ||
| 41 | + | ||
| 42 | + $.post( | ||
| 43 | + "exec.php?funcao=lista&id_n2=" + i3GEOadmin.temas.id_n2 | ||
| 44 | + ) | ||
| 45 | + .done( | ||
| 46 | + function(data, status){ | ||
| 47 | + //objeto json com os dados viondos do banco | ||
| 48 | + var json = jQuery.parseJSON(data); | ||
| 49 | + //combo com perfis | ||
| 50 | + var opcoesPerfil = '<option value="">---</option>' + Mustache.to_html( | ||
| 51 | + "{{#data}}" + $("#templateOpcoesPerfil").html() + "{{/data}}", | ||
| 52 | + {"data":json["perfis"]} | ||
| 53 | + ); | ||
| 54 | + i3GEOadmin.temas.listaTemas(json["dados"],opcoesPerfil,json["temas"]); | ||
| 55 | + $.material.init(); | ||
| 56 | + } | ||
| 57 | + ) | ||
| 58 | + .fail(function(data){ | ||
| 59 | + i3GEOadmin.temas.onde.html(""); | ||
| 60 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | ||
| 61 | + }); | ||
| 62 | + }, | ||
| 63 | + listaTemas: function(dados,opcoesPerfil,temas){ | ||
| 64 | + var template = $("#templateTemas").html(); | ||
| 65 | + var html = Mustache.to_html( | ||
| 66 | + "{{#data}}" + template + "{{/data}}", | ||
| 67 | + $.extend( | ||
| 68 | + {}, | ||
| 69 | + i3GEOadmin.temas.dicionario, | ||
| 70 | + { | ||
| 71 | + "data": dados, | ||
| 72 | + "opcoesPerfil": opcoesPerfil, | ||
| 73 | + "onExcluir": "i3GEOadmin.temas.excluirTemaDialogo",//funcao | ||
| 74 | + "onSalvar": "i3GEOadmin.temas.salvarTemaDialogo",//funcao | ||
| 75 | + "opcoesTema": function(){ | ||
| 76 | + var p = this.codigo_tema; | ||
| 77 | + var id = ""; | ||
| 78 | + //marca o selecionado | ||
| 79 | + $(temas).each( | ||
| 80 | + function(i,el){ | ||
| 81 | + if(el.codigo_tema == p){ | ||
| 82 | + temas[i]["selected"] = "selected"; | ||
| 83 | + id = i; | ||
| 84 | + } | ||
| 85 | + else{ | ||
| 86 | + temas[i]["selected"] = ""; | ||
| 87 | + } | ||
| 88 | + } | ||
| 89 | + ); | ||
| 90 | + var html = '<option value="">---</option>' + Mustache.to_html( | ||
| 91 | + "{{#data}}" + $("#templateOpcoesTema").html() + "{{/data}}", | ||
| 92 | + {"data":temas} | ||
| 93 | + ); | ||
| 94 | + //volta ao normal | ||
| 95 | + temas[id]["selected"] = ""; | ||
| 96 | + return html; | ||
| 97 | + } | ||
| 98 | + } | ||
| 99 | + ) | ||
| 100 | + ); | ||
| 101 | + i3GEOadmin.temas.onde.html(html); | ||
| 102 | + | ||
| 103 | + //monta um template para o modal de inclusao de novo tema | ||
| 104 | + if(i3GEOadmin.temas.formAdicionaRaiz == ""){ | ||
| 105 | + html = Mustache.to_html( | ||
| 106 | + $("#templateRaiz").html(), | ||
| 107 | + $.extend( | ||
| 108 | + {}, | ||
| 109 | + i3GEOadmin.temas.dicionario, | ||
| 110 | + { | ||
| 111 | + "id_raiz": "modal", | ||
| 112 | + "escondido": "hidden", | ||
| 113 | + "opcoesPerfil": opcoesPerfil, | ||
| 114 | + "excluir": i3GEOadmin.temas.dicionario.cancelar, | ||
| 115 | + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao | ||
| 116 | + "onSalvar": "i3GEOadmin.temas.adicionaTemaRaiz",//funcao | ||
| 117 | + "opcoesTema": function(){ | ||
| 118 | + var html = '<option value="">---</option>' + Mustache.to_html( | ||
| 119 | + "{{#data}}" + $("#templateOpcoesTema").html() + "{{/data}}", | ||
| 120 | + {"data":temas} | ||
| 121 | + ); | ||
| 122 | + return html; | ||
| 123 | + } | ||
| 124 | + } | ||
| 125 | + ) | ||
| 126 | + ); | ||
| 127 | + i3GEOadmin.temas.formAdicionaRaiz = html; | ||
| 128 | + } | ||
| 129 | + }, | ||
| 130 | + adicionaTemaDialogo: function(){ | ||
| 131 | + i3GEOadmin.core.abreModalGeral(i3GEOadmin.temas.formAdicionaRaiz); | ||
| 132 | + $("#body-formRaiz-modal").collapse('show'); | ||
| 133 | + }, | ||
| 134 | +// os parametros sao obtidos do formulario aberto do modal | ||
| 135 | + adicionaTema: function(){ | ||
| 136 | + var parametros = $("#formRaiz-modal form").serialize(); | ||
| 137 | + i3GEOadmin.core.fechaModalGeral(); | ||
| 138 | + i3GEOadmin.core.modalAguarde(true); | ||
| 139 | + $.post( | ||
| 140 | + "execraiz.php?funcao=adicionar", | ||
| 141 | + parametros + "&id_menu=" + i3GEOadmin.temas.id_menu + "&id_n1=" + i3GEOadmin.temas.id_n1 | ||
| 142 | + ) | ||
| 143 | + .done( | ||
| 144 | + function(data, status){ | ||
| 145 | + i3GEOadmin.core.modalAguarde(false); | ||
| 146 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.temas.ondeRaiz); | ||
| 147 | + i3GEOadmin.temas.lista(); | ||
| 148 | + } | ||
| 149 | + ) | ||
| 150 | + .fail( | ||
| 151 | + function(data){ | ||
| 152 | + i3GEOadmin.core.modalAguarde(false); | ||
| 153 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | ||
| 154 | + } | ||
| 155 | + ); | ||
| 156 | + }, | ||
| 157 | + excluirTemaDialogo: function(id){ | ||
| 158 | + var hash = { | ||
| 159 | + "mensagem": i3GEOadmin.temas.dicionario.confirma, | ||
| 160 | + "onBotao1": "i3GEOadmin.temas.excluirTema('"+id+"')", | ||
| 161 | + "botao1": i3GEOadmin.temas.dicionario.sim, | ||
| 162 | + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", | ||
| 163 | + "botao2": i3GEOadmin.temas.dicionario.nao | ||
| 164 | + }; | ||
| 165 | + i3GEOadmin.core.abreModalConfirma(hash); | ||
| 166 | + }, | ||
| 167 | + excluirTema: function(id){ | ||
| 168 | + i3GEOadmin.core.modalAguarde(true); | ||
| 169 | + $.post( | ||
| 170 | + "execraiz.php?funcao=excluir", | ||
| 171 | + "id_raiz=" + id + "&id_menu=" + i3GEOadmin.temas.id_menu | ||
| 172 | + ) | ||
| 173 | + .done( | ||
| 174 | + function(data, status){ | ||
| 175 | + i3GEOadmin.core.modalAguarde(false); | ||
| 176 | + var json = jQuery.parseJSON(data)*1; | ||
| 177 | + $("#formRaiz-" + json).remove(); | ||
| 178 | + } | ||
| 179 | + ) | ||
| 180 | + .fail( | ||
| 181 | + function(data){ | ||
| 182 | + i3GEOadmin.core.modalAguarde(false); | ||
| 183 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | ||
| 184 | + } | ||
| 185 | + ); | ||
| 186 | + }, | ||
| 187 | + salvarTemaDialogo: function(id){ | ||
| 188 | + var hash = { | ||
| 189 | + "mensagem": i3GEOadmin.temas.dicionario.confirma, | ||
| 190 | + "onBotao1": "i3GEOadmin.temas.salvarTema('"+id+"')", | ||
| 191 | + "botao1": i3GEOadmin.temas.dicionario.sim, | ||
| 192 | + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", | ||
| 193 | + "botao2": i3GEOadmin.temas.dicionario.nao | ||
| 194 | + }; | ||
| 195 | + i3GEOadmin.core.abreModalConfirma(hash); | ||
| 196 | + }, | ||
| 197 | + salvarTema: function(id){ | ||
| 198 | + var parametros = $("#formRaiz-" + id + " form").serialize(); | ||
| 199 | + i3GEOadmin.core.fechaModalGeral(); | ||
| 200 | + i3GEOadmin.core.modalAguarde(true); | ||
| 201 | + $.post( | ||
| 202 | + "execraiz.php?funcao=alterar", | ||
| 203 | + "id_raiz="+ id + "&"+parametros + "&id_menu=" + i3GEOadmin.temas.id_menu | ||
| 204 | + ) | ||
| 205 | + .done( | ||
| 206 | + function(data, status){ | ||
| 207 | + i3GEOadmin.core.modalAguarde(false); | ||
| 208 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.temas.ondeRaiz); | ||
| 209 | + i3GEOadmin.temas.lista(); | ||
| 210 | + } | ||
| 211 | + ) | ||
| 212 | + .fail( | ||
| 213 | + function(data){ | ||
| 214 | + i3GEOadmin.core.modalAguarde(false); | ||
| 215 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | ||
| 216 | + } | ||
| 217 | + ); | ||
| 218 | + }, | ||
| 219 | + addInput: function(id,valor){ | ||
| 220 | + var i = $("#"+id); | ||
| 221 | + $(i.val(i.val() + ' ' + valor)); | ||
| 222 | + } | ||
| 223 | +}; | ||
| 0 | \ No newline at end of file | 224 | \ No newline at end of file |
| @@ -0,0 +1,173 @@ | @@ -0,0 +1,173 @@ | ||
| 1 | +<?php | ||
| 2 | +define ( ONDEI3GEO, "../../../../../.." ); | ||
| 3 | +include (dirname ( __FILE__ ) . "/../../../../../../ms_configura.php"); | ||
| 4 | +error_reporting ( 0 ); | ||
| 5 | +include "../../../../../head.php"; | ||
| 6 | +$id_menu = filter_var ( $_GET ["id_menu"], FILTER_SANITIZE_NUMBER_INT ); | ||
| 7 | +$nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); | ||
| 8 | +$id_n1 = filter_var ( $_GET ["id_n1"], FILTER_SANITIZE_NUMBER_INT ); | ||
| 9 | +$nome_grupo = filter_var ( $_GET ["nome_grupo"], FILTER_SANITIZE_STRING ); | ||
| 10 | +$id_n2 = filter_var ( $_GET ["id_n2"], FILTER_SANITIZE_NUMBER_INT ); | ||
| 11 | +$nome_subgrupo = filter_var ( $_GET ["nome_subgrupo"], FILTER_SANITIZE_STRING ); | ||
| 12 | +?> | ||
| 13 | +<div class="container-fluid"> | ||
| 14 | + <div class="row"> | ||
| 15 | + <ol class="breadcrumb"> | ||
| 16 | + <li><a href="../../../../../init/index.php">i3Geo</a></li> | ||
| 17 | + <li><a href="../../../../../index.php">Admin</a></li> | ||
| 18 | + <li>Catálogo</li> | ||
| 19 | + <li><a href="../../../index.php">menus</a></li> | ||
| 20 | + <li><a href="../../../index.php?id_filtro=<?php echo $id_menu; ?>">menu: <?php echo $nome_menu; ?></a></li> | ||
| 21 | + <li><a href="../../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupos</a></li> | ||
| 22 | + <li><a | ||
| 23 | + href="../../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupo: <?php echo $nome_grupo; ?></a></li> | ||
| 24 | + <li><a | ||
| 25 | + href="../../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>&id_grupo=<?php echo $id_grupo; ?>&nome_grupo=<?php echo $nome_grupo; ?>">subgrupos</a></li> | ||
| 26 | + <li><a | ||
| 27 | + href="../../index.php?id_filtro=<?php echo $id_n2; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>&id_grupo=<?php echo $id_grupo; ?>&nome_grupo=<?php echo $nome_grupo; ?>">subgrupo: <?php echo $nome_subgrupo; ?></a></li> | ||
| 28 | + <li class="active">Temas</li> | ||
| 29 | + </ol> | ||
| 30 | + </div> | ||
| 31 | +</div> | ||
| 32 | +<div class="container" id="titulo"> | ||
| 33 | + <div class="row center-block"> | ||
| 34 | + <div class="col-md-12"> | ||
| 35 | + <div class="well hidden"> | ||
| 36 | + <h2> | ||
| 37 | + <small>{{{txtTitulo}}}: <?php echo $nome_subgrupo; ?></small> | ||
| 38 | + </h2> | ||
| 39 | + <blockquote>{{{txtDesc}}}</blockquote> | ||
| 40 | + <!-- aqui entra o filtro --> | ||
| 41 | + <div class="form-group"> | ||
| 42 | + <label class="control-label">{{{filtro}}}</label> <select | ||
| 43 | + onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg"> | ||
| 44 | + </select> | ||
| 45 | + </div> | ||
| 46 | + <div class="row pull-right"> | ||
| 47 | + <a onclick="i3GEOadmin.temas.adicionaTemaDialogo();" href="javascript:void(0)" | ||
| 48 | + class="btn btn-primary" role="button">{{{adicionarTema}}}</a> | ||
| 49 | + </div> | ||
| 50 | + <div class="clearfix"></div> | ||
| 51 | + </div> | ||
| 52 | + <div class="well hidden"> | ||
| 53 | + <div id="corpo" class="panel-body panel-collapse in"></div> | ||
| 54 | + </div> | ||
| 55 | + </div> | ||
| 56 | + </div> | ||
| 57 | +</div> | ||
| 58 | +<script id="templateFiltro" type="x-tmpl-mustache"> | ||
| 59 | +<option value="form-{{id_n3}}">{{{nome_tema}}}</option> | ||
| 60 | +</script> | ||
| 61 | +<script id="templateTemas" type="x-tmpl-mustache"> | ||
| 62 | +<div class="panel panel-default" id="form-{{id_n3}}"> | ||
| 63 | + <div class="panel-heading" role="tab"> | ||
| 64 | + <h3 class="panel-title" {{escondido}}> | ||
| 65 | + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_n3}}')" class="btn btn-danger btn-fab btn-fab-mini" role="button"> | ||
| 66 | + <i class="material-icons">delete_forever</i> | ||
| 67 | + </a> | ||
| 68 | + | ||
| 69 | + <a class="collapsed in" role="button" data-toggle="collapse" href="#body-form-{{id_n3}}" | ||
| 70 | + aria-expanded="false" aria-controls="#body-form-{{id_n3}}"> {{{nome_tema}}} </a> | ||
| 71 | + </h3> | ||
| 72 | + </div> | ||
| 73 | + <div class="panel-body panel-collapse collapse" id="body-form-{{id_n3}}"> | ||
| 74 | + <form style="" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form-horizontal" role="form" method="post" action="" > | ||
| 75 | + <div class="row"> | ||
| 76 | + <div class="col-md-12"> | ||
| 77 | + <div class="form-group form-group-lg"> | ||
| 78 | + <label class="col-md-4 control-label" for="id_tema">{{{tema}}}</label> | ||
| 79 | + <div class="col-md-8"> | ||
| 80 | + <select class="form-control" name="id_tema"> | ||
| 81 | + {{{opcoesTema}}} | ||
| 82 | + </select> | ||
| 83 | + </div> | ||
| 84 | + </div> | ||
| 85 | + <div class="form-group form-group-lg"> | ||
| 86 | + <label class="col-md-4 control-label" for="ordem">{{{ordemTxt}}}</label> | ||
| 87 | + <div class="col-md-8"> | ||
| 88 | + <input type="text" value="{{{ordem}}}" class="form-control" name="ordem"> | ||
| 89 | + </div> | ||
| 90 | + </div> | ||
| 91 | + <div class="form-group form-group-lg"> | ||
| 92 | + <label class="col-md-4 control-label" for="perfil">{{{perfis}}}</label> | ||
| 93 | + <div class="col-md-4"> | ||
| 94 | + <input id="perfil_tema-{{id_raiz}}" type="text" value="{{{perfil}}}" class="form-control" name="perfil"> | ||
| 95 | + </div> | ||
| 96 | + <div class="col-md-4"> | ||
| 97 | + <select class="form-control" onchange="i3GEOadmin.temas.addInput('perfil_tema-{{id_raiz}}',this.value)"> | ||
| 98 | + {{{opcoesPerfil}}} | ||
| 99 | + </select> | ||
| 100 | + </div> | ||
| 101 | + </div> | ||
| 102 | + </div> | ||
| 103 | + </div> | ||
| 104 | + </form> | ||
| 105 | + <div class="pull-right"> | ||
| 106 | + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_n3}}')" class="btn btn-danger" role="button">{{excluir}}</a> | ||
| 107 | + <a href="javascript:void(0)" onclick="{{onSalvar}}('{{id_n3}}')" class="btn btn-primary" role="button">{{salvar}}</a> | ||
| 108 | + </div> | ||
| 109 | + </div> | ||
| 110 | +</div> | ||
| 111 | +</script> | ||
| 112 | +<script id="templateOpcoesPublicado" type="x-tmpl-mustache"> | ||
| 113 | + <option value="">---</option> | ||
| 114 | + <option {{SIM-sel}} value="SIM">{{{sim}}}</option> | ||
| 115 | + <option {{NAO-sel}} value="NAO">{{{nao}}}</option> | ||
| 116 | +</script> | ||
| 117 | +<script id="templateOpcoesNo" type="x-tmpl-mustache"> | ||
| 118 | + <option {{{selected}}} value="{{{id_subgrupo}}}">{{{nome_subgrupo}}}</option> | ||
| 119 | +</script> | ||
| 120 | +<script id="templateOpcoesTema" type="x-tmpl-mustache"> | ||
| 121 | + <option {{{selected}}} value="{{{id_tema}}}">{{{nome_tema}}} - {{{codigo_tema}}}</option> | ||
| 122 | +</script> | ||
| 123 | +<script id="templateOpcoesPerfil" type="x-tmpl-mustache"> | ||
| 124 | + <option value="{{{perfil}}}">{{{perfil}}}</option> | ||
| 125 | +</script> | ||
| 126 | +<script type="text/javascript" src="index.js"></script> | ||
| 127 | +<script type="text/javascript" src="../../../../../dicionario/temas.js"></script> | ||
| 128 | +<script> | ||
| 129 | + $(document).ready(function(){ | ||
| 130 | + //vem de admin1/index.js | ||
| 131 | + iniciaMenuPrincipal(); | ||
| 132 | + $('ul.dropdown-grupo [data-toggle=dropdown]').on('click', function(event) { | ||
| 133 | + event.preventDefault(); | ||
| 134 | + event.stopPropagation(); | ||
| 135 | + $(this).parent().siblings().removeClass('open'); | ||
| 136 | + $(this).parent().toggleClass('open'); | ||
| 137 | + }); | ||
| 138 | + //traducao | ||
| 139 | + var t = $("#titulo"); | ||
| 140 | + //complementa dicionario | ||
| 141 | + i3GEOadmin.temas.dicionario = $.extend( | ||
| 142 | + {}, | ||
| 143 | + i3GEOadmin.temas.dicionario, | ||
| 144 | + i3GEOadmin.core.dicionario | ||
| 145 | + ); | ||
| 146 | + | ||
| 147 | + i3GEOadmin.core.dicionario = null; | ||
| 148 | + | ||
| 149 | + i3GEOadmin.temas.dicionario = i3GEO.idioma.objetoIdioma(i3GEOadmin.temas.dicionario); | ||
| 150 | + | ||
| 151 | + t.html( | ||
| 152 | + Mustache.to_html( | ||
| 153 | + t.html(), | ||
| 154 | + i3GEOadmin.temas.dicionario | ||
| 155 | + ) | ||
| 156 | + ); | ||
| 157 | + $.material.init(); | ||
| 158 | + i3GEOadmin.temas.id_menu = <?php echo $id_menu; ?>; | ||
| 159 | + i3GEOadmin.temas.nome_menu = "<?php echo $nome_menu; ?>"; | ||
| 160 | + i3GEOadmin.temas.id_n1 = <?php echo $id_n1; ?>; | ||
| 161 | + i3GEOadmin.temas.nome_grupo = "<?php echo $nome_grupo; ?>"; | ||
| 162 | + i3GEOadmin.temas.id_n2 = <?php echo $id_n2; ?>; | ||
| 163 | + i3GEOadmin.temas.nome_subgrupo = "<?php echo $nome_subgrupo; ?>"; | ||
| 164 | + | ||
| 165 | + var inicia = function() { | ||
| 166 | + $(".hidden").removeClass('hidden'); | ||
| 167 | + i3GEOadmin.temas.init($("#corpo")); | ||
| 168 | + }; | ||
| 169 | + i3GEO.login.verificaOperacao("admin/html/arvore",i3GEO.configura.locaplic, inicia, "sessao"); | ||
| 170 | + }); | ||
| 171 | +</script> | ||
| 172 | +</body> | ||
| 173 | +</html> |
admin1/catalogo/menus/index.php
| @@ -22,8 +22,9 @@ include "../../head.php"; | @@ -22,8 +22,9 @@ include "../../head.php"; | ||
| 22 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> | 22 | class="btn btn-primary btn-fab btn-fab-mini pull-right"> |
| 23 | <i class="material-icons">help</i> | 23 | <i class="material-icons">help</i> |
| 24 | </button> | 24 | </button> |
| 25 | - <h3>{{{txtTitulo}}}</h3> | ||
| 26 | - <h4>{{{txtDesc}}}</h4> | 25 | + <h2><small>{{{txtTitulo}}}</small></h2> |
| 26 | + <blockquote>{{{txtDesc}}}</blockquote> | ||
| 27 | + | ||
| 27 | <!-- aqui entra o filtro --> | 28 | <!-- aqui entra o filtro --> |
| 28 | <div class="form-group"> | 29 | <div class="form-group"> |
| 29 | <label class="control-label">{{{filtro}}}</label> <select | 30 | <label class="control-label">{{{filtro}}}</label> <select |
admin1/dicionario/subgrupos.js
| @@ -41,7 +41,7 @@ i3GEOadmin.subgrupos.dicionario = { | @@ -41,7 +41,7 @@ i3GEOadmin.subgrupos.dicionario = { | ||
| 41 | es : "" | 41 | es : "" |
| 42 | } ], | 42 | } ], |
| 43 | 'txtDesc' : [ { | 43 | 'txtDesc' : [ { |
| 44 | - pt : "Utilze as opções abaixo para criar ou editar temas que ficarão na raiz do grupo e também para editar os temas existentes dentro do subgrupo atual.", | 44 | + pt : "Utilize as opções abaixo para criar ou editar temas que ficarão na raiz do grupo e também para editar os temas existentes dentro do subgrupo atual.", |
| 45 | en : "", | 45 | en : "", |
| 46 | es : "" | 46 | es : "" |
| 47 | } ], | 47 | } ], |
| @@ -60,8 +60,8 @@ i3GEOadmin.subgrupos.dicionario = { | @@ -60,8 +60,8 @@ i3GEOadmin.subgrupos.dicionario = { | ||
| 60 | en : "", | 60 | en : "", |
| 61 | es : "" | 61 | es : "" |
| 62 | } ], | 62 | } ], |
| 63 | - '' : [ { | ||
| 64 | - pt : "", | 63 | + 'txtTitulo' : [ { |
| 64 | + pt : "Grupo", | ||
| 65 | en : "", | 65 | en : "", |
| 66 | es : "" | 66 | es : "" |
| 67 | } ], | 67 | } ], |
| @@ -0,0 +1,27 @@ | @@ -0,0 +1,27 @@ | ||
| 1 | +i3GEOadmin.temas.dicionario = { | ||
| 2 | + 'txtDesc' : [ { | ||
| 3 | + pt : "Utilize as opções abaixo para criar ou editar temas que ficarão disponíveis para o usuário acessar no subgrupo escolhido.", | ||
| 4 | + en : "", | ||
| 5 | + es : "" | ||
| 6 | + } ], | ||
| 7 | + 'adicionarTema' : [ { | ||
| 8 | + pt : "Adicionar tema", | ||
| 9 | + en : "", | ||
| 10 | + es : "" | ||
| 11 | + } ], | ||
| 12 | + 'perfis' : [ { | ||
| 13 | + pt : "Perfis que podem ver. Separe por espaços e escolha da lista ao lado.", | ||
| 14 | + en : "", | ||
| 15 | + es : "" | ||
| 16 | + } ], | ||
| 17 | + 'txtTitulo' : [ { | ||
| 18 | + pt : "Temas do subgrupo", | ||
| 19 | + en : "", | ||
| 20 | + es : "" | ||
| 21 | + } ], | ||
| 22 | + '' : [ { | ||
| 23 | + pt : "", | ||
| 24 | + en : "", | ||
| 25 | + es : "" | ||
| 26 | + } ] | ||
| 27 | +}; |