Commit d912f0b8bc1dabcb7e8c33f021181e9404368815

Authored by Edmar Moretti
1 parent d372e628

Adaptação do editor de menus para bootstrap

admin/admin.db
No preview for this file type
admin1/catalogo/menus/exec.php
@@ -84,6 +84,12 @@ switch ($funcao) { @@ -84,6 +84,12 @@ switch ($funcao) {
84 retornaJSON ( array("dados"=>$dados, "perfis"=>$perfis) ); 84 retornaJSON ( array("dados"=>$dados, "perfis"=>$perfis) );
85 break; 85 break;
86 case "EXCLUIR" : 86 case "EXCLUIR" :
  87 + $r = pegaDados("select * from ".$esquemaadmin."i3geoadmin_n1 where id_menu=$id_menu");
  88 + if(count($r) > 0){
  89 + header ( "HTTP/1.1 500 erro ao excluir. Exclua os grupos primeiro" );
  90 + exit ();
  91 + }
  92 +
87 $retorna = excluir ( $id_menu, $dbhw ); 93 $retorna = excluir ( $id_menu, $dbhw );
88 $dbhw = null; 94 $dbhw = null;
89 $dbh = null; 95 $dbh = null;
admin1/catalogo/menus/grupos/index.js
@@ -414,6 +414,16 @@ i3GEOadmin.grupos = { @@ -414,6 +414,16 @@ i3GEOadmin.grupos = {
414 //abre a pagina de edicao 414 //abre a pagina de edicao
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; 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;
416 }, 416 },
  417 + editarListaDeGrupos: function(id,titulo){
  418 + //muda a url para que o usuario possa voltar pelo botao do navegador
  419 + var u = window.location.origin
  420 + + window.location.pathname
  421 + + "?id_filtro=" + id + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu
  422 + + "&nome_grupo=" + titulo + "&id_n1=" + id;
  423 + window.history.replaceState(null,null,u);
  424 + //abre a pagina de edicao
  425 + window.location.href = "listadegrupos/index.php?id_n1=" + id + "&nome_grupo=" + titulo + "&id_menu=" + i3GEOadmin.grupos.id_menu + "&nome_menu=" + i3GEOadmin.grupos.nome_menu;
  426 + },
417 addInput: function(id,valor){ 427 addInput: function(id,valor){
418 var i = $("#"+id); 428 var i = $("#"+id);
419 $(i.val(i.val() + ' ' + valor)); 429 $(i.val(i.val() + ' ' + valor));
admin1/catalogo/menus/grupos/index.php
@@ -13,7 +13,7 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING ); @@ -13,7 +13,7 @@ $nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING );
13 <li><a href="../../../index.php">Admin</a></li> 13 <li><a href="../../../index.php">Admin</a></li>
14 <li>Cat&aacute;logo</li> 14 <li>Cat&aacute;logo</li>
15 <li><a href="../index.php">Menus</a></li> 15 <li><a href="../index.php">Menus</a></li>
16 - <li><a href="../index.php?id_filtro=<?php echo $id_menu; ?>">Menu - <?php echo $nome_menu; ?></a></li> 16 + <li><a href="../index.php?id_filtro=<?php echo $id_menu; ?>"> <?php echo $nome_menu; ?></a></li>
17 <li class="active">Grupos</li> 17 <li class="active">Grupos</li>
18 </ol> 18 </ol>
19 </div> 19 </div>
@@ -150,11 +150,15 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING ); @@ -150,11 +150,15 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING );
150 <div class="col-md-12"> 150 <div class="col-md-12">
151 <div class="form-group form-group-lg"> 151 <div class="form-group form-group-lg">
152 <label class="col-md-4 control-label" for="id_grupo">{{{nomeTxt}}}</label> 152 <label class="col-md-4 control-label" for="id_grupo">{{{nomeTxt}}}</label>
153 - <div class="col-md-8"> 153 + <div class="col-md-6">
154 <select class="form-control" name="id_grupo"> 154 <select class="form-control" name="id_grupo">
155 {{{opcoesNo}}} 155 {{{opcoesNo}}}
156 </select> 156 </select>
157 </div> 157 </div>
  158 + <div class="col-md-2">
  159 + <a onclick="i3GEOadmin.grupos.editarListaDeGrupos('{{id_n1}}','{{{nome_grupo}}}');" href="javascript:void(0)"
  160 + class="btn btn-primary btn-xs" role="button">{{{editarLista}}}</a>
  161 + </div>
158 </div> 162 </div>
159 <div class="form-group form-group-lg"> 163 <div class="form-group form-group-lg">
160 <label class="col-md-4 control-label" for="ordem">{{{ordemTxt}}}</label> 164 <label class="col-md-4 control-label" for="ordem">{{{ordemTxt}}}</label>
admin1/catalogo/menus/grupos/listadegrupos/exec.php 0 → 100755
@@ -0,0 +1,152 @@ @@ -0,0 +1,152 @@
  1 +<?php
  2 +/*
  3 + * Licenca:
  4 + *
  5 + * GPL2
  6 + *
  7 + * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
  8 + *
  9 + * Direitos Autorais Reservados (c) 2006 Edmar Moretti
  10 + * Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  11 + *
  12 + * Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
  13 + * e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
  14 + * GNU conforme publicada pela Free Software Foundation;
  15 + *
  16 + * Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
  17 + * por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
  18 + * de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
  19 + * Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
  20 + * Voc&ecirc; deve ter recebido uma copia da Licen&ccedil;a P&uacute;blica Geral do
  21 + * GNU junto com este programa; se n&atilde;o, escreva para a
  22 + * Free Software Foundation, Inc., no endere&ccedil;o
  23 + * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  24 + */
  25 +error_reporting ( 0 );
  26 +//
  27 +// pega as variaveis passadas com get ou post
  28 +//
  29 +
  30 +include_once (dirname ( __FILE__ ) . "/../../../../../admin/php/login.php");
  31 +$funcoesEdicao = array (
  32 + "ADICIONAR",
  33 + "ALTERAR",
  34 + "EXCLUIR"
  35 +);
  36 +if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) {
  37 + if (verificaOperacaoSessao ( "admin/html/arvore" ) === false) {
  38 + header ( "HTTP/1.1 403 Vc nao pode realizar essa operacao" );
  39 + exit ();
  40 + }
  41 +}
  42 +include (dirname ( __FILE__ ) . "/../../../../../admin/php/conexao.php");
  43 +
  44 +$funcao = strtoupper ( $funcao );
  45 +switch ($funcao) {
  46 + case "ADICIONAR" :
  47 + $novo = adicionar( $nome_grupo, $desc_grupo, $en, $es, $dbhw );
  48 + if ($novo === false) {
  49 + $dbhw = null;
  50 + $dbh = null;
  51 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  52 + exit ();
  53 + }
  54 + exit ();
  55 + break;
  56 + case "ALTERAR" :
  57 + $novo = alterar ( $id_grupo, $nome_grupo, $desc_grupo, $en, $es, $dbhw );
  58 + if ($novo === false) {
  59 + $dbhw = null;
  60 + $dbh = null;
  61 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  62 + exit ();
  63 + }
  64 + $dados = pegaDados ( "SELECT * from ".$esquemaadmin."i3geoadmin_grupos WHERE id_grupo = $id_grupo", $dbh, false );
  65 + if ($dados === false) {
  66 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  67 + exit ();
  68 + }
  69 + retornaJSON ( $dados );
  70 + exit ();
  71 + break;
  72 + case "LISTA" :
  73 + $dados = pegaDados ( "SELECT * from ".$esquemaadmin."i3geoadmin_grupos order by nome_grupo", $dbh, false );
  74 + if ($dados === false) {
  75 + $dbhw = null;
  76 + $dbh = null;
  77 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  78 + exit ();
  79 + }
  80 + $dbhw = null;
  81 + $dbh = null;
  82 + retornaJSON ( $dados );
  83 + break;
  84 + case "EXCLUIR" :
  85 + $r = pegaDados("select n1.id_grupo from ".$esquemaadmin."i3geoadmin_n1 as n1, ".$esquemaadmin."i3geoadmin_n2 as n2 where n1.id_n1 = n2.id_n1 and n1.id_grupo = '$id_grupo'");
  86 + if(count($r) > 0){
  87 + header ( "HTTP/1.1 500 erro ao excluir. O grupo esta em uso" );
  88 + exit ();
  89 + }
  90 + $retorna = excluir ( $id_grupo, $dbhw );
  91 + $dbhw = null;
  92 + $dbh = null;
  93 + if ($retorna === false) {
  94 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  95 + exit ();
  96 + }
  97 + retornaJSON ( $id_grupo );
  98 + exit ();
  99 + break;
  100 +}
  101 +cpjson ( $retorno );
  102 +
  103 +// $papeis deve ser um array
  104 +function adicionar($nome_grupo, $desc_grupo, $en, $es, $dbhw) {
  105 + global $esquemaadmin;
  106 + try {
  107 + $dataCol = array(
  108 + "nome_grupo" => $nome_grupo,
  109 + "desc_grupo" => "",
  110 + "en" => "",
  111 + "es" => "",
  112 + "it" => ""
  113 + );
  114 + $id_grupo = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_grupos",$dataCol,"nome_grupo","id_grupo");
  115 + $retorna = alterar ( $id_grupo, $nome_grupo, $desc_grupo, $en, $es, $dbhw );
  116 +
  117 + return $retorna;
  118 + } catch ( PDOException $e ) {
  119 + return false;
  120 + }
  121 +}
  122 +// $papeis deve ser um array
  123 +function alterar($id_grupo, $nome_grupo, $desc_grupo, $en, $es, $dbhw) {
  124 + global $esquemaadmin;
  125 + if($convUTF){
  126 + $nome_grupo = utf8_encode($nome_grupo);
  127 + $desc_grupo = utf8_encode($desc_grupo);
  128 + $en = utf8_encode($en);
  129 + $es = utf8_encode($es);
  130 + }
  131 + $dataCol = array(
  132 + "en" => $en,
  133 + "es" => $es,
  134 + "it" => '',
  135 + "nome_grupo" => $nome_grupo,
  136 + "desc_grupo" => $desc_grupo
  137 + );
  138 + $resultado = i3GeoAdminUpdate ( $dbhw, "i3geoadmin_grupos", $dataCol, "WHERE id_grupo = $id_grupo" );
  139 + if ($resultado === false) {
  140 + return false;
  141 + }
  142 + return $id_grupo;
  143 +}
  144 +function excluir($id_grupo, $dbhw) {
  145 + global $esquemaadmin;
  146 + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_grupos", "id_grupo", $id_grupo, $dbhw, false );
  147 + if ($resultado === false) {
  148 + return false;
  149 + }
  150 + return $resultado;
  151 +}
  152 +?>
admin1/catalogo/menus/grupos/listadegrupos/index.js 0 → 100755
@@ -0,0 +1,190 @@ @@ -0,0 +1,190 @@
  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&eacute;rio do Meio Ambiente Brasil
  9 +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  10 +
  11 +Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
  12 +e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
  13 +GNU conforme publicada pela Free Software Foundation;
  14 +
  15 +Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
  16 +por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
  17 +de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
  18 +Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
  19 +Voc&ecirc; deve ter recebido uma c&oacute;pia da Licen&ccedil;a P&uacute;blica Geral do
  20 +GNU junto com este programa; se n&atilde;o, escreva para a
  21 +Free Software Foundation, Inc., no endere&ccedil;o
  22 +59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  23 +
  24 + */
  25 +i3GEOadmin.grupos = {
  26 + //variavel global indicando o elemento que recebera a lista de grupos
  27 + ondeLista: "",
  28 + //conteudo html do formulario de adicao de operacao
  29 + formAdiciona: "",
  30 + init: function(onde){
  31 + i3GEOadmin.grupos.ondeLista = onde;
  32 + i3GEOadmin.grupos.lista();
  33 + },
  34 + /*
  35 +Function: lista
  36 +
  37 +Obt&eacute;m a lista de grupos
  38 + */
  39 + lista: function(){
  40 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeLista);
  41 + $.post(
  42 + "exec.php?funcao=lista"
  43 + )
  44 + .done(
  45 + function(data, status){
  46 + //valor do filtro atual
  47 + var filtro = i3GEOadmin.core.valorFiltro();
  48 + //objeto json com os dados viondos do banco
  49 + var json = jQuery.parseJSON(data);
  50 + //template do form de cada operacao
  51 + var templateLista = $("#templateLista").html();
  52 + //lista todas as grupos
  53 + var html = Mustache.to_html(
  54 + "{{#data}}" + templateLista + "{{/data}}",
  55 + $.extend(
  56 + {},
  57 + i3GEOadmin.grupos.dicionario,
  58 + {
  59 + "data": json,
  60 + "onExcluir": "i3GEOadmin.grupos.excluirDialogo",//funcao
  61 + "onSalvar": "i3GEOadmin.grupos.salvarDialogo"//funcao
  62 + }
  63 + )
  64 + );
  65 + i3GEOadmin.grupos.ondeLista.html(html);
  66 + //filtro
  67 + html = Mustache.to_html(
  68 + "{{#data}}" + $("#templateFiltro").html() + "{{/data}}",
  69 + {"data":json}
  70 + );
  71 + $("#filtro").html("<option value='' >Todos</option>" + html);
  72 + $("#filtro").combobox();
  73 + if(filtro != ""){
  74 + i3GEOadmin.core.defineFiltro(filtro);
  75 + i3GEOadmin.core.filtra(i3GEOadmin.grupos.pegaFiltro());
  76 + }
  77 + //monta um template para o modal de inclusao de novo usuario
  78 + if(i3GEOadmin.grupos.formAdiciona == ""){
  79 + html = Mustache.to_html(
  80 + $("#templateLista").html(),
  81 + $.extend(
  82 + {},
  83 + i3GEOadmin.grupos.dicionario,
  84 + {
  85 + "id_tag": "modal",
  86 + "excluir": i3GEOadmin.grupos.dicionario.cancelar,
  87 + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao
  88 + "onSalvar": "i3GEOadmin.grupos.adiciona"//funcao
  89 + }
  90 + )
  91 + );
  92 + i3GEOadmin.grupos.formAdiciona = html;
  93 + }
  94 + $.material.init();
  95 + }
  96 + )
  97 + .fail(function(data){
  98 + i3GEOadmin.grupos.ondeLista.html("");
  99 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  100 + });
  101 + },
  102 + adicionaDialogo: function(){
  103 + i3GEOadmin.core.abreModalGeral(i3GEOadmin.grupos.formAdiciona);
  104 + },
  105 +// os parametros sao obtidos do formulario aberto do modal
  106 + adiciona: function(){
  107 + var parametros = $("#form-modal form").serialize();
  108 + i3GEOadmin.core.fechaModalGeral();
  109 + i3GEOadmin.core.modalAguarde(true);
  110 + $.post(
  111 + "exec.php?funcao=adicionar",
  112 + parametros
  113 + )
  114 + .done(
  115 + function(data, status){
  116 + i3GEOadmin.core.modalAguarde(false);
  117 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeLista);
  118 + i3GEOadmin.grupos.lista();
  119 + }
  120 + )
  121 + .fail(
  122 + function(data){
  123 + i3GEOadmin.core.modalAguarde(false);
  124 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  125 + }
  126 + );
  127 + },
  128 + excluirDialogo: function(id){
  129 + var hash = {
  130 + "mensagem": i3GEOadmin.grupos.dicionario.confirma,
  131 + "onBotao1": "i3GEOadmin.grupos.excluir('"+id+"')",
  132 + "botao1": i3GEOadmin.grupos.dicionario.sim,
  133 + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();",
  134 + "botao2": i3GEOadmin.grupos.dicionario.nao
  135 + };
  136 + i3GEOadmin.core.abreModalConfirma(hash);
  137 + },
  138 + excluir: function(id){
  139 + i3GEOadmin.core.modalAguarde(true);
  140 + $.post(
  141 + "exec.php?funcao=excluir",
  142 + "id_grupo="+id
  143 + )
  144 + .done(
  145 + function(data, status){
  146 + i3GEOadmin.core.modalAguarde(false);
  147 + var json = jQuery.parseJSON(data)*1;
  148 + $("#form-" + json).remove();
  149 + }
  150 + )
  151 + .fail(
  152 + function(data){
  153 + i3GEOadmin.core.modalAguarde(false);
  154 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  155 + }
  156 + );
  157 + },
  158 + salvarDialogo: function(id){
  159 + var hash = {
  160 + "mensagem": i3GEOadmin.grupos.dicionario.confirma,
  161 + "onBotao1": "i3GEOadmin.grupos.salvar('"+id+"')",
  162 + "botao1": i3GEOadmin.grupos.dicionario.sim,
  163 + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();",
  164 + "botao2": i3GEOadmin.grupos.dicionario.nao
  165 + };
  166 + i3GEOadmin.core.abreModalConfirma(hash);
  167 + },
  168 + salvar: function(id){
  169 + var parametros = $("#form-" + id + " form").serialize();
  170 + i3GEOadmin.core.fechaModalGeral();
  171 + i3GEOadmin.core.modalAguarde(true);
  172 + $.post(
  173 + "exec.php?funcao=alterar",
  174 + "id_grupo="+ id+"&"+parametros
  175 + )
  176 + .done(
  177 + function(data, status){
  178 + i3GEOadmin.core.modalAguarde(false);
  179 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.grupos.ondeLista);
  180 + i3GEOadmin.grupos.lista();
  181 + }
  182 + )
  183 + .fail(
  184 + function(data){
  185 + i3GEOadmin.core.modalAguarde(false);
  186 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  187 + }
  188 + );
  189 + }
  190 +};
0 \ No newline at end of file 191 \ No newline at end of file
admin1/catalogo/menus/grupos/listadegrupos/index.php 0 → 100755
@@ -0,0 +1,157 @@ @@ -0,0 +1,157 @@
  1 +<?php
  2 +define ( ONDEI3GEO, "../../../../.." );
  3 +include (dirname ( __FILE__ ) . "/../../../../../ms_configura.php");
  4 +error_reporting ( 0 );
  5 +include "../../../../head.php";
  6 +$id_n1 = filter_var ( $_GET ["id_n1"], FILTER_SANITIZE_NUMBER_INT );
  7 +$nome_grupo = filter_var ( $_GET ["nome_grupo"], FILTER_SANITIZE_STRING );
  8 +$id_menu = filter_var ( $_GET ["id_menu"], FILTER_SANITIZE_NUMBER_INT );
  9 +$nome_menu = filter_var ( $_GET ["nome_menu"], FILTER_SANITIZE_STRING );
  10 +?>
  11 +<div class="container-fluid">
  12 + <div class="row">
  13 + <ol class="breadcrumb">
  14 + <li><a href="../../../../init/index.php">i3Geo</a></li>
  15 + <li><a href="../../../../index.php">Admin</a></li>
  16 + <li>Cat&aacute;logo</li>
  17 + <li><a href="../../index.php">menus</a></li>
  18 + <li><a href="../../index.php?id_filtro=<?php echo $id_menu; ?>">menu - <?php echo $nome_menu; ?></a></li>
  19 + <li><a href="../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupos</a></li>
  20 + <li><a href="../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>"> <?php echo $nome_grupo; ?></a></li>
  21 + <li class="active">lista de grupos</li>
  22 + </ol>
  23 + </div>
  24 +</div>
  25 +<div class="container">
  26 + <div class="row center-block">
  27 + <div class="col-md-12">
  28 + <div class="well hidden" id="titulo">
  29 + <!--
  30 + <button data-toggle="modal" data-target="#ajudaPrincipal"
  31 + class="btn btn-primary btn-fab btn-fab-mini pull-right">
  32 + <i class="material-icons">help</i>
  33 + </button>
  34 + -->
  35 + <h3>{{{txtTituloGrupos}}}</h3>
  36 + <h4>{{{txtDescGrupos}}}</h4>
  37 + <!-- aqui entra o filtro -->
  38 + <div class="form-group">
  39 + <label class="control-label">{{{filtro}}}</label> <select
  40 + onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg">
  41 + </select>
  42 + </div>
  43 + <div class="row pull-right">
  44 + <a onclick="i3GEOadmin.grupos.adicionaDialogo();" href="javascript:void(0)"
  45 + class="btn btn-primary" role="button">{{{adicionar}}}</a>
  46 + </div>
  47 + <div class="clearfix"></div>
  48 + <!--
  49 + <div id="ajudaPrincipal" class="modal fade" tabindex="-1">
  50 + <div class="modal-dialog">
  51 + <div class="modal-content">
  52 + <div class="modal-body">
  53 + <p>{{{txtAjuda}}}</p>
  54 + </div>
  55 + </div>
  56 + </div>
  57 + </div>
  58 + -->
  59 + </div>
  60 + <div class="well hidden">
  61 + <div id="corpo"></div>
  62 + </div>
  63 + </div>
  64 + </div>
  65 +</div>
  66 +<script id="templateFiltro" type="x-tmpl-mustache">
  67 +<option value="form-{{id_grupo}}">{{{nome_grupo}}}</option>
  68 +</script>
  69 +<script id="templateLista" type="x-tmpl-mustache">
  70 + <div class="panel panel-default" id="form-{{id_grupo}}">
  71 + <div class="panel-body">
  72 + <div class="row">
  73 + <div class="col-md-12">
  74 + <form style="" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form-horizontal" role="form"
  75 + method="post" action="">
  76 + <div class="form-group form-group-lg">
  77 + <label class="col-md-2 control-label" for="nome">{{{nomeTxt}}} (Pt)</label>
  78 + <div class="col-md-10">
  79 + <input type="text" value="{{{nome_grupo}}}" class="form-control" name="nome_grupo" required>
  80 + </div>
  81 + </div>
  82 + <div class="form-group form-group-lg">
  83 + <label class="col-md-2 control-label" for="desc_grupo">{{{descricaoTxt}}}</label>
  84 + <div class="col-md-10">
  85 + <input type="text" value="{{{desc_grupo}}}" class="form-control" name="desc_grupo" required>
  86 + </div>
  87 + </div>
  88 + <div class="form-group form-group-lg">
  89 + <label class="col-md-2 control-label" for="es">Es</label>
  90 + <div class="col-md-10">
  91 + <input type="text" value="{{{es}}}" class="form-control" name="es" required>
  92 + </div>
  93 + </div>
  94 + <div class="form-group form-group-lg">
  95 + <label class="col-md-2 control-label" for="en">En</label>
  96 + <div class="col-md-10">
  97 + <input type="text" value="{{{en}}}" class="form-control" name="en" required>
  98 + </div>
  99 + </div>
  100 + </form>
  101 + </div>
  102 + </div>
  103 + <div class="row">
  104 + <div class="col-md-12">
  105 + <div class="pull-right">
  106 + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_grupo}}')" class="btn btn-danger"
  107 + role="button">{{excluir}}</a>
  108 + <a href="javascript:void(0)"
  109 + onclick="{{onSalvar}}('{{id_grupo}}')" class="btn btn-primary" role="button">{{salvar}}</a>
  110 + </div>
  111 + </div>
  112 + </div>
  113 + </div>
  114 + </div>
  115 +</script>
  116 +
  117 +<script type="text/javascript" src="index.js"></script>
  118 +<script type="text/javascript" src="../../../../dicionario/grupos.js"></script>
  119 +<script>
  120 + $(document).ready(function(){
  121 + //vem de admin1/index.js
  122 + iniciaMenuPrincipal();
  123 + $('ul.dropdown-menu [data-toggle=dropdown]').on('click', function(event) {
  124 + event.preventDefault();
  125 + event.stopPropagation();
  126 + $(this).parent().siblings().removeClass('open');
  127 + $(this).parent().toggleClass('open');
  128 + });
  129 + //traducao
  130 + var t = $("#titulo");
  131 + //complementa dicionario
  132 + i3GEOadmin.grupos.dicionario = $.extend(
  133 + {},
  134 + i3GEOadmin.grupos.dicionario,
  135 + i3GEOadmin.core.dicionario
  136 + );
  137 +
  138 + i3GEOadmin.core.dicionario = null;
  139 +
  140 + i3GEOadmin.grupos.dicionario = i3GEO.idioma.objetoIdioma(i3GEOadmin.grupos.dicionario);
  141 +
  142 + t.html(
  143 + Mustache.to_html(
  144 + t.html(),
  145 + i3GEOadmin.grupos.dicionario
  146 + )
  147 + );
  148 + $.material.init();
  149 + var inicia = function() {
  150 + $(".hidden").removeClass('hidden');
  151 + i3GEOadmin.grupos.init($("#corpo"));
  152 + };
  153 + i3GEO.login.verificaOperacao("admin/html/arvore",i3GEO.configura.locaplic, inicia, "sessao");
  154 + });
  155 +</script>
  156 +</body>
  157 +</html>
admin1/catalogo/menus/grupos/subgrupos/index.js
@@ -417,6 +417,16 @@ i3GEOadmin.subgrupos = { @@ -417,6 +417,16 @@ i3GEOadmin.subgrupos = {
417 //abre a pagina de edicao 417 //abre a pagina de edicao
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; 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;
419 }, 419 },
  420 + editarListaDeSubGrupos: function(id,titulo){
  421 + //muda a url para que o usuario possa voltar pelo botao do navegador
  422 + var u = window.location.origin
  423 + + window.location.pathname
  424 + + "?id_filtro=" + id + "&id_menu=" + i3GEOadmin.subgrupos.id_menu + "&nome_menu=" + i3GEOadmin.subgrupos.nome_menu
  425 + + "&nome_grupo=" + i3GEOadmin.subgrupos.nome_grupo + "&id_n1=" + i3GEOadmin.subgrupos.id_n1 + "&nome_subgrupo=" + titulo + "&id_n2=" + id;
  426 + window.history.replaceState(null,null,u);
  427 + //abre a pagina de edicao
  428 + window.location.href = "listadesubgrupos/index.php?id_n2=" + id + "&nome_subgrupo=" + titulo + "&id_menu=" + i3GEOadmin.subgrupos.id_menu + "&nome_menu=" + i3GEOadmin.subgrupos.nome_menu + "&nome_grupo=" + i3GEOadmin.subgrupos.nome_grupo + "&id_n1=" + i3GEOadmin.subgrupos.id_n1;
  429 + },
420 addInput: function(id,valor){ 430 addInput: function(id,valor){
421 var i = $("#"+id); 431 var i = $("#"+id);
422 $(i.val(i.val() + ' ' + valor)); 432 $(i.val(i.val() + ' ' + valor));
admin1/catalogo/menus/grupos/subgrupos/index.php
@@ -15,9 +15,9 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING ); @@ -15,9 +15,9 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING );
15 <li><a href="../../../../index.php">Admin</a></li> 15 <li><a href="../../../../index.php">Admin</a></li>
16 <li>Cat&aacute;logo</li> 16 <li>Cat&aacute;logo</li>
17 <li><a href="../../index.php">menus</a></li> 17 <li><a href="../../index.php">menus</a></li>
18 - <li><a href="../../index.php?id_filtro=<?php echo $id_menu; ?>">menu - <?php echo $nome_menu; ?></a></li> 18 + <li><a href="../../index.php?id_filtro=<?php echo $id_menu; ?>"> <?php echo $nome_menu; ?></a></li>
19 <li><a href="../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupos</a></li> 19 <li><a href="../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupos</a></li>
20 - <li><a 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> 20 + <li><a href="../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>"> <?php echo $nome_grupo; ?></a></li>
21 <li class="active">subgrupos</li> 21 <li class="active">subgrupos</li>
22 </ol> 22 </ol>
23 </div> 23 </div>
@@ -153,11 +153,15 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING ); @@ -153,11 +153,15 @@ $nome_menu = filter_var ( $_GET [&quot;nome_menu&quot;], FILTER_SANITIZE_STRING );
153 <div class="col-md-12"> 153 <div class="col-md-12">
154 <div class="form-group form-group-lg"> 154 <div class="form-group form-group-lg">
155 <label class="col-md-4 control-label" for="id_subgrupo">{{{nomeTxt}}}</label> 155 <label class="col-md-4 control-label" for="id_subgrupo">{{{nomeTxt}}}</label>
156 - <div class="col-md-8"> 156 + <div class="col-md-6">
157 <select class="form-control" name="id_subgrupo"> 157 <select class="form-control" name="id_subgrupo">
158 {{{opcoesNo}}} 158 {{{opcoesNo}}}
159 </select> 159 </select>
160 </div> 160 </div>
  161 + <div class="col-md-2">
  162 + <a onclick="i3GEOadmin.subgrupos.editarListaDeSubGrupos('{{id_n2}}','{{{nome_subgrupo}}}');" href="javascript:void(0)"
  163 + class="btn btn-primary btn-xs" role="button">{{{editarLista}}}</a>
  164 + </div>
161 </div> 165 </div>
162 <div class="form-group form-group-lg"> 166 <div class="form-group form-group-lg">
163 <label class="col-md-4 control-label" for="ordem">{{{ordemTxt}}}</label> 167 <label class="col-md-4 control-label" for="ordem">{{{ordemTxt}}}</label>
admin1/catalogo/menus/grupos/subgrupos/listadesubgrupos/exec.php 0 → 100755
@@ -0,0 +1,152 @@ @@ -0,0 +1,152 @@
  1 +<?php
  2 +/*
  3 + * Licenca:
  4 + *
  5 + * GPL2
  6 + *
  7 + * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
  8 + *
  9 + * Direitos Autorais Reservados (c) 2006 Edmar Moretti
  10 + * Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  11 + *
  12 + * Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
  13 + * e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
  14 + * GNU conforme publicada pela Free Software Foundation;
  15 + *
  16 + * Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
  17 + * por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
  18 + * de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
  19 + * Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
  20 + * Voc&ecirc; deve ter recebido uma copia da Licen&ccedil;a P&uacute;blica Geral do
  21 + * GNU junto com este programa; se n&atilde;o, escreva para a
  22 + * Free Software Foundation, Inc., no endere&ccedil;o
  23 + * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  24 + */
  25 +error_reporting ( 0 );
  26 +//
  27 +// pega as variaveis passadas com get ou post
  28 +//
  29 +
  30 +include_once (dirname ( __FILE__ ) . "/../../../../../../admin/php/login.php");
  31 +$funcoesEdicao = array (
  32 + "ADICIONAR",
  33 + "ALTERAR",
  34 + "EXCLUIR"
  35 +);
  36 +if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) {
  37 + if (verificaOperacaoSessao ( "admin/html/arvore" ) === false) {
  38 + header ( "HTTP/1.1 403 Vc nao pode realizar essa operacao" );
  39 + exit ();
  40 + }
  41 +}
  42 +include (dirname ( __FILE__ ) . "/../../../../../../admin/php/conexao.php");
  43 +
  44 +$funcao = strtoupper ( $funcao );
  45 +switch ($funcao) {
  46 + case "ADICIONAR" :
  47 + $novo = adicionar( $nome_subgrupo, $desc_subgrupo, $en, $es, $dbhw );
  48 + if ($novo === false) {
  49 + $dbhw = null;
  50 + $dbh = null;
  51 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  52 + exit ();
  53 + }
  54 + exit ();
  55 + break;
  56 + case "ALTERAR" :
  57 + $novo = alterar ( $id_subgrupo, $nome_subgrupo, $desc_subgrupo, $en, $es, $dbhw );
  58 + if ($novo === false) {
  59 + $dbhw = null;
  60 + $dbh = null;
  61 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  62 + exit ();
  63 + }
  64 + $dados = pegaDados ( "SELECT * from ".$esquemaadmin."i3geoadmin_subgrupos WHERE id_subgrupo = $id_subgrupo", $dbh, false );
  65 + if ($dados === false) {
  66 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  67 + exit ();
  68 + }
  69 + retornaJSON ( $dados );
  70 + exit ();
  71 + break;
  72 + case "LISTA" :
  73 + $dados = pegaDados ( "SELECT * from ".$esquemaadmin."i3geoadmin_subgrupos order by nome_subgrupo", $dbh, false );
  74 + if ($dados === false) {
  75 + $dbhw = null;
  76 + $dbh = null;
  77 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  78 + exit ();
  79 + }
  80 + $dbhw = null;
  81 + $dbh = null;
  82 + retornaJSON ( $dados );
  83 + break;
  84 + case "EXCLUIR" :
  85 + $r = pegaDados("select n2.id_subgrupo from ".$esquemaadmin."i3geoadmin_n3 as n3, ".$esquemaadmin."i3geoadmin_n2 as n2 where n2.id_n2 = n3.id_n3 and n2.id_subgrupo = '$id'");
  86 + if(count($r) > 0){
  87 + header ( "HTTP/1.1 500 erro ao excluir. O grupo esta em uso" );
  88 + exit ();
  89 + }
  90 + $retorna = excluir ( $id_subgrupo, $dbhw );
  91 + $dbhw = null;
  92 + $dbh = null;
  93 + if ($retorna === false) {
  94 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  95 + exit ();
  96 + }
  97 + retornaJSON ( $id_subgrupo );
  98 + exit ();
  99 + break;
  100 +}
  101 +cpjson ( $retorno );
  102 +
  103 +// $papeis deve ser um array
  104 +function adicionar($nome_subgrupo, $desc_subgrupo, $en, $es, $dbhw) {
  105 + global $esquemaadmin;
  106 + try {
  107 + $dataCol = array(
  108 + "nome_subgrupo" => $nome_subgrupo,
  109 + "desc_subgrupo" => "",
  110 + "en" => "",
  111 + "es" => "",
  112 + "it" => ""
  113 + );
  114 + $id_subgrupo = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_subgrupos",$dataCol,"nome_subgrupo","id_subgrupo");
  115 + $retorna = alterar ( $id_subgrupo, $nome_subgrupo, $desc_subgrupo, $en, $es, $dbhw );
  116 +
  117 + return $retorna;
  118 + } catch ( PDOException $e ) {
  119 + return false;
  120 + }
  121 +}
  122 +// $papeis deve ser um array
  123 +function alterar($id_subgrupo, $nome_subgrupo, $desc_subgrupo, $en, $es, $dbhw) {
  124 + global $esquemaadmin;
  125 + if($convUTF){
  126 + $nome_subgrupo = utf8_encode($nome_subgrupo);
  127 + $desc_subgrupo = utf8_encode($desc_subgrupo);
  128 + $en = utf8_encode($en);
  129 + $es = utf8_encode($es);
  130 + }
  131 + $dataCol = array(
  132 + "en" => $en,
  133 + "es" => $es,
  134 + "it" => '',
  135 + "nome_subgrupo" => $nome_subgrupo,
  136 + "desc_subgrupo" => $desc_subgrupo
  137 + );
  138 + $resultado = i3GeoAdminUpdate ( $dbhw, "i3geoadmin_subgrupos", $dataCol, "WHERE id_subgrupo = $id_subgrupo" );
  139 + if ($resultado === false) {
  140 + return false;
  141 + }
  142 + return $id_subgrupo;
  143 +}
  144 +function excluir($id_subgrupo, $dbhw) {
  145 + global $esquemaadmin;
  146 + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_subgrupos", "id_subgrupo", $id_subgrupo, $dbhw, false );
  147 + if ($resultado === false) {
  148 + return false;
  149 + }
  150 + return $resultado;
  151 +}
  152 +?>
admin1/catalogo/menus/grupos/subgrupos/listadesubgrupos/index.js 0 → 100755
@@ -0,0 +1,190 @@ @@ -0,0 +1,190 @@
  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&eacute;rio do Meio Ambiente Brasil
  9 +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  10 +
  11 +Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
  12 +e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
  13 +GNU conforme publicada pela Free Software Foundation;
  14 +
  15 +Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
  16 +por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
  17 +de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
  18 +Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
  19 +Voc&ecirc; deve ter recebido uma c&oacute;pia da Licen&ccedil;a P&uacute;blica Geral do
  20 +GNU junto com este programa; se n&atilde;o, escreva para a
  21 +Free Software Foundation, Inc., no endere&ccedil;o
  22 +59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  23 +
  24 + */
  25 +i3GEOadmin.subgrupos = {
  26 + //variavel global indicando o elemento que recebera a lista de grupos
  27 + ondeLista: "",
  28 + //conteudo html do formulario de adicao de operacao
  29 + formAdiciona: "",
  30 + init: function(onde){
  31 + i3GEOadmin.subgrupos.ondeLista = onde;
  32 + i3GEOadmin.subgrupos.lista();
  33 + },
  34 + /*
  35 +Function: lista
  36 +
  37 +Obt&eacute;m a lista de grupos
  38 + */
  39 + lista: function(){
  40 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.subgrupos.ondeLista);
  41 + $.post(
  42 + "exec.php?funcao=lista"
  43 + )
  44 + .done(
  45 + function(data, status){
  46 + //valor do filtro atual
  47 + var filtro = i3GEOadmin.core.valorFiltro();
  48 + //objeto json com os dados viondos do banco
  49 + var json = jQuery.parseJSON(data);
  50 + //template do form de cada operacao
  51 + var templateLista = $("#templateLista").html();
  52 + //lista todas as grupos
  53 + var html = Mustache.to_html(
  54 + "{{#data}}" + templateLista + "{{/data}}",
  55 + $.extend(
  56 + {},
  57 + i3GEOadmin.subgrupos.dicionario,
  58 + {
  59 + "data": json,
  60 + "onExcluir": "i3GEOadmin.subgrupos.excluirDialogo",//funcao
  61 + "onSalvar": "i3GEOadmin.subgrupos.salvarDialogo"//funcao
  62 + }
  63 + )
  64 + );
  65 + i3GEOadmin.subgrupos.ondeLista.html(html);
  66 + //filtro
  67 + html = Mustache.to_html(
  68 + "{{#data}}" + $("#templateFiltro").html() + "{{/data}}",
  69 + {"data":json}
  70 + );
  71 + $("#filtro").html("<option value='' >Todos</option>" + html);
  72 + $("#filtro").combobox();
  73 + if(filtro != ""){
  74 + i3GEOadmin.core.defineFiltro(filtro);
  75 + i3GEOadmin.core.filtra(i3GEOadmin.subgrupos.pegaFiltro());
  76 + }
  77 + //monta um template para o modal de inclusao de novo usuario
  78 + if(i3GEOadmin.subgrupos.formAdiciona == ""){
  79 + html = Mustache.to_html(
  80 + $("#templateLista").html(),
  81 + $.extend(
  82 + {},
  83 + i3GEOadmin.subgrupos.dicionario,
  84 + {
  85 + "id_subgrupo": "modal",
  86 + "excluir": i3GEOadmin.subgrupos.dicionario.cancelar,
  87 + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao
  88 + "onSalvar": "i3GEOadmin.subgrupos.adiciona"//funcao
  89 + }
  90 + )
  91 + );
  92 + i3GEOadmin.subgrupos.formAdiciona = html;
  93 + }
  94 + $.material.init();
  95 + }
  96 + )
  97 + .fail(function(data){
  98 + i3GEOadmin.subgrupos.ondeLista.html("");
  99 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  100 + });
  101 + },
  102 + adicionaDialogo: function(){
  103 + i3GEOadmin.core.abreModalGeral(i3GEOadmin.subgrupos.formAdiciona);
  104 + },
  105 +// os parametros sao obtidos do formulario aberto do modal
  106 + adiciona: function(){
  107 + var parametros = $("#form-modal form").serialize();
  108 + i3GEOadmin.core.fechaModalGeral();
  109 + i3GEOadmin.core.modalAguarde(true);
  110 + $.post(
  111 + "exec.php?funcao=adicionar",
  112 + parametros
  113 + )
  114 + .done(
  115 + function(data, status){
  116 + i3GEOadmin.core.modalAguarde(false);
  117 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.subgrupos.ondeLista);
  118 + i3GEOadmin.subgrupos.lista();
  119 + }
  120 + )
  121 + .fail(
  122 + function(data){
  123 + i3GEOadmin.core.modalAguarde(false);
  124 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  125 + }
  126 + );
  127 + },
  128 + excluirDialogo: function(id){
  129 + var hash = {
  130 + "mensagem": i3GEOadmin.subgrupos.dicionario.confirma,
  131 + "onBotao1": "i3GEOadmin.subgrupos.excluir('"+id+"')",
  132 + "botao1": i3GEOadmin.subgrupos.dicionario.sim,
  133 + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();",
  134 + "botao2": i3GEOadmin.subgrupos.dicionario.nao
  135 + };
  136 + i3GEOadmin.core.abreModalConfirma(hash);
  137 + },
  138 + excluir: function(id){
  139 + i3GEOadmin.core.modalAguarde(true);
  140 + $.post(
  141 + "exec.php?funcao=excluir",
  142 + "id_subgrupo="+id
  143 + )
  144 + .done(
  145 + function(data, status){
  146 + i3GEOadmin.core.modalAguarde(false);
  147 + var json = jQuery.parseJSON(data)*1;
  148 + $("#form-" + json).remove();
  149 + }
  150 + )
  151 + .fail(
  152 + function(data){
  153 + i3GEOadmin.core.modalAguarde(false);
  154 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  155 + }
  156 + );
  157 + },
  158 + salvarDialogo: function(id){
  159 + var hash = {
  160 + "mensagem": i3GEOadmin.subgrupos.dicionario.confirma,
  161 + "onBotao1": "i3GEOadmin.subgrupos.salvar('"+id+"')",
  162 + "botao1": i3GEOadmin.subgrupos.dicionario.sim,
  163 + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();",
  164 + "botao2": i3GEOadmin.subgrupos.dicionario.nao
  165 + };
  166 + i3GEOadmin.core.abreModalConfirma(hash);
  167 + },
  168 + salvar: function(id){
  169 + var parametros = $("#form-" + id + " form").serialize();
  170 + i3GEOadmin.core.fechaModalGeral();
  171 + i3GEOadmin.core.modalAguarde(true);
  172 + $.post(
  173 + "exec.php?funcao=alterar",
  174 + "id_subgrupo="+ id+"&"+parametros
  175 + )
  176 + .done(
  177 + function(data, status){
  178 + i3GEOadmin.core.modalAguarde(false);
  179 + i3GEOadmin.core.iconeAguarde(i3GEOadmin.subgrupos.ondeLista);
  180 + i3GEOadmin.subgrupos.lista();
  181 + }
  182 + )
  183 + .fail(
  184 + function(data){
  185 + i3GEOadmin.core.modalAguarde(false);
  186 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  187 + }
  188 + );
  189 + }
  190 +};
0 \ No newline at end of file 191 \ No newline at end of file
admin1/catalogo/menus/grupos/subgrupos/listadesubgrupos/index.php 0 → 100755
@@ -0,0 +1,166 @@ @@ -0,0 +1,166 @@
  1 +<?php
  2 +define ( ONDEI3GEO, "../../../../../../" );
  3 +include (dirname ( __FILE__ ) . "/../../../../../../ms_configura.php");
  4 +error_reporting ( 0 );
  5 +include "../../../../../head.php";
  6 +$id_n1 = filter_var ( $_GET ["id_n1"], FILTER_SANITIZE_NUMBER_INT );
  7 +$nome_grupo = filter_var ( $_GET ["nome_grupo"], FILTER_SANITIZE_STRING );
  8 +$id_n2 = filter_var ( $_GET ["id_n2"], FILTER_SANITIZE_NUMBER_INT );
  9 +$nome_subgrupo = filter_var ( $_GET ["nome_subgrupo"], FILTER_SANITIZE_STRING );
  10 +$id_menu = filter_var ( $_GET ["id_menu"], FILTER_SANITIZE_NUMBER_INT );
  11 +$nome_menu = filter_var ( $_GET ["nome_menu"], 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&aacute;logo</li>
  19 + <li><a href="../../../index.php">menus</a></li>
  20 + <li><a href="../../../index.php?id_filtro=<?php echo $id_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 href="../../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>"> <?php echo $nome_grupo; ?></a></li>
  23 + <li><a
  24 + href="../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>"> <?php echo $nome_grupo; ?></a></li>
  25 + <li><a
  26 + 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>
  27 + <li><a
  28 + 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; ?>"> <?php echo $nome_subgrupo; ?></a></li>
  29 +
  30 + <li class="active">lista de subgrupos</li>
  31 + </ol>
  32 + </div>
  33 +</div>
  34 +<div class="container">
  35 + <div class="row center-block">
  36 + <div class="col-md-12">
  37 + <div class="well hidden" id="titulo">
  38 + <!--
  39 + <button data-toggle="modal" data-target="#ajudaPrincipal"
  40 + class="btn btn-primary btn-fab btn-fab-mini pull-right">
  41 + <i class="material-icons">help</i>
  42 + </button>
  43 + -->
  44 + <h3>{{{txtTituloGrupos}}}</h3>
  45 + <h4>{{{txtDescGrupos}}}</h4>
  46 + <!-- aqui entra o filtro -->
  47 + <div class="form-group">
  48 + <label class="control-label">{{{filtro}}}</label> <select
  49 + onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg">
  50 + </select>
  51 + </div>
  52 + <div class="row pull-right">
  53 + <a onclick="i3GEOadmin.subgrupos.adicionaDialogo();" href="javascript:void(0)"
  54 + class="btn btn-primary" role="button">{{{adicionar}}}</a>
  55 + </div>
  56 + <div class="clearfix"></div>
  57 + <!--
  58 + <div id="ajudaPrincipal" class="modal fade" tabindex="-1">
  59 + <div class="modal-dialog">
  60 + <div class="modal-content">
  61 + <div class="modal-body">
  62 + <p>{{{txtAjuda}}}</p>
  63 + </div>
  64 + </div>
  65 + </div>
  66 + </div>
  67 + -->
  68 + </div>
  69 + <div class="well hidden">
  70 + <div id="corpo"></div>
  71 + </div>
  72 + </div>
  73 + </div>
  74 +</div>
  75 +<script id="templateFiltro" type="x-tmpl-mustache">
  76 +<option value="form-{{id_subgrupo}}">{{{nome_subgrupo}}}</option>
  77 +</script>
  78 +<script id="templateLista" type="x-tmpl-mustache">
  79 + <div class="panel panel-default" id="form-{{id_subgrupo}}">
  80 + <div class="panel-body">
  81 + <div class="row">
  82 + <div class="col-md-12">
  83 + <form style="" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form-horizontal" role="form"
  84 + method="post" action="">
  85 + <div class="form-group form-group-lg">
  86 + <label class="col-md-2 control-label" for="nome">{{{nomeTxt}}} (Pt)</label>
  87 + <div class="col-md-10">
  88 + <input type="text" value="{{{nome_subgrupo}}}" class="form-control" name="nome_subgrupo" required>
  89 + </div>
  90 + </div>
  91 + <div class="form-group form-group-lg">
  92 + <label class="col-md-2 control-label" for="desc_subgrupo">{{{descricaoTxt}}}</label>
  93 + <div class="col-md-10">
  94 + <input type="text" value="{{{desc_subgrupo}}}" class="form-control" name="desc_subgrupo" required>
  95 + </div>
  96 + </div>
  97 + <div class="form-group form-group-lg">
  98 + <label class="col-md-2 control-label" for="es">Es</label>
  99 + <div class="col-md-10">
  100 + <input type="text" value="{{{es}}}" class="form-control" name="es" required>
  101 + </div>
  102 + </div>
  103 + <div class="form-group form-group-lg">
  104 + <label class="col-md-2 control-label" for="en">En</label>
  105 + <div class="col-md-10">
  106 + <input type="text" value="{{{en}}}" class="form-control" name="en" required>
  107 + </div>
  108 + </div>
  109 + </form>
  110 + </div>
  111 + </div>
  112 + <div class="row">
  113 + <div class="col-md-12">
  114 + <div class="pull-right">
  115 + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_subgrupo}}')" class="btn btn-danger"
  116 + role="button">{{excluir}}</a>
  117 + <a href="javascript:void(0)"
  118 + onclick="{{onSalvar}}('{{id_subgrupo}}')" class="btn btn-primary" role="button">{{salvar}}</a>
  119 + </div>
  120 + </div>
  121 + </div>
  122 + </div>
  123 + </div>
  124 +</script>
  125 +
  126 +<script type="text/javascript" src="index.js"></script>
  127 +<script type="text/javascript" src="../../../../../dicionario/subgrupos.js"></script>
  128 +<script>
  129 + $(document).ready(function(){
  130 + //vem de admin1/index.js
  131 + iniciaMenuPrincipal();
  132 + $('ul.dropdown-menu [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.subgrupos.dicionario = $.extend(
  142 + {},
  143 + i3GEOadmin.subgrupos.dicionario,
  144 + i3GEOadmin.core.dicionario
  145 + );
  146 +
  147 + i3GEOadmin.core.dicionario = null;
  148 +
  149 + i3GEOadmin.subgrupos.dicionario = i3GEO.idioma.objetoIdioma(i3GEOadmin.subgrupos.dicionario);
  150 +
  151 + t.html(
  152 + Mustache.to_html(
  153 + t.html(),
  154 + i3GEOadmin.subgrupos.dicionario
  155 + )
  156 + );
  157 + $.material.init();
  158 + var inicia = function() {
  159 + $(".hidden").removeClass('hidden');
  160 + i3GEOadmin.subgrupos.init($("#corpo"));
  161 + };
  162 + i3GEO.login.verificaOperacao("admin/html/arvore",i3GEO.configura.locaplic, inicia, "sessao");
  163 + });
  164 +</script>
  165 +</body>
  166 +</html>
admin1/catalogo/menus/grupos/subgrupos/temas/index.php
@@ -20,11 +20,11 @@ $nome_subgrupo = filter_var ( $_GET [&quot;nome_subgrupo&quot;], FILTER_SANITIZE_STRING ); @@ -20,11 +20,11 @@ $nome_subgrupo = filter_var ( $_GET [&quot;nome_subgrupo&quot;], FILTER_SANITIZE_STRING );
20 <li><a href="../../../index.php?id_filtro=<?php echo $id_menu; ?>">menu: <?php echo $nome_menu; ?></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> 21 <li><a href="../../index.php?id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>">grupos</a></li>
22 <li><a 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> 23 + href="../../index.php?id_filtro=<?php echo $id_n1; ?>&id_menu=<?php echo $id_menu; ?>&nome_menu=<?php echo $nome_menu; ?>"> <?php echo $nome_grupo; ?></a></li>
24 <li><a 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> 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 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> 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; ?>"> <?php echo $nome_subgrupo; ?></a></li>
28 <li class="active">Temas</li> 28 <li class="active">Temas</li>
29 </ol> 29 </ol>
30 </div> 30 </div>
admin1/dicionario/core.js
@@ -414,5 +414,10 @@ i3GEOadmin.core.dicionario = { @@ -414,5 +414,10 @@ i3GEOadmin.core.dicionario = {
414 pt : "Nome", 414 pt : "Nome",
415 en : "", 415 en : "",
416 es : "" 416 es : ""
  417 + } ],
  418 + 'editarLista' : [ {
  419 + pt : "Editar lista",
  420 + en : "",
  421 + es : ""
417 } ] 422 } ]
418 }; 423 };
admin1/dicionario/grupos.js
@@ -57,7 +57,7 @@ i3GEOadmin.grupos.dicionario = { @@ -57,7 +57,7 @@ i3GEOadmin.grupos.dicionario = {
57 es : "" 57 es : ""
58 } ], 58 } ],
59 'txtDesc' : [ { 59 'txtDesc' : [ {
60 - pt : "Utilze as op&ccedil;&otilde;es abaixo para criar ou editar temas que ficar&atilde;o na raiz do menu e tamb&eacute;m para editar os subgrupos existentes dentro do grupo atual.", 60 + pt : "Utilize as op&ccedil;&otilde;es abaixo para criar ou editar temas que ficar&atilde;o na raiz do menu e tamb&eacute;m para editar os subgrupos existentes dentro do grupo atual.",
61 en : "", 61 en : "",
62 es : "" 62 es : ""
63 } ] 63 } ]
admin1/dicionario/temas.js 100644 → 100755