Commit 39a98c3899a789839b96314f4b43a70bd90cb2c3

Authored by Edmar Moretti
1 parent 03d9e95a

Reorganização do layout do editor de perfis

admin/admin.db
No preview for this file type
admin1/cadastros/perfis/exec.php
... ... @@ -28,7 +28,9 @@ include_once (dirname ( __FILE__ ) . "/../../../admin/php/login.php");
28 28 $funcoesEdicao = array (
29 29 "ADICIONAR",
30 30 "ALTERAR",
31   - "EXCLUIR"
  31 + "EXCLUIR",
  32 + "LISTA",
  33 + "LISTAUNICO"
32 34 );
33 35 if (in_array ( strtoupper ( $funcao ), $funcoesEdicao )) {
34 36 if (verificaOperacaoSessao ( "admin/html/arvore" ) === false) {
... ... @@ -70,6 +72,18 @@ switch ($funcao) {
70 72 retornaJSON ( $dados );
71 73 exit ();
72 74 break;
  75 + case "LISTAUNICO" :
  76 + $dados = pegaDados ( "SELECT id_perfil, perfil from ".$esquemaadmin."i3geoadmin_perfis WHERE id_perfil = $id_perfil", $dbh, false );
  77 + if ($dados === false) {
  78 + $dbhw = null;
  79 + $dbh = null;
  80 + header ( "HTTP/1.1 500 erro ao consultar banco de dados" );
  81 + exit ();
  82 + }
  83 + $dbhw = null;
  84 + $dbh = null;
  85 + retornaJSON ( $dados[0] );
  86 + break;
73 87 case "LISTA" :
74 88 $dados = pegaDados ( "SELECT id_perfil, perfil from ".$esquemaadmin."i3geoadmin_perfis order by lower(perfil)", $dbh, false );
75 89 if ($dados === false) {
... ...
admin1/cadastros/perfis/index.js
... ... @@ -27,6 +27,8 @@ i3GEOadmin.perfis = {
27 27 ondeLista: "",
28 28 //conteudo html do formulario de adicao de operacao
29 29 formAdiciona: "",
  30 + //parametros obtidos do formulario de edicao antes de abrir o modal de confirmacao
  31 + parametrosSalvar: "",
30 32 init: function(onde){
31 33 i3GEOadmin.perfis.ondeLista = onde;
32 34 i3GEOadmin.perfis.lista();
... ... @@ -59,7 +61,7 @@ Obtém a lista de perfis
59 61 {
60 62 "data": json,
61 63 "onExcluir": "i3GEOadmin.perfis.excluirDialogo",//funcao
62   - "onSalvar": "i3GEOadmin.perfis.salvarDialogo"//funcao
  64 + "onEditar": "i3GEOadmin.perfis.editarDialogo"//funcao
63 65 }
64 66 )
65 67 );
... ... @@ -102,6 +104,38 @@ Obtém a lista de perfis
102 104 i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
103 105 });
104 106 },
  107 + editarDialogo: function(id){
  108 + i3GEOadmin.core.fechaModalGeral();
  109 + i3GEOadmin.core.modalAguarde(true);
  110 + $.post(
  111 + "exec.php?funcao=listaunico",
  112 + "id_perfil=" + id
  113 + )
  114 + .done(
  115 + function(data, status){
  116 + var json = jQuery.parseJSON(data);
  117 + var html = Mustache.to_html(
  118 + "{{#data}}" + $("#templateFormLista").html() + "{{/data}}",
  119 + $.extend(
  120 + {},
  121 + i3GEOadmin.perfis.dicionario,
  122 + {
  123 + "data": json,
  124 + "onExcluir": "i3GEOadmin.perfis.excluirDialogo",//funcao
  125 + "onSalvar": "i3GEOadmin.perfis.salvarDialogo"//funcao
  126 + }
  127 + )
  128 + );
  129 + i3GEOadmin.core.abreModalGeral(html);
  130 + }
  131 + )
  132 + .fail(
  133 + function(data){
  134 + i3GEOadmin.core.modalAguarde(false);
  135 + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
  136 + }
  137 + );
  138 + },
105 139 adicionaDialogo: function(){
106 140 i3GEOadmin.core.abreModalGeral(i3GEOadmin.perfis.formAdiciona);
107 141 },
... ... @@ -159,17 +193,18 @@ Obtém a lista de perfis
159 193 );
160 194 },
161 195 salvarDialogo: function(id){
  196 + i3GEOadmin.perfis.parametrosSalvar = $("#form-edicao-" + id).serialize();
162 197 var hash = {
163 198 "mensagem": i3GEOadmin.perfis.dicionario.confirma,
164 199 "onBotao1": "i3GEOadmin.perfis.salvar('"+id+"')",
165 200 "botao1": i3GEOadmin.perfis.dicionario.sim,
166   - "onBotao2": "i3GEOadmin.core.fechaModalConfirma();",
  201 + "onBotao2": "i3GEOadmin.perfis.parametrosSalvar = '';i3GEOadmin.core.fechaModalConfirma();",
167 202 "botao2": i3GEOadmin.perfis.dicionario.nao
168 203 };
169 204 i3GEOadmin.core.abreModalConfirma(hash);
170 205 },
171 206 salvar: function(id){
172   - var parametros = $("#form-" + id + " form").serialize();
  207 + var parametros = i3GEOadmin.perfis.parametrosSalvar;
173 208 i3GEOadmin.core.fechaModalGeral();
174 209 i3GEOadmin.core.modalAguarde(true);
175 210 $.post(
... ... @@ -178,6 +213,7 @@ Obtém a lista de perfis
178 213 )
179 214 .done(
180 215 function(data, status){
  216 + i3GEOadmin.perfis.parametrosSalvar = '';
181 217 i3GEOadmin.core.modalAguarde(false);
182 218 i3GEOadmin.core.iconeAguarde(i3GEOadmin.perfis.ondeLista);
183 219 i3GEOadmin.perfis.lista();
... ... @@ -185,6 +221,7 @@ Obtém a lista de perfis
185 221 )
186 222 .fail(
187 223 function(data){
  224 + i3GEOadmin.perfis.parametrosSalvar = '';
188 225 i3GEOadmin.core.modalAguarde(false);
189 226 i3GEOadmin.core.mostraErro(data.status + " " +data.statusText);
190 227 }
... ...
admin1/cadastros/perfis/index.php
... ... @@ -17,8 +17,8 @@ include "../../head.php";
17 17  
18 18 <div class="container">
19 19 <div class="row center-block">
20   - <div class="col-md-12">
21   - <div class="well hidden" id="titulo">
  20 + <div class="col-md-12" id="titulo">
  21 + <div class="well hidden" >
22 22 <!--
23 23 <button data-toggle="modal" data-target="#ajudaPrincipal"
24 24 class="btn btn-primary btn-fab btn-fab-mini pull-right">
... ... @@ -33,11 +33,6 @@ include &quot;../../head.php&quot;;
33 33 title="{{{filtro}}}" onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg">
34 34 </select>
35 35 </div>
36   - <div class="row pull-right">
37   - <a onclick="i3GEOadmin.perfis.adicionaDialogo();" href="javascript:void(0)"
38   - class="btn btn-primary" role="button" style="color:#008579;">{{{adicionar}}}</a>
39   - </div>
40   - <div class="clearfix"></div>
41 36 <!--
42 37 <div id="ajudaPrincipal" class="modal fade" tabindex="-1">
43 38 <div class="modal-dialog">
... ... @@ -51,6 +46,11 @@ include &quot;../../head.php&quot;;
51 46 -->
52 47 </div>
53 48 <div class="well hidden">
  49 + <div class="row pull-right">
  50 + <a onclick="i3GEOadmin.perfis.adicionaDialogo();" href="javascript:void(0)"
  51 + class="btn btn-primary" role="button" style="color:#008579;">{{{adicionar}}}</a>
  52 + </div>
  53 + <div class="clearfix"></div>
54 54 <div id="corpo"></div>
55 55 </div>
56 56 </div>
... ... @@ -60,32 +60,39 @@ include &quot;../../head.php&quot;;
60 60 <option value="form-{{id_perfil}}">{{{perfil}}}</option>
61 61 </script>
62 62 <script id="templateFormLista" type="x-tmpl-mustache">
63   -<form style="" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form-horizontal" role="form"
  63 +<form id="form-edicao-{{id_perfil}}" style="" action="#" onsubmit="{{onSalvar}}('{{id_perfil}}');return false;" onchange="this.style.boxShadow='2px 2px 5px 0 #009688';" class="form-horizontal" role="form"
64 64 method="post" >
65   - <div class="form-group form-group-lg">
66   - <label class="col-md-2 control-label" for="perfil">{{{txtPerfil}}}</label>
67   - <div class="col-md-10">
68   - <input type="text" value="{{{perfil}}}" class="form-control" name="perfil" required>
  65 + <div class="row">
  66 + <div class="col-md-12">
  67 + <h4>{{{txtPerfil}}}</h4>
  68 + <div class="form-group form-group-lg">
  69 + <div class="col-md-10">
  70 + <input title="{{{perfil}}}" type="text" value="{{{perfil}}}" class="form-control" name="perfil" required>
  71 + </div>
  72 + </div>
69 73 </div>
70 74 </div>
  75 + <div class="pull-right">
  76 + <button type="submit" class="btn btn-primary" role="button" style="color:#008579;">{{salvar}}</button>
  77 + </div>
71 78 <div class="clearfix"></div>
72 79 </form>
73 80 </script>
74 81 <script id="templateLista" type="x-tmpl-mustache">
75   - <div class="panel panel-default" id="form-{{id_perfil}}">
76   - <div class="panel-body">
77   - <div class="row">
78   - <div class="col-md-12">
79   - {{{templateFormLista}}}
80   - <div class="pull-right">
81   - <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_perfil}}')" class="btn btn-danger"
82   - style="color:#e13023;" role="button">{{excluir}}</a>
83   - <a href="javascript:void(0)"
84   - onclick="{{onSalvar}}('{{id_perfil}}')" class="btn btn-primary" role="button" style="color:#008579;">{{salvar}}</a>
85   - </div>
86   - </div>
87   - </div>
  82 + <div class="list-group-item" id="form-{{id_perfil}}">
  83 + <div class="row-content">
  84 + <h3 class="list-group-item-heading {{escondido}}">
  85 + {{{perfil}}}
  86 + <a href="javascript:void(0)" onclick="{{onEditar}}('{{id_perfil}}')" class="btn btn-danger btn-fab btn-fab-mini pull-right" role="button">
  87 + <i class="material-icons md-18">edit</i>
  88 + </a>
  89 + <span class="pull-right">&nbsp;&nbsp;</span>
  90 + <a href="javascript:void(0)" onclick="{{onExcluir}}('{{id_perfil}}')" class="btn btn-danger btn-fab btn-fab-mini pull-right" role="button">
  91 + <i class="material-icons md-18">delete_forever</i>
  92 + </a>
  93 + </h3>
88 94 </div>
  95 + <div class="list-group-separator"></div>
89 96 </div>
90 97 </script>
91 98  
... ...
admin1/cadastros/tags/exec.php
... ... @@ -82,7 +82,7 @@ switch ($funcao) {
82 82 }
83 83 $dbhw = null;
84 84 $dbh = null;
85   - retornaJSON ( $dados );
  85 + retornaJSON ( $dados[0] );
86 86 break;
87 87 case "LISTA" :
88 88 $dados = pegaDados ( "SELECT id_tag, nome from ".$esquemaadmin."i3geoadmin_tags order by lower(nome)", $dbh, false );
... ...
admin1/cadastros/tags/index.php
... ... @@ -66,8 +66,7 @@ include &quot;../../head.php&quot;;
66 66 <div class="col-md-12">
67 67 <h4>Tag</h4>
68 68 <div class="form-group form-group-lg">
69   - <label class="col-md-2 control-label" for="nome" >{{{nome}}}</label>
70   - <div class="col-md-10">
  69 + <div class="col-md-12">
71 70 <input title="{{{nome}}}" type="text" value="{{{nome}}}" class="form-control" name="nome" required>
72 71 </div>
73 72 </div>
... ... @@ -94,7 +93,8 @@ include &quot;../../head.php&quot;;
94 93 </h3>
95 94 </div>
96 95 <div class="list-group-separator"></div>
97   -</div></script>
  96 +</div>
  97 +</script>
98 98  
99 99 <script type="text/javascript" src="index.js"></script>
100 100 <script type="text/javascript" src="../../dicionario/tags.js"></script>
... ...