Commit 2ed9acdf43e65731a636e31666ac40e48d275249

Authored by Edmar Moretti
1 parent d4f07b81

Adaptação do sistema de admin para bootstrap

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&ccedil;&atilde;o da lista de menus
52   -
53   - Veja tamb&eacute;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&eacute;rio do Meio Ambiente Brasil
72   - Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br
73   -
74   - Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
75   - e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
76   - GNU conforme publicada pela Free Software Foundation;
77   -
78   - Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
79   - por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
80   - de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
81   - Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
82   - Voc&ecirc; deve ter recebido uma cópia da Licen&ccedil;a P&uacute;blica Geral do
83   - GNU junto com este programa; se n&atilde;o, escreva para a
84   - Free Software Foundation, Inc., no endere&ccedil;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>
admin1/catalogo/menus/exec.php 0 → 100755
... ... @@ -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 +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 +?>
... ...
admin1/catalogo/menus/index.js 0 → 100755
... ... @@ -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&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.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&eacute;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 &quot;../../head.php&quot;;
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 &quot;../../head.php&quot;;
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&ccedil;&atilde;o do i3geo - Menus",
  2 +i3GEOadmin.menus.dicionario = {
  3 + 'txtTitulo' : [ {
  4 + pt : "Menus utilizados no cat&aacute;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&atilde;o do menu",
  24 + pt : "Nome padr&atilde;o do menu",
26 25 en : "",
27 26 es : ""
28 27 } ],
29 28 'nomeIn' : [ {
30   - pt : "nome em ingl&ecirc;s (opcional)",
  29 + pt : "Nome em ingl&ecirc;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&ccedil;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&ccedil;&atilde;o",
  64 + pt : "Descri&ccedil;&atilde;o",
61 65 en : "",
62 66 es : ""
63 67 } ],
... ...