Commit be85629f5be416d07733cb0310ac7d9e70874ee3
1 parent
cb81fb7d
Exists in
master
and in
7 other branches
Inclusão de opções de validação da listagem de mapfiles no editor de mapfiles
Showing
5 changed files
with
129 additions
and
28 deletions
Show diff stats
admin1/catalogo/mapfile/exec.php
| @@ -88,7 +88,7 @@ switch ($funcao) { | @@ -88,7 +88,7 @@ switch ($funcao) { | ||
| 88 | exit (); | 88 | exit (); |
| 89 | break; | 89 | break; |
| 90 | case "LISTA" : | 90 | case "LISTA" : |
| 91 | - $retorna = lista ( $dbh, $_GET ["filtro"], $_GET ["palavra"] ); | 91 | + $retorna = lista ( $dbh, $_POST ["filtro"], $_POST ["palavra"], $_POST ["validar"] ); |
| 92 | $dbhw = null; | 92 | $dbhw = null; |
| 93 | $dbh = null; | 93 | $dbh = null; |
| 94 | if ($retorna === false) { | 94 | if ($retorna === false) { |
| @@ -321,12 +321,11 @@ function adicionar($locaplic, $link_tema, $codigo, $acessopublico, $metaestat, $ | @@ -321,12 +321,11 @@ function adicionar($locaplic, $link_tema, $codigo, $acessopublico, $metaestat, $ | ||
| 321 | return true; | 321 | return true; |
| 322 | } | 322 | } |
| 323 | } | 323 | } |
| 324 | -function lista($dbh, $filtro = "", $palavra = "") { | ||
| 325 | - global $locaplic, $esquemaadmin; | 324 | +function lista($dbh, $filtro = "", $palavra = "", $validar = "") { |
| 325 | + global $convUTF, $locaplic, $esquemaadmin; | ||
| 326 | $arquivos = array (); | 326 | $arquivos = array (); |
| 327 | if (is_dir ( $locaplic . "/temas" )) { | 327 | if (is_dir ( $locaplic . "/temas" )) { |
| 328 | if ($dh = opendir ( $locaplic . "/temas" )) { | 328 | if ($dh = opendir ( $locaplic . "/temas" )) { |
| 329 | - $extensao = ""; | ||
| 330 | while ( ($file = readdir ( $dh )) !== false ) { | 329 | while ( ($file = readdir ( $dh )) !== false ) { |
| 331 | if (! stristr ( $file, '.map' ) === FALSE) { | 330 | if (! stristr ( $file, '.map' ) === FALSE) { |
| 332 | $file = str_replace ( ".map", "", $file ); | 331 | $file = str_replace ( ".map", "", $file ); |
| @@ -356,12 +355,16 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -356,12 +355,16 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 356 | 355 | ||
| 357 | $nomes = array (); | 356 | $nomes = array (); |
| 358 | $ids = array (); | 357 | $ids = array (); |
| 358 | + $dadosBanco = array (); | ||
| 359 | foreach ( $regs as $reg ) { | 359 | foreach ( $regs as $reg ) { |
| 360 | + if ($convUTF != true) { | ||
| 361 | + $reg ["nome_tema"] = utf8_decode ( $reg ["nome_tema"] ); | ||
| 362 | + } | ||
| 360 | $nomes [$reg ["codigo_tema"]] = $reg ["nome_tema"]; | 363 | $nomes [$reg ["codigo_tema"]] = $reg ["nome_tema"]; |
| 361 | $ids [$reg ["codigo_tema"]] = $reg ["id_tema"]; | 364 | $ids [$reg ["codigo_tema"]] = $reg ["id_tema"]; |
| 365 | + $dadosBanco [$reg ["id_tema"]] = $reg; | ||
| 362 | } | 366 | } |
| 363 | $lista = array (); | 367 | $lista = array (); |
| 364 | - | ||
| 365 | foreach ( $arquivos as $arq ) { | 368 | foreach ( $arquivos as $arq ) { |
| 366 | $arq = $arq ["nome"]; | 369 | $arq = $arq ["nome"]; |
| 367 | $nT = explode ( ".", $arq ); | 370 | $nT = explode ( ".", $arq ); |
| @@ -370,15 +373,77 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -370,15 +373,77 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 370 | $n = ""; | 373 | $n = ""; |
| 371 | } | 374 | } |
| 372 | $id = $ids [$nT [0]]; | 375 | $id = $ids [$nT [0]]; |
| 373 | - if (! $id) { | 376 | + //o mapfile nao esta registrado no banco |
| 377 | + if (! $id && empty($validar)) { | ||
| 374 | $id = ""; | 378 | $id = ""; |
| 379 | + } else { | ||
| 380 | + //aplica as validacoes. Se nao passar na validacao $id ficara vazio, para nao mostrar no resultado final | ||
| 381 | + switch ($validar) { | ||
| 382 | + case 1 : | ||
| 383 | + if($dadosBanco[$id]["link_tema"] !== ""){ | ||
| 384 | + $id = ""; | ||
| 385 | + } | ||
| 386 | + break; | ||
| 387 | + case 2 : | ||
| 388 | + if($dadosBanco[$id]["nome_tema"] == ""){ | ||
| 389 | + $id = "-"; | ||
| 390 | + } else { | ||
| 391 | + $id = ""; | ||
| 392 | + } | ||
| 393 | + break; | ||
| 394 | + case 3 : | ||
| 395 | + if($dadosBanco[$id]["nome_tema"] == ""){ | ||
| 396 | + $id = ""; | ||
| 397 | + } | ||
| 398 | + break; | ||
| 399 | + case 4 : | ||
| 400 | + if(strtolower($dadosBanco[$id]["download_tema"]) !== "sim"){ | ||
| 401 | + $id = ""; | ||
| 402 | + } | ||
| 403 | + break; | ||
| 404 | + case 5 : | ||
| 405 | + if(strtolower($dadosBanco[$id]["download_tema"]) !== "nao"){ | ||
| 406 | + $id = ""; | ||
| 407 | + } | ||
| 408 | + break; | ||
| 409 | + case 6 : | ||
| 410 | + if(strtolower($dadosBanco[$id]["ogc_tema"]) !== "sim"){ | ||
| 411 | + $id = ""; | ||
| 412 | + } | ||
| 413 | + break; | ||
| 414 | + case 7 : | ||
| 415 | + if(strtolower($dadosBanco[$id]["ogc_tema"]) !== "nao"){ | ||
| 416 | + $id = ""; | ||
| 417 | + } | ||
| 418 | + break; | ||
| 419 | + case 8 : | ||
| 420 | + if(strtolower($dadosBanco[$id]["kml_tema"]) !== "sim"){ | ||
| 421 | + $id = ""; | ||
| 422 | + } | ||
| 423 | + break; | ||
| 424 | + case 9 : | ||
| 425 | + if(strtolower($dadosBanco[$id]["kml_tema"]) !== "nao"){ | ||
| 426 | + $id = ""; | ||
| 427 | + } | ||
| 428 | + break; | ||
| 429 | + case 10 : | ||
| 430 | + if(strtolower($dadosBanco[$id]["kmz_tema"]) !== "sim"){ | ||
| 431 | + $id = ""; | ||
| 432 | + } | ||
| 433 | + break; | ||
| 434 | + case 11 : | ||
| 435 | + if(strtolower($dadosBanco[$id]["kmz_tema"]) !== "nao"){ | ||
| 436 | + $id = ""; | ||
| 437 | + } | ||
| 438 | + break; | ||
| 439 | + } | ||
| 375 | } | 440 | } |
| 376 | $imagem = ""; | 441 | $imagem = ""; |
| 377 | if (file_exists ( $locaplic . "/temas/miniaturas/" . $arq . ".map.mini.png" )) { | 442 | if (file_exists ( $locaplic . "/temas/miniaturas/" . $arq . ".map.mini.png" )) { |
| 378 | $imagem = $arq . ".map.mini.png"; | 443 | $imagem = $arq . ".map.mini.png"; |
| 379 | } | 444 | } |
| 380 | 445 | ||
| 381 | - if ($_POST ["checaNomes"] == "true") { | 446 | + if ($validar == 12) { |
| 382 | if (file_exists ( $locaplic . "/temas/" . $arq . ".map" )) { | 447 | if (file_exists ( $locaplic . "/temas/" . $arq . ".map" )) { |
| 383 | $handle = fopen ( $locaplic . "/temas/" . $arq . ".map", "r" ); | 448 | $handle = fopen ( $locaplic . "/temas/" . $arq . ".map", "r" ); |
| 384 | while ( ! feof ( $handle ) ) { | 449 | while ( ! feof ( $handle ) ) { |
| @@ -394,8 +459,11 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -394,8 +459,11 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 394 | "'", | 459 | "'", |
| 395 | '"' | 460 | '"' |
| 396 | ), "", $ntema ) ); | 461 | ), "", $ntema ) ); |
| 397 | - if ($n != $ntema && $n != utf8_decode ( $ntema ) && $n != "") { | ||
| 398 | - $n .= "<span style=color:red;margin-left:5px >" . utf8_decode ( $ntema ) . "</span>"; | 462 | + $temp = $n; |
| 463 | + if ($n != $ntema && utf8_decode($temp) != $ntema && $n != "") { | ||
| 464 | + $n .= "<span style=color:red;margin-left:5px >" . utf8_encode($ntema) . "</span>"; | ||
| 465 | + } else { | ||
| 466 | + $n .= "<span style=color:lightslategray;margin-left:5px >" . utf8_encode($ntema) . "</span>"; | ||
| 399 | } | 467 | } |
| 400 | break; | 468 | break; |
| 401 | } | 469 | } |
| @@ -403,7 +471,7 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -403,7 +471,7 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 403 | fclose ( $handle ); | 471 | fclose ( $handle ); |
| 404 | } | 472 | } |
| 405 | } | 473 | } |
| 406 | - if ($_POST ["checaNames"] == "true") { | 474 | + if ($validar == 13) { |
| 407 | if (file_exists ( $locaplic . "/temas/" . $arq . ".map" )) { | 475 | if (file_exists ( $locaplic . "/temas/" . $arq . ".map" )) { |
| 408 | $handle = fopen ( $locaplic . "/temas/" . $arq . ".map", "r" ); | 476 | $handle = fopen ( $locaplic . "/temas/" . $arq . ".map", "r" ); |
| 409 | // deve buscar dentro de LAYER pois pode haver simbolos antes | 477 | // deve buscar dentro de LAYER pois pode haver simbolos antes |
| @@ -420,7 +488,7 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -420,7 +488,7 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 420 | '"' | 488 | '"' |
| 421 | ), "", $ntema ) ); | 489 | ), "", $ntema ) ); |
| 422 | if ($arq != $ntema) { | 490 | if ($arq != $ntema) { |
| 423 | - $n .= "<img style='margin-left:3px;' src='../imagens/face-sad.png' title='Nome do LAYER diferente do nome do arquivo' />"; | 491 | + $n .= "<span style=color:red;margin-left:5px >" . $ntema . "</span>"; |
| 424 | } | 492 | } |
| 425 | break; | 493 | break; |
| 426 | } | 494 | } |
| @@ -428,22 +496,14 @@ function lista($dbh, $filtro = "", $palavra = "") { | @@ -428,22 +496,14 @@ function lista($dbh, $filtro = "", $palavra = "") { | ||
| 428 | fclose ( $handle ); | 496 | fclose ( $handle ); |
| 429 | } | 497 | } |
| 430 | } | 498 | } |
| 431 | - if (isset ( $filtro ) && $filtro != "" && $n != "") { | ||
| 432 | - $lista [] = array ( | ||
| 433 | - "id_tema" => $id, | ||
| 434 | - "nome" => $n, | ||
| 435 | - "codigo" => $arq, | ||
| 436 | - "imagem" => $imagem, | ||
| 437 | - "extensao" => $extensao | ||
| 438 | - ); | ||
| 439 | - } | ||
| 440 | - if (! isset ( $filtro ) || $filtro == "") { | 499 | + //se id for vazio, nao consta no banco, por isso, se validar for definido, nao pode ser aplicado |
| 500 | + if(empty($validar) || (!empty($validar) && $id != "")){ | ||
| 441 | $lista [] = array ( | 501 | $lista [] = array ( |
| 442 | "id_tema" => $id, | 502 | "id_tema" => $id, |
| 443 | "nome" => $n, | 503 | "nome" => $n, |
| 444 | "codigo" => $arq, | 504 | "codigo" => $arq, |
| 445 | "imagem" => $imagem, | 505 | "imagem" => $imagem, |
| 446 | - "extensao" => $extensao | 506 | + "extensao" => "" |
| 447 | ); | 507 | ); |
| 448 | } | 508 | } |
| 449 | } | 509 | } |
admin1/catalogo/mapfile/index.js
| @@ -36,11 +36,14 @@ Function: lista | @@ -36,11 +36,14 @@ Function: lista | ||
| 36 | 36 | ||
| 37 | Obtém a lista | 37 | Obtém a lista |
| 38 | */ | 38 | */ |
| 39 | - lista: function(palavra){ | 39 | + lista: function(palavra,validar){ |
| 40 | + if(!validar){ | ||
| 41 | + validar = ""; | ||
| 42 | + } | ||
| 40 | i3GEOadmin.core.iconeAguarde(i3GEOadmin.mapfile.ondeLista); | 43 | i3GEOadmin.core.iconeAguarde(i3GEOadmin.mapfile.ondeLista); |
| 41 | $.post( | 44 | $.post( |
| 42 | "exec.php?funcao=lista", | 45 | "exec.php?funcao=lista", |
| 43 | - "&palavra=" + palavra | 46 | + "&palavra=" + palavra + "&validar=" + validar |
| 44 | ) | 47 | ) |
| 45 | .done( | 48 | .done( |
| 46 | function(data, status){ | 49 | function(data, status){ |
| @@ -62,6 +65,7 @@ Obt&eacute;m a lista | @@ -62,6 +65,7 @@ Obt&eacute;m a lista | ||
| 62 | ); | 65 | ); |
| 63 | i3GEOadmin.mapfile.ondeLista.html(html); | 66 | i3GEOadmin.mapfile.ondeLista.html(html); |
| 64 | i3GEOadmin.mapfile.montaFavoritos(); | 67 | i3GEOadmin.mapfile.montaFavoritos(); |
| 68 | + $("#totalMapfiles").html(json.length); | ||
| 65 | //filtro | 69 | //filtro |
| 66 | html = Mustache.to_html( | 70 | html = Mustache.to_html( |
| 67 | "{{#data}}" + $("#templateFiltro").html() + "{{/data}}", | 71 | "{{#data}}" + $("#templateFiltro").html() + "{{/data}}", |
| @@ -239,7 +243,9 @@ Obt&eacute;m a lista | @@ -239,7 +243,9 @@ Obt&eacute;m a lista | ||
| 239 | ) | 243 | ) |
| 240 | .done( | 244 | .done( |
| 241 | function(data, status){ | 245 | function(data, status){ |
| 246 | + var json = jQuery.parseJSON(data); | ||
| 242 | i3GEOadmin.core.modalAguarde(false); | 247 | i3GEOadmin.core.modalAguarde(false); |
| 248 | + i3GEOadmin.mapfile.favoritosArray.push(json.codigo); | ||
| 243 | i3GEOadmin.mapfile.init($("#corpo"),""); | 249 | i3GEOadmin.mapfile.init($("#corpo"),""); |
| 244 | } | 250 | } |
| 245 | ) | 251 | ) |
admin1/catalogo/mapfile/index.php
| @@ -25,10 +25,33 @@ include "../../head.php"; | @@ -25,10 +25,33 @@ include "../../head.php"; | ||
| 25 | <h2><small>{{{txtTitulo}}}</small></h2> | 25 | <h2><small>{{{txtTitulo}}}</small></h2> |
| 26 | <blockquote>{{{txtDesc}}}</blockquote> | 26 | <blockquote>{{{txtDesc}}}</blockquote> |
| 27 | <!-- aqui entra o filtro --> | 27 | <!-- aqui entra o filtro --> |
| 28 | - <div class="form-group"> | ||
| 29 | - <label class="control-label">{{{filtro}}}</label> | ||
| 30 | - <select title="{{{filtro}}}" onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg"> | ||
| 31 | - </select> | 28 | + <div class="col-md-6"> |
| 29 | + <div class="form-group"> | ||
| 30 | + <label class="control-label">{{{filtroTitulo}}}</label> | ||
| 31 | + <select title="{{{filtro}}}" onchange="i3GEOadmin.core.filtra(this)" id="filtro" class="form-control input-lg"> | ||
| 32 | + </select> | ||
| 33 | + </div> | ||
| 34 | + </div> | ||
| 35 | + <div class="col-md-6"> | ||
| 36 | + <div class="form-group"> | ||
| 37 | + <label class="control-label">{{{validar}}}</label> | ||
| 38 | + <select title="{{{validar}}}" onchange="i3GEOadmin.mapfile.lista('',this.value);" id="" class="form-control input-lg"> | ||
| 39 | + <option value='' ></option> | ||
| 40 | + <option value=1 >Sem fonte</option> | ||
| 41 | + <option value=12 >Títulos diferentes no mapfile e no banco de dados</option> | ||
| 42 | + <option value=13 >LAYER com NAME diferente do nome do arquivo mapfile</option> | ||
| 43 | + <option value=2 >Nome não definido no banco de dados</option> | ||
| 44 | + <option value=3 >Nome definido no banco de dados</option> | ||
| 45 | + <option value=4 >Permite download</option> | ||
| 46 | + <option value=5 >Não permite download</option> | ||
| 47 | + <option value=6 >Permite WMS</option> | ||
| 48 | + <option value=7 >Não permite WMS</option> | ||
| 49 | + <option value=8 >Permite KML</option> | ||
| 50 | + <option value=9 >Não permite KML</option> | ||
| 51 | + <option value=10 >Permite KMZ</option> | ||
| 52 | + <option value=11 >Não permite KMZ</option> | ||
| 53 | + </select> | ||
| 54 | + </div> | ||
| 32 | </div> | 55 | </div> |
| 33 | <div class="row pull-right"> | 56 | <div class="row pull-right"> |
| 34 | <a onclick="i3GEOadmin.mapfile.adicionaDialogo();" href="javascript:void(0)" class="btn btn-primary" style="color:#008579;" role="button">{{{adicionar}}}</a> | 57 | <a onclick="i3GEOadmin.mapfile.adicionaDialogo();" href="javascript:void(0)" class="btn btn-primary" style="color:#008579;" role="button">{{{adicionar}}}</a> |
| @@ -45,6 +68,8 @@ include "../../head.php"; | @@ -45,6 +68,8 @@ include "../../head.php"; | ||
| 45 | </div> | 68 | </div> |
| 46 | </div> | 69 | </div> |
| 47 | <div class="well hidden"> | 70 | <div class="well hidden"> |
| 71 | + <div id="totalMapfiles" class=badge >74</div> | ||
| 72 | + <div> </div> | ||
| 48 | <div class="panel panel-default" id="favoritos"> | 73 | <div class="panel panel-default" id="favoritos"> |
| 49 | <div class="panel-heading" role="tab"> | 74 | <div class="panel-heading" role="tab"> |
| 50 | <h4 class="panel-title"> | 75 | <h4 class="panel-title"> |
admin1/dicionario/editormapfile.js
| @@ -1519,5 +1519,15 @@ i3GEOadmin.mapfile.dicionario = { | @@ -1519,5 +1519,15 @@ i3GEOadmin.mapfile.dicionario = { | ||
| 1519 | pt : "Faz uma cópia do mapfile atual com um novo nome e novo título", | 1519 | pt : "Faz uma cópia do mapfile atual com um novo nome e novo título", |
| 1520 | en : "", | 1520 | en : "", |
| 1521 | es : "" | 1521 | es : "" |
| 1522 | + }], | ||
| 1523 | + 'filtroTitulo' : [{ | ||
| 1524 | + pt : "Filtro por título", | ||
| 1525 | + en : "", | ||
| 1526 | + es : "" | ||
| 1527 | + }], | ||
| 1528 | + 'validar' : [{ | ||
| 1529 | + pt : "Validar", | ||
| 1530 | + en : "", | ||
| 1531 | + es : "" | ||
| 1522 | }] | 1532 | }] |
| 1523 | }; | 1533 | }; |