Commit 2ed9acdf43e65731a636e31666ac40e48d275249
1 parent
d4f07b81
Exists in
master
and in
7 other branches
Adaptação do sistema de admin para bootstrap
Showing
6 changed files
with
564 additions
and
121 deletions
Show diff stats
admin/admin.db
No preview for this file type
admin/html/menus_.html
| ... | ... | @@ -1,104 +0,0 @@ |
| 1 | -<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> | |
| 2 | -<html> | |
| 3 | -<head> | |
| 4 | -<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1"> | |
| 5 | -<title>Lista de menus</title> | |
| 6 | -<style type="text/css"> | |
| 7 | -/*margin and padding on body element | |
| 8 | - can introduce errors in determining | |
| 9 | - element position and are not recommended; | |
| 10 | - we turn them off as a foundation for YUI | |
| 11 | - CSS treatments. */ | |
| 12 | -body { | |
| 13 | - margin: 0; | |
| 14 | - padding: 0; | |
| 15 | -} | |
| 16 | -</style> | |
| 17 | -<script type="text/javascript" src="../js/core_.js"></script> | |
| 18 | -<script type="text/javascript" src="../dicionario/core.js"></script> | |
| 19 | -<script type="text/javascript" src="../js/menu.js"></script> | |
| 20 | -<script type="text/javascript" src="../dicionario/menus.js"></script> | |
| 21 | -</head> | |
| 22 | -<body class=" yui-skin-sam" style="background-color: white; margin-top: 20px;"> | |
| 23 | - <div style="margin: 20px"> | |
| 24 | - <div style="width: 80%; text-align: center;"> | |
| 25 | - <h1> | |
| 26 | - {{{menus}}} <img | |
| 27 | - src="../imagens/04.png" style="cursor: pointer" id=botaoAjuda /> | |
| 28 | - </h1> | |
| 29 | - | |
| 30 | - </div> | |
| 31 | - <div id="formulario" style="display: none"> | |
| 32 | - <div id="ajuda" style="display: none"> | |
| 33 | - <div class="hd">{{{ajuda}}}</div> | |
| 34 | - <div class="bd" style="height: 144px; overflow: auto"> | |
| 35 | - {{{txtAjuda}}} | |
| 36 | - </div> | |
| 37 | - <div class="ft"></div> | |
| 38 | - </div> | |
| 39 | - <br> | |
| 40 | - <input type=button id=adicionaNovoMenu value="{{{adicionaMenu}}}" style="left: -5px;" /> | |
| 41 | - <p> | |
| 42 | - | |
| 43 | - <div id="tabela" style="left: -5px;"></div> | |
| 44 | - </div> | |
| 45 | - </div> | |
| 46 | - <div id=logajax style="display: block"></div> | |
| 47 | - <script> | |
| 48 | - /* | |
| 49 | - Title: Editor da lista de menus | |
| 50 | - | |
| 51 | - HTML da interface de administração da lista de menus | |
| 52 | - | |
| 53 | - Veja também: | |
| 54 | - | |
| 55 | - <core.js> | |
| 56 | - | |
| 57 | - <arvore.js> | |
| 58 | - | |
| 59 | - <menu.js> | |
| 60 | - | |
| 61 | - <grupos.js> | |
| 62 | - | |
| 63 | - <subgrupos.js> | |
| 64 | - | |
| 65 | - Licenca: | |
| 66 | - | |
| 67 | - GPL2 | |
| 68 | - | |
| 69 | - i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | |
| 70 | - | |
| 71 | - Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil | |
| 72 | - Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br | |
| 73 | - | |
| 74 | - Este programa é software livre; você pode redistribuí-lo | |
| 75 | - e/ou modificá-lo sob os termos da Licença Pública Geral | |
| 76 | - GNU conforme publicada pela Free Software Foundation; | |
| 77 | - | |
| 78 | - Este programa é distribuído na expectativa de que seja útil, | |
| 79 | - porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita | |
| 80 | - de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. | |
| 81 | - Consulte a Licença Pública Geral do GNU para mais detalhes. | |
| 82 | - Você deve ter recebido uma cópia da Licença Pública Geral do | |
| 83 | - GNU junto com este programa; se não, escreva para a | |
| 84 | - Free Software Foundation, Inc., no endereço | |
| 85 | - 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. | |
| 86 | - | |
| 87 | - Arquivo: | |
| 88 | - | |
| 89 | - i3geo/admin/html/menus.html | |
| 90 | - */ | |
| 91 | - | |
| 92 | - //necessario para a ferramenta login e outras | |
| 93 | - i3GEO.configura = { | |
| 94 | - locaplic : "../.." | |
| 95 | - }; | |
| 96 | - core_parseMustacheBody(i3GEOadmin.listamenu.dicionario); | |
| 97 | - cabecalhoGeral("cabecalhoPrincipal", "menus"); | |
| 98 | - temp = function() { | |
| 99 | - document.getElementById("formulario").style.display = "block"; | |
| 100 | - i3GEOadmin.menus.inicia(); | |
| 101 | - }; | |
| 102 | - i3GEO.login.verificaOperacao("admin/html/menus",i3GEO.configura.locaplic, temp, "sessao", i3GEO.login.dialogo.abreLogin); | |
| 103 | - </script> | |
| 104 | -</body> |
| ... | ... | @@ -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 é software livre; você pode redistribuí-lo | |
| 13 | + * e/ou modificá-lo sob os termos da Licença Pública Geral | |
| 14 | + * GNU conforme publicada pela Free Software Foundation; | |
| 15 | + * | |
| 16 | + * Este programa é distribuído na expectativa de que seja útil, | |
| 17 | + * porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita | |
| 18 | + * de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. | |
| 19 | + * Consulte a Licença Pública Geral do GNU para mais detalhes. | |
| 20 | + * Você deve ter recebido uma copia da Licença Pública Geral do | |
| 21 | + * GNU junto com este programa; se não, escreva para a | |
| 22 | + * Free Software Foundation, Inc., no endereç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 | +if(!isset($idioma) || $idioma == ""){ | |
| 44 | + $idioma = "pt"; | |
| 45 | +} | |
| 46 | + | |
| 47 | +$funcao = strtoupper ( $funcao ); | |
| 48 | +switch ($funcao) { | |
| 49 | + case "ADICIONAR" : | |
| 50 | + $novo = adicionar( $publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en, $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_menu, $publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en, $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_menu, publicado_menu, perfil_menu, aberto, desc_menu, nome_menu, es, en from ".$esquemaadmin."i3geoadmin_menus order by nome_menu", $dbh, false ); | |
| 64 | + if ($dados == false) { | |
| 65 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | |
| 66 | + exit (); | |
| 67 | + } | |
| 68 | + retornaJSON ( $dados ); | |
| 69 | + exit (); | |
| 70 | + break; | |
| 71 | + case "LISTA" : | |
| 72 | + $dados = pegaDados ( "SELECT id_menu, publicado_menu, perfil_menu, aberto, desc_menu, nome_menu, es, en from ".$esquemaadmin."i3geoadmin_menus order by nome_menu", $dbh, false ); | |
| 73 | + if ($dados == false) { | |
| 74 | + $dbhw = null; | |
| 75 | + $dbh = null; | |
| 76 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | |
| 77 | + exit (); | |
| 78 | + } | |
| 79 | + $dbhw = null; | |
| 80 | + $dbh = null; | |
| 81 | + retornaJSON ( $dados ); | |
| 82 | + break; | |
| 83 | + case "EXCLUIR" : | |
| 84 | + $retorna = excluir ( $id_menu, $dbhw ); | |
| 85 | + $dbhw = null; | |
| 86 | + $dbh = null; | |
| 87 | + if ($retorna == false) { | |
| 88 | + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); | |
| 89 | + exit (); | |
| 90 | + } | |
| 91 | + retornaJSON ( $id_menu ); | |
| 92 | + exit (); | |
| 93 | + break; | |
| 94 | +} | |
| 95 | +cpjson ( $retorno ); | |
| 96 | + | |
| 97 | +// $papeis deve ser um array | |
| 98 | +function adicionar($publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en, $dbhw) { | |
| 99 | + global $esquemaadmin; | |
| 100 | + try { | |
| 101 | + $dataCol = array( | |
| 102 | + "en" => "", | |
| 103 | + "es" => "", | |
| 104 | + "it" => "", | |
| 105 | + "publicado_menu" => "", | |
| 106 | + "aberto" => "SIM", | |
| 107 | + "nome_menu" => "", | |
| 108 | + "desc_menu" => "", | |
| 109 | + "perfil_menu" => "" | |
| 110 | + ); | |
| 111 | + $id_menu = i3GeoAdminInsertUnico($dbhw,"i3geoadmin_menus",$dataCol,"nome_menu","id_menu"); | |
| 112 | + $retorna = alterar ( $id_menu, $publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en,$dbhw ); | |
| 113 | + | |
| 114 | + return $retorna; | |
| 115 | + } catch ( PDOException $e ) { | |
| 116 | + return false; | |
| 117 | + } | |
| 118 | +} | |
| 119 | +// $papeis deve ser um array | |
| 120 | +function alterar($id_menu, $publicado_menu, $perfil_menu, $aberto, $desc_menu, $nome_menu, $es, $en,$dbhw) { | |
| 121 | + global $esquemaadmin; | |
| 122 | + if($convUTF){ | |
| 123 | + $nome_menu = utf8_encode($nome_menu); | |
| 124 | + $desc_menu = utf8_encode($desc_menu); | |
| 125 | + $en = utf8_encode($en); | |
| 126 | + $es = utf8_encode($es); | |
| 127 | + } | |
| 128 | + $dataCol = array( | |
| 129 | + "en" => $en, | |
| 130 | + "es" => $es, | |
| 131 | + "it" => '', | |
| 132 | + "publicado_menu" => $publicado_menu, | |
| 133 | + "aberto" => $aberto, | |
| 134 | + "nome_menu" => $nome_menu, | |
| 135 | + "desc_menu" => $desc_menu, | |
| 136 | + "perfil_menu" => $perfil_menu | |
| 137 | + ); | |
| 138 | + $resultado = i3GeoAdminUpdate ( $dbhw, "i3geoadmin_menus", $dataCol, "WHERE id_menu = $id_menu" ); | |
| 139 | + if ($resultado == false) { | |
| 140 | + return false; | |
| 141 | + } | |
| 142 | + return $id_menu; | |
| 143 | +} | |
| 144 | +function excluir($id_menu, $dbhw) { | |
| 145 | + global $esquemaadmin; | |
| 146 | + $resultado = i3GeoAdminExclui ( $esquemaadmin . "i3geoadmin_menus", "id_menu", $id_menu, $dbhw, false ); | |
| 147 | + if ($resultado == false) { | |
| 148 | + return false; | |
| 149 | + } | |
| 150 | + return $resultado; | |
| 151 | +} | |
| 152 | +?> | ... | ... |
| ... | ... | @@ -0,0 +1,252 @@ |
| 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.menus = { | |
| 26 | + //variavel global indicando o elemento que recebera a lista de menus | |
| 27 | + ondeLista: "", | |
| 28 | + //conteudo html do formulario de adicao de operacao | |
| 29 | + formAdiciona: "", | |
| 30 | + init: function(onde){ | |
| 31 | + i3GEOadmin.menus.ondeLista = onde; | |
| 32 | + i3GEOadmin.menus.lista(); | |
| 33 | + }, | |
| 34 | + /* | |
| 35 | +Function: lista | |
| 36 | + | |
| 37 | +Obtém a lista de menus | |
| 38 | + */ | |
| 39 | + lista: function(){ | |
| 40 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.menus.ondeLista); | |
| 41 | + $.post( | |
| 42 | + "exec.php?funcao=lista" | |
| 43 | + ) | |
| 44 | + .done( | |
| 45 | + function(data, status){ | |
| 46 | + //valor do filtro atual | |
| 47 | + var filtro = i3GEOadmin.menus.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 menus | |
| 53 | + var html = Mustache.to_html( | |
| 54 | + "{{#data}}" + templateLista + "{{/data}}", | |
| 55 | + $.extend( | |
| 56 | + {}, | |
| 57 | + i3GEOadmin.menus.dicionario, | |
| 58 | + { | |
| 59 | + "data": json, | |
| 60 | + "onExcluir": "i3GEOadmin.menus.excluirDialogo",//funcao | |
| 61 | + "onSalvar": "i3GEOadmin.menus.salvarDialogo",//funcao | |
| 62 | + "opcoesAberto": function(){ | |
| 63 | + var hash = {}; | |
| 64 | + hash[this.aberto + "-sel"] = "selected"; | |
| 65 | + hash["sim"] = i3GEOadmin.menus.dicionario.sim; | |
| 66 | + hash["nao"] = i3GEOadmin.menus.dicionario.nao; | |
| 67 | + return Mustache.to_html( | |
| 68 | + $("#templateOpcoesAberto").html(), | |
| 69 | + hash | |
| 70 | + ); | |
| 71 | + }, | |
| 72 | + "opcoesPublicado": function(){ | |
| 73 | + var hash = {}; | |
| 74 | + hash[this.publicado_menu + "-sel"] = "selected"; | |
| 75 | + hash["sim"] = i3GEOadmin.menus.dicionario.sim; | |
| 76 | + hash["nao"] = i3GEOadmin.menus.dicionario.nao; | |
| 77 | + return Mustache.to_html( | |
| 78 | + $("#templateOpcoesPublicado").html(), | |
| 79 | + hash | |
| 80 | + ); | |
| 81 | + } | |
| 82 | + } | |
| 83 | + ) | |
| 84 | + ); | |
| 85 | + i3GEOadmin.menus.ondeLista.html(html); | |
| 86 | + //filtro | |
| 87 | + html = Mustache.to_html( | |
| 88 | + "{{#data}}" + $("#templateFiltro").html() + "{{/data}}", | |
| 89 | + {"data":json} | |
| 90 | + ); | |
| 91 | + $("#filtro").html("<option value='' >Todos</option>" + html); | |
| 92 | + $("#filtro").combobox(); | |
| 93 | + if(filtro != ""){ | |
| 94 | + i3GEOadmin.menus.defineFiltro(filtro); | |
| 95 | + i3GEOadmin.menus.filtra(i3GEOadmin.menus.pegaFiltro()); | |
| 96 | + } | |
| 97 | + //monta um template para o modal de inclusao de novo usuario | |
| 98 | + if(i3GEOadmin.menus.formAdiciona == ""){ | |
| 99 | + html = Mustache.to_html( | |
| 100 | + $("#templateLista").html(), | |
| 101 | + $.extend( | |
| 102 | + {}, | |
| 103 | + i3GEOadmin.menus.dicionario, | |
| 104 | + { | |
| 105 | + "id_menu": "modal", | |
| 106 | + "excluir": i3GEOadmin.menus.dicionario.cancelar, | |
| 107 | + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao | |
| 108 | + "onSalvar": "i3GEOadmin.menus.adiciona",//funcao | |
| 109 | + "opcoesAberto": function(){ | |
| 110 | + var hash = {}; | |
| 111 | + hash["sim"] = i3GEOadmin.menus.dicionario.sim; | |
| 112 | + hash["nao"] = i3GEOadmin.menus.dicionario.nao; | |
| 113 | + return Mustache.to_html( | |
| 114 | + $("#templateOpcoesAberto").html(), | |
| 115 | + hash | |
| 116 | + ); | |
| 117 | + }, | |
| 118 | + "opcoesPublicado": function(){ | |
| 119 | + var hash = {}; | |
| 120 | + hash["sim"] = i3GEOadmin.menus.dicionario.sim; | |
| 121 | + hash["nao"] = i3GEOadmin.menus.dicionario.nao; | |
| 122 | + return Mustache.to_html( | |
| 123 | + $("#templateOpcoesPublicado").html(), | |
| 124 | + hash | |
| 125 | + ); | |
| 126 | + } | |
| 127 | + } | |
| 128 | + ) | |
| 129 | + ); | |
| 130 | + i3GEOadmin.menus.formAdiciona = html; | |
| 131 | + } | |
| 132 | + $.material.init(); | |
| 133 | + } | |
| 134 | + ) | |
| 135 | + .fail(function(data){ | |
| 136 | + i3GEOadmin.menus.ondeLista.html(""); | |
| 137 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | |
| 138 | + }); | |
| 139 | + }, | |
| 140 | + adicionaDialogo: function(){ | |
| 141 | + i3GEOadmin.core.abreModalGeral(i3GEOadmin.menus.formAdiciona); | |
| 142 | + }, | |
| 143 | +// os parametros sao obtidos do formulario aberto do modal | |
| 144 | + adiciona: function(){ | |
| 145 | + var parametros = $("#form-modal form").serialize(); | |
| 146 | + i3GEOadmin.core.fechaModalGeral(); | |
| 147 | + i3GEOadmin.core.modalAguarde(true); | |
| 148 | + $.post( | |
| 149 | + "exec.php?funcao=adicionar", | |
| 150 | + parametros | |
| 151 | + ) | |
| 152 | + .done( | |
| 153 | + function(data, status){ | |
| 154 | + i3GEOadmin.core.modalAguarde(false); | |
| 155 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.menus.ondeLista); | |
| 156 | + i3GEOadmin.menus.lista(); | |
| 157 | + } | |
| 158 | + ) | |
| 159 | + .fail( | |
| 160 | + function(data){ | |
| 161 | + i3GEOadmin.core.modalAguarde(false); | |
| 162 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | |
| 163 | + } | |
| 164 | + ); | |
| 165 | + }, | |
| 166 | + excluirDialogo: function(id){ | |
| 167 | + var hash = { | |
| 168 | + "mensagem": i3GEOadmin.menus.dicionario.confirma, | |
| 169 | + "onBotao1": "i3GEOadmin.menus.excluir('"+id+"')", | |
| 170 | + "botao1": i3GEOadmin.menus.dicionario.sim, | |
| 171 | + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", | |
| 172 | + "botao2": i3GEOadmin.menus.dicionario.nao | |
| 173 | + }; | |
| 174 | + i3GEOadmin.core.abreModalConfirma(hash); | |
| 175 | + }, | |
| 176 | + excluir: function(id){ | |
| 177 | + i3GEOadmin.core.modalAguarde(true); | |
| 178 | + $.post( | |
| 179 | + "exec.php?funcao=excluir", | |
| 180 | + "id_menu="+id | |
| 181 | + ) | |
| 182 | + .done( | |
| 183 | + function(data, status){ | |
| 184 | + i3GEOadmin.core.modalAguarde(false); | |
| 185 | + var json = jQuery.parseJSON(data)*1; | |
| 186 | + $("#form-" + json).remove(); | |
| 187 | + } | |
| 188 | + ) | |
| 189 | + .fail( | |
| 190 | + function(data){ | |
| 191 | + i3GEOadmin.core.modalAguarde(false); | |
| 192 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | |
| 193 | + } | |
| 194 | + ); | |
| 195 | + }, | |
| 196 | + salvarDialogo: function(id){ | |
| 197 | + var hash = { | |
| 198 | + "mensagem": i3GEOadmin.menus.dicionario.confirma, | |
| 199 | + "onBotao1": "i3GEOadmin.menus.salvar('"+id+"')", | |
| 200 | + "botao1": i3GEOadmin.menus.dicionario.sim, | |
| 201 | + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", | |
| 202 | + "botao2": i3GEOadmin.menus.dicionario.nao | |
| 203 | + }; | |
| 204 | + i3GEOadmin.core.abreModalConfirma(hash); | |
| 205 | + }, | |
| 206 | + salvar: function(id){ | |
| 207 | + var parametros = $("#form-" + id + " form").serialize(); | |
| 208 | + i3GEOadmin.core.fechaModalGeral(); | |
| 209 | + i3GEOadmin.core.modalAguarde(true); | |
| 210 | + $.post( | |
| 211 | + "exec.php?funcao=alterar", | |
| 212 | + "id_menu="+ id+"&"+parametros | |
| 213 | + ) | |
| 214 | + .done( | |
| 215 | + function(data, status){ | |
| 216 | + i3GEOadmin.core.modalAguarde(false); | |
| 217 | + i3GEOadmin.core.iconeAguarde(i3GEOadmin.menus.ondeLista); | |
| 218 | + i3GEOadmin.menus.lista(); | |
| 219 | + } | |
| 220 | + ) | |
| 221 | + .fail( | |
| 222 | + function(data){ | |
| 223 | + i3GEOadmin.core.modalAguarde(false); | |
| 224 | + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); | |
| 225 | + } | |
| 226 | + ); | |
| 227 | + }, | |
| 228 | + pegaFiltro: function(){ | |
| 229 | + return $i("filtro"); | |
| 230 | + }, | |
| 231 | + valorFiltro: function(){ | |
| 232 | + return i3GEOadmin.menus.pegaFiltro().value; | |
| 233 | + }, | |
| 234 | + defineFiltro: function(valor){ | |
| 235 | + i3GEOadmin.menus.pegaFiltro().value = valor; | |
| 236 | + }, | |
| 237 | + filtra: function(obj){ | |
| 238 | + $("#corpo .panel").each( | |
| 239 | + function(i,el){ | |
| 240 | + if(obj.value == ""){ | |
| 241 | + $(el).show(); | |
| 242 | + } | |
| 243 | + else { | |
| 244 | + $(el).hide(); | |
| 245 | + } | |
| 246 | + } | |
| 247 | + ); | |
| 248 | + if(obj.value != ""){ | |
| 249 | + $("#"+obj.value).show(); | |
| 250 | + } | |
| 251 | + } | |
| 252 | +}; | |
| 0 | 253 | \ No newline at end of file | ... | ... |
admin1/catalogo/menus/index.php
| ... | ... | @@ -13,14 +13,123 @@ include "../../head.php"; |
| 13 | 13 | <li class="active">Menus</li> |
| 14 | 14 | </ol> |
| 15 | 15 | </div> |
| 16 | - | |
| 17 | 16 | </div> |
| 18 | -<div class="container-fluid"> | |
| 19 | - <div class="row"> | |
| 20 | - <iframe src="../../../admin/html/menus_.html" | |
| 21 | - style="width: 100%; height: 5000px; border: none; scrolling: no; frameborder: 0; marginheight: 0; marginwidth: 0;"></iframe> | |
| 17 | +<div class="container"> | |
| 18 | + <div class="row center-block"> | |
| 19 | + <div class="col-md-12"> | |
| 20 | + <div class="well hidden" id="titulo"> | |
| 21 | + <button data-toggle="modal" data-target="#ajudaPrincipal" | |
| 22 | + class="btn btn-primary btn-fab btn-fab-mini pull-right"> | |
| 23 | + <i class="material-icons">help</i> | |
| 24 | + </button> | |
| 25 | + <h3>{{{txtTitulo}}}</h3> | |
| 26 | + <!--<h4>{{{txtDesc}}}</h4>--> | |
| 27 | + <!-- aqui entra o filtro --> | |
| 28 | + <div class="form-group"> | |
| 29 | + <label class="control-label">{{{filtro}}}</label> | |
| 30 | + <select onchange="i3GEOadmin.menus.filtra(this)" id="filtro" class="form-control input-lg"> | |
| 31 | + </select> | |
| 32 | + </div> | |
| 33 | + <div class="row pull-right"> | |
| 34 | + <a onclick="i3GEOadmin.menus.adicionaDialogo();" href="javascript:void(0)" class="btn btn-primary" role="button">{{{adicionar}}}</a> | |
| 35 | + </div> | |
| 36 | + <div class="clearfix"></div> | |
| 37 | + <div id="ajudaPrincipal" class="modal fade" tabindex="-1"> | |
| 38 | + <div class="modal-dialog"> | |
| 39 | + <div class="modal-content"> | |
| 40 | + <div class="modal-body"> | |
| 41 | + <p>{{{txtAjuda}}}</p> | |
| 42 | + </div> | |
| 43 | + </div> | |
| 44 | + </div> | |
| 45 | + </div> | |
| 46 | + </div> | |
| 47 | + <div class="well hidden"> | |
| 48 | + <div id="corpo"> | |
| 49 | + </div> | |
| 50 | + </div> | |
| 51 | + </div> | |
| 52 | + </div> | |
| 53 | +</div> | |
| 54 | +<script id="templateFiltro" type="x-tmpl-mustache"> | |
| 55 | +<option value="form-{{id_menu}}">{{{nome_menu}}}</option> | |
| 56 | +</script> | |
| 57 | +<script id="templateLista" type="x-tmpl-mustache"> | |
| 58 | +<div class="panel panel-default" id="form-{{id_menu}}"> | |
| 59 | + <div class="panel-body"> | |
| 60 | + <form style="" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form" role="form" method="post" action="" > | |
| 61 | + <div class="row"> | |
| 62 | + <div class="col-md-12"> | |
| 63 | + <h4>{{{nome_menu}}}</h4> | |
| 64 | + <div class="form-group form-group-lg"> | |
| 65 | + <label class="col-md-3 control-label" for="nome_menu" >{{{nomeMenu}}}</label> | |
| 66 | + <div class="col-md-9"> | |
| 67 | + <input type="text" value="{{{nome_menu}}}" class="form-control" name="nome_menu" required> | |
| 68 | + </div> | |
| 69 | + </div> | |
| 70 | + <div class="form-group form-group-lg"> | |
| 71 | + <label class="col-md-3 control-label" for="es">{{{nomeEs}}}</label> | |
| 72 | + <div class="col-md-9"> | |
| 73 | + <input type="text" value="{{{es}}}" class="form-control" name="es" > | |
| 74 | + </div> | |
| 75 | + </div> | |
| 76 | + <div class="form-group form-group-lg"> | |
| 77 | + <label class="col-md-3 control-label" for="en">{{{nomeIn}}}</label> | |
| 78 | + <div class="col-md-9"> | |
| 79 | + <input type="text" value="{{{en}}}" class="form-control" name="en" required> | |
| 80 | + </div> | |
| 81 | + </div> | |
| 82 | + <div class="form-group form-group-lg"> | |
| 83 | + <label class="col-md-3 control-label" for="desc_menu">{{{descricao}}}</label> | |
| 84 | + <div class="col-md-9"> | |
| 85 | + <input type="text" value="{{{desc_menu}}}" class="form-control" name="desc_menu"> | |
| 86 | + </div> | |
| 87 | + </div> | |
| 88 | + <div class="form-group form-group-lg"> | |
| 89 | + <label class="col-md-3 control-label" for="perfil_menu">{{{perfil}}}</label> | |
| 90 | + <div class="col-md-9"> | |
| 91 | + <input type="text" value="{{{perfil_menu}}}" class="form-control" name="perfil_menu"> | |
| 92 | + <p>{{{perfilAjuda}}}</p> | |
| 93 | + </div> | |
| 94 | + </div> | |
| 95 | + <div class="form-group form-group-lg"> | |
| 96 | + <label class="col-md-3 control-label" for="publicado_menu">{{{publicado}}}</label> | |
| 97 | + <div class="col-md-9"> | |
| 98 | + <select name="publicado_menu" class="form-control"> | |
| 99 | + {{{opcoesPublicado}}} | |
| 100 | + </select> | |
| 101 | + </div> | |
| 102 | + </div> | |
| 103 | + <div class="form-group form-group-lg"> | |
| 104 | + <label class="col-md-3 control-label" for="aberto">{{{iniciaAberto}}}</label> | |
| 105 | + <div class="col-md-9"> | |
| 106 | + <select name="aberto" class="form-control"> | |
| 107 | + {{{opcoesAberto}}} | |
| 108 | + </select> | |
| 109 | + </div> | |
| 110 | + </div> | |
| 111 | + </div> | |
| 112 | + </div> | |
| 113 | + </form> | |
| 114 | + <div class="pull-right"> | |
| 115 | + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_menu}}')" class="btn btn-danger" role="button">{{excluir}}</a> | |
| 116 | + <a href="javascript:void(0)" onclick="{{onSalvar}}('{{id_menu}}')" class="btn btn-primary" role="button">{{salvar}}</a> | |
| 117 | + </div> | |
| 22 | 118 | </div> |
| 23 | 119 | </div> |
| 120 | +</script> | |
| 121 | +<script id="templateOpcoesPublicado" type="x-tmpl-mustache"> | |
| 122 | + <option value="">---</option> | |
| 123 | + <option {{SIM-sel}} value="SIM">{{{sim}}}</option> | |
| 124 | + <option {{NAO-sel}} value="NAO">{{{nao}}}</option> | |
| 125 | +</script> | |
| 126 | +<script id="templateOpcoesAberto" type="x-tmpl-mustache"> | |
| 127 | + <option value="">---</option> | |
| 128 | + <option {{SIM-sel}} value="SIM">{{{sim}}}</option> | |
| 129 | + <option {{NAO-sel}} value="NAO">{{{nao}}}</option> | |
| 130 | +</script> | |
| 131 | +<script type="text/javascript" src="index.js"></script> | |
| 132 | +<script type="text/javascript" src="../../dicionario/menus.js"></script> | |
| 24 | 133 | <script> |
| 25 | 134 | $(document).ready(function(){ |
| 26 | 135 | //vem de admin1/index.js |
| ... | ... | @@ -31,7 +140,37 @@ include "../../head.php"; |
| 31 | 140 | $(this).parent().siblings().removeClass('open'); |
| 32 | 141 | $(this).parent().toggleClass('open'); |
| 33 | 142 | }); |
| 143 | + //traducao | |
| 144 | + var t = $("#titulo"); | |
| 145 | + //complementa dicionario | |
| 146 | + i3GEOadmin.menus.dicionario.adicionar = i3GEOadmin.core.dicionario.adicionar; | |
| 147 | + i3GEOadmin.menus.dicionario.filtro = i3GEOadmin.core.dicionario.filtro; | |
| 148 | + i3GEOadmin.menus.dicionario.excluir = i3GEOadmin.core.dicionario.excluir; | |
| 149 | + i3GEOadmin.menus.dicionario.salvar = i3GEOadmin.core.dicionario.salva; | |
| 150 | + i3GEOadmin.menus.dicionario.cancelar = i3GEOadmin.core.dicionario.cancelar; | |
| 151 | + i3GEOadmin.menus.dicionario.confirma = i3GEOadmin.core.dicionario.confirma; | |
| 152 | + i3GEOadmin.menus.dicionario.nome = i3GEOadmin.core.dicionario.nome; | |
| 153 | + i3GEOadmin.menus.dicionario.tipo = i3GEOadmin.core.dicionario.tipo; | |
| 154 | + i3GEOadmin.menus.dicionario.descricao = i3GEOadmin.core.dicionario.descricao; | |
| 155 | + i3GEOadmin.menus.dicionario.sim = i3GEOadmin.core.dicionario.sim; | |
| 156 | + i3GEOadmin.menus.dicionario.nao = i3GEOadmin.core.dicionario.nao; | |
| 157 | + | |
| 158 | + i3GEOadmin.core.dicionario = null; | |
| 159 | + | |
| 160 | + i3GEOadmin.menus.dicionario = i3GEO.idioma.objetoIdioma(i3GEOadmin.menus.dicionario); | |
| 161 | + | |
| 162 | + t.html( | |
| 163 | + Mustache.to_html( | |
| 164 | + t.html(), | |
| 165 | + i3GEOadmin.menus.dicionario | |
| 166 | + ) | |
| 167 | + ); | |
| 34 | 168 | $.material.init(); |
| 169 | + var inicia = function() { | |
| 170 | + $(".hidden").removeClass('hidden'); | |
| 171 | + i3GEOadmin.menus.init($("#corpo")); | |
| 172 | + }; | |
| 173 | + i3GEO.login.verificaOperacao("admin/html/menus",i3GEO.configura.locaplic, inicia, "sessao"); | |
| 35 | 174 | }); |
| 36 | 175 | </script> |
| 37 | 176 | </body> | ... | ... |
admin1/dicionario/menus.js
| 1 | 1 | //+$trad(1,i3GEOadmin.principal.dicionario)+ |
| 2 | -i3GEOadmin.listamenu = {}; | |
| 3 | -i3GEOadmin.listamenu.dicionario = { | |
| 4 | - 'menus' : [ { | |
| 5 | - pt : "Administração do i3geo - Menus", | |
| 2 | +i3GEOadmin.menus.dicionario = { | |
| 3 | + 'txtTitulo' : [ { | |
| 4 | + pt : "Menus utilizados no catálogo", | |
| 6 | 5 | en : "", |
| 7 | 6 | es : "" |
| 8 | 7 | } ], |
| ... | ... | @@ -22,42 +21,47 @@ i3GEOadmin.listamenu.dicionario = { |
| 22 | 21 | es : "" |
| 23 | 22 | } ], |
| 24 | 23 | 'nomeMenu' : [ { |
| 25 | - pt : "nome padrão do menu", | |
| 24 | + pt : "Nome padrão do menu", | |
| 26 | 25 | en : "", |
| 27 | 26 | es : "" |
| 28 | 27 | } ], |
| 29 | 28 | 'nomeIn' : [ { |
| 30 | - pt : "nome em inglês (opcional)", | |
| 29 | + pt : "Nome em inglês (opcional)", | |
| 31 | 30 | en : "", |
| 32 | 31 | es : "" |
| 33 | 32 | } ], |
| 34 | 33 | 'nomeEs' : [ { |
| 35 | - pt : "nome em espanhol (opcional)", | |
| 34 | + pt : "Nome em espanhol (opcional)", | |
| 36 | 35 | en : "", |
| 37 | 36 | es : "" |
| 38 | 37 | } ], |
| 39 | 38 | 'nomeIt' : [ { |
| 40 | - pt : "nome em italiano (opcional)", | |
| 39 | + pt : "Nome em italiano (opcional)", | |
| 41 | 40 | en : "", |
| 42 | 41 | es : "" |
| 43 | 42 | } ], |
| 44 | 43 | 'publicado' : [ { |
| 45 | - pt : "publicado para todos verem?", | |
| 44 | + pt : "Publicado para todos verem?", | |
| 46 | 45 | en : "", |
| 47 | 46 | es : "" |
| 48 | 47 | } ], |
| 49 | 48 | 'perfil' : [ { |
| 50 | - pt : "perfis", | |
| 49 | + pt : "Perfis", | |
| 50 | + en : "", | |
| 51 | + es : "" | |
| 52 | + } ], | |
| 53 | + 'perfilAjuda' : [ { | |
| 54 | + pt : "lista de perfis, separados por espaço, que podem visualizar esse menu", | |
| 51 | 55 | en : "", |
| 52 | 56 | es : "" |
| 53 | 57 | } ], |
| 54 | 58 | 'iniciaAberto' : [ { |
| 55 | - pt : "inicia aberto?", | |
| 59 | + pt : "Inicia aberto?", | |
| 56 | 60 | en : "", |
| 57 | 61 | es : "" |
| 58 | 62 | } ], |
| 59 | 63 | 'descricao' : [ { |
| 60 | - pt : "descrição", | |
| 64 | + pt : "Descrição", | |
| 61 | 65 | en : "", |
| 62 | 66 | es : "" |
| 63 | 67 | } ], | ... | ... |