Commit 7de7716fa0f36393a2f8a5cdee8ba1108d52d441
1 parent
e009f44c
Exists in
master
and in
7 other branches
Inclusão de filtro na página de OGC
Showing
4 changed files
with
64 additions
and
22 deletions
Show diff stats
init/index.js
| @@ -99,7 +99,7 @@ botoesIni = [ | @@ -99,7 +99,7 @@ botoesIni = [ | ||
| 99 | "target": "_self" | 99 | "target": "_self" |
| 100 | },{ | 100 | },{ |
| 101 | "img":"applications-development-web.png", | 101 | "img":"applications-development-web.png", |
| 102 | - "href": "../admin", | 102 | + "href": "../admin1", |
| 103 | "titulo":$trad(3,g_traducao_init), | 103 | "titulo":$trad(3,g_traducao_init), |
| 104 | "subtitulo": $trad("3a",g_traducao_init), | 104 | "subtitulo": $trad("3a",g_traducao_init), |
| 105 | "fa": "cogs", | 105 | "fa": "cogs", |
ogc/dicionario.js
ogc/index.js
| 1 | function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templateCamadas){ | 1 | function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templateCamadas){ |
| 2 | var r = function(retorno) { | 2 | var r = function(retorno) { |
| 3 | var menus = retorno.data, | 3 | var menus = retorno.data, |
| 4 | - nmenus = menus.length, i = 0, s = [], camadasRaiz, dataMenu, htmlMenus, grupos; | 4 | + nmenus = menus.length, i = 0, s = [], camadasRaiz, dataMenu, htmlMenus, grupos, temp; |
| 5 | for(i=0; i<nmenus; i++){ | 5 | for(i=0; i<nmenus; i++){ |
| 6 | camadasRaiz = ""; | 6 | camadasRaiz = ""; |
| 7 | dataMenu = menus[i]; | 7 | dataMenu = menus[i]; |
| @@ -9,6 +9,7 @@ function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templat | @@ -9,6 +9,7 @@ function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templat | ||
| 9 | camadasRaiz = ckCamada(dataMenu.temas,templateCamadas,"tema"); | 9 | camadasRaiz = ckCamada(dataMenu.temas,templateCamadas,"tema"); |
| 10 | dataMenu["camadas"] = camadasRaiz; | 10 | dataMenu["camadas"] = camadasRaiz; |
| 11 | } | 11 | } |
| 12 | + dataMenu["filtro"] = $trad("filtro",g_traducao_ogc); | ||
| 12 | htmlMenus = Mustache.to_html( | 13 | htmlMenus = Mustache.to_html( |
| 13 | templateMenus, | 14 | templateMenus, |
| 14 | dataMenu | 15 | dataMenu |
| @@ -31,26 +32,42 @@ function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templat | @@ -31,26 +32,42 @@ function listaDoNivelMenu(templateMenus,templateGrupos,templateSubGrupos,templat | ||
| 31 | g = []; | 32 | g = []; |
| 32 | i = 0; | 33 | i = 0; |
| 33 | //camadas na raiz do grupo | 34 | //camadas na raiz do grupo |
| 35 | + //inclui no array com os grupos os temas | ||
| 36 | + //monta o array g que contem os grupos e camadas | ||
| 34 | for (i = 0; i < c; i++) { | 37 | for (i = 0; i < c; i++) { |
| 35 | if(gr[i].temasgrupo){ | 38 | if(gr[i].temasgrupo){ |
| 36 | - camadas = ckCamada(gr[i].temasgrupo,templateCamadas,"tema"); | 39 | + camadas = ckCamada( |
| 40 | + gr[i].temasgrupo, | ||
| 41 | + templateCamadas, | ||
| 42 | + "tema" | ||
| 43 | + ); | ||
| 37 | gr[i]["camadas"] = camadas; | 44 | gr[i]["camadas"] = camadas; |
| 38 | } else { | 45 | } else { |
| 39 | gr[i]["camadas"] = ""; | 46 | gr[i]["camadas"] = ""; |
| 40 | } | 47 | } |
| 41 | g.push(gr[i]); | 48 | g.push(gr[i]); |
| 42 | } | 49 | } |
| 50 | + //monta o combo para o filtro | ||
| 51 | + $('[data-grupoFiltro="'+retorno.data.idmenu+'"]').html( | ||
| 52 | + "<option value=''>---</option>" + | ||
| 53 | + Mustache.to_html( | ||
| 54 | + "{{#grupos}}" + $("#templateFiltroGrupo").html() + "{{/grupos}}", | ||
| 55 | + {"grupos":g} | ||
| 56 | + ) | ||
| 57 | + ); | ||
| 58 | + //monta a lista de grupos | ||
| 43 | if(g){ | 59 | if(g){ |
| 44 | htmlGrupos = Mustache.to_html( | 60 | htmlGrupos = Mustache.to_html( |
| 45 | "{{#grupos}}" + templateGrupos + "{{/grupos}}", | 61 | "{{#grupos}}" + templateGrupos + "{{/grupos}}", |
| 46 | {"grupos":g} | 62 | {"grupos":g} |
| 47 | ); | 63 | ); |
| 64 | + | ||
| 48 | } | 65 | } |
| 49 | $("#gruposMenu"+retorno.data.idmenu).html(htmlGrupos); | 66 | $("#gruposMenu"+retorno.data.idmenu).html(htmlGrupos); |
| 67 | + //monta os subgrupos | ||
| 50 | for (i = 0; i < c; i++) { | 68 | for (i = 0; i < c; i++) { |
| 51 | subgrupos = gr[i].subgrupos; | 69 | subgrupos = gr[i].subgrupos; |
| 52 | id_n1 = gr[i]["id_n1"]; | 70 | id_n1 = gr[i]["id_n1"]; |
| 53 | - | ||
| 54 | nsubgrupos = subgrupos.length; | 71 | nsubgrupos = subgrupos.length; |
| 55 | j = 0; | 72 | j = 0; |
| 56 | for( j = 0; j < nsubgrupos; j++){ | 73 | for( j = 0; j < nsubgrupos; j++){ |
| @@ -295,4 +312,19 @@ function listaCompleta(onde){ | @@ -295,4 +312,19 @@ function listaCompleta(onde){ | ||
| 295 | }; | 312 | }; |
| 296 | //cpJSON vem de class_php.js | 313 | //cpJSON vem de class_php.js |
| 297 | cpJSON.call("../classesphp/mapa_controle.php?map_file=&funcao=pegaTodosTemas&g_sid=&idioma=pt", "foo", r); | 314 | cpJSON.call("../classesphp/mapa_controle.php?map_file=&funcao=pegaTodosTemas&g_sid=&idioma=pt", "foo", r); |
| 315 | +} | ||
| 316 | +function filtraGrupo(obj,idPainel){ | ||
| 317 | + $("#" + idPainel + " .grupo").each( | ||
| 318 | + function(i,el){ | ||
| 319 | + if(obj.value == ""){ | ||
| 320 | + $(el).show(); | ||
| 321 | + } | ||
| 322 | + else { | ||
| 323 | + $(el).hide(); | ||
| 324 | + } | ||
| 325 | + } | ||
| 326 | + ); | ||
| 327 | + if(obj.value != ""){ | ||
| 328 | + $("#"+obj.value).show(); | ||
| 329 | + } | ||
| 298 | } | 330 | } |
| 299 | \ No newline at end of file | 331 | \ No newline at end of file |
ogc/index.php
| @@ -93,31 +93,41 @@ include "../init/head.php"; | @@ -93,31 +93,41 @@ include "../init/head.php"; | ||
| 93 | </div> | 93 | </div> |
| 94 | <div class="panel-body"> | 94 | <div class="panel-body"> |
| 95 | <div id="corpoMenu{{idmenu}}" class="panel-collapse collapse" role="tabpanel" aria-multiselectable="true"> | 95 | <div id="corpoMenu{{idmenu}}" class="panel-collapse collapse" role="tabpanel" aria-multiselectable="true"> |
| 96 | - {{{camadas}}} | ||
| 97 | - <div id="gruposMenu{{idmenu}}"> | ||
| 98 | - <i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i><span class="sr-only">Aguarde</span> | ||
| 99 | - </div> | 96 | + {{{camadas}}} |
| 97 | + <!-- aqui entra o filtro --> | ||
| 98 | + <div class="form-group"> | ||
| 99 | + <label class="control-label">{{{filtro}}}</label> | ||
| 100 | + <select onchange="filtraGrupo(this,'menu{{idmenu}}')" data-grupoFiltro="{{idmenu}}" class="form-control input-lg"> | ||
| 101 | + </select> | ||
| 102 | + </div> | ||
| 103 | + | ||
| 104 | + <div id="gruposMenu{{idmenu}}"> | ||
| 105 | + <i class="fa fa-spinner fa-pulse fa-2x fa-fw"></i><span class="sr-only">Aguarde</span> | ||
| 106 | + </div> | ||
| 100 | </div> | 107 | </div> |
| 101 | </div> | 108 | </div> |
| 102 | </div> | 109 | </div> |
| 103 | </div> | 110 | </div> |
| 104 | </script> | 111 | </script> |
| 112 | +<script id="templateFiltroGrupo" type="x-tmpl-mustache"> | ||
| 113 | +<option value="painelGrupo{{id_n1}}">{{{nome}}}</option> | ||
| 114 | +</script> | ||
| 105 | <script id="templateGrupos" type="x-tmpl-mustache"> | 115 | <script id="templateGrupos" type="x-tmpl-mustache"> |
| 106 | -<div class="list-group"> | ||
| 107 | -<div class="panel panel-default"> | ||
| 108 | - <div class="panel-heading" style="background-color: #b2dfdb;" role="tab" id="tituloGrupo{{id_n1}}"> | ||
| 109 | - <h4 class="panel-title"> | ||
| 110 | - <a class="collapsed" role="button" data-toggle="collapse" data-parent="#corpoMenu{{idmenu}}" href="#corpoGrupo{{id_n1}}" aria-expanded="false" aria-controls="corpoGrupo{{id_n1}}"> {{{nome}}} </a> | ||
| 111 | - </h4> | ||
| 112 | - </div> | ||
| 113 | - <div class="panel-body"> | ||
| 114 | - <div id="corpoGrupo{{id_n1}}" class="panel-collapse collapse" role="tabpanel" aria-multiselectable="true"> | ||
| 115 | - {{{camadas}}} | ||
| 116 | - <div id="subGruposGrupo{{id_n1}}">{{grupos}}</div> | 116 | +<div class="list-group grupo" id="painelGrupo{{id_n1}}"> |
| 117 | + <div class="panel panel-default"> | ||
| 118 | + <div class="panel-heading" style="background-color: #b2dfdb;" role="tab" > | ||
| 119 | + <h4 class="panel-title"> | ||
| 120 | + <a class="collapsed" role="button" data-toggle="collapse" data-parent="#corpoMenu{{idmenu}}" href="#corpoGrupo{{id_n1}}" aria-expanded="false" aria-controls="corpoGrupo{{id_n1}}"> {{{nome}}} </a> | ||
| 121 | + </h4> | ||
| 122 | + </div> | ||
| 123 | + <div class="panel-body"> | ||
| 124 | + <div id="corpoGrupo{{id_n1}}" class="panel-collapse collapse" role="tabpanel" aria-multiselectable="true"> | ||
| 125 | + {{{camadas}}} | ||
| 126 | + <div id="subGruposGrupo{{id_n1}}">{{grupos}}</div> | ||
| 127 | + </div> | ||
| 117 | </div> | 128 | </div> |
| 118 | </div> | 129 | </div> |
| 119 | </div> | 130 | </div> |
| 120 | -</div> | ||
| 121 | </script> | 131 | </script> |
| 122 | <script id="templateSubGrupos" type="x-tmpl-mustache"> | 132 | <script id="templateSubGrupos" type="x-tmpl-mustache"> |
| 123 | <div class="list-group"> | 133 | <div class="list-group"> |