From b639b6c491f13101b91751de932c6c4ccf80d377 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Tue, 30 Aug 2016 00:33:31 -0300 Subject: [PATCH] Correção na ferramenta filtro e colorramp. Inclusão de variável de configuração em ms_configura.php que permite bloquear ferramentas --- admin/admin.db | Bin 340992 -> 0 bytes classesphp/classe_mapa.php | 3 ++- ferramentas/animagif/exec.php | 43 +++++++++++++++++++++++-------------------- ferramentas/animagif/index.js | 2 +- ferramentas/animagif/manutencao.php | 6 +++--- ferramentas/blacklist.php | 0 ferramentas/colourramp/index.php | 11 +++++++---- ferramentas/filtro/exec.php | 7 +++++-- ferramentas/filtro/index.js | 4 ++-- ferramentas/graficointerativo1/index.js | 2 +- ferramentas/identifica/index.js | 6 +++--- ferramentas/salvamapa/index.js | 1 - ferramentas/selecao/index.js | 10 +++++----- temas/_llocali.map | 17 ++++++++--------- temas/_llocalianimagif.map | 2 +- temas/a.map | 89 ----------------------------------------------------------------------------------------- 16 files changed, 61 insertions(+), 142 deletions(-) mode change 100644 => 100755 ferramentas/blacklist.php mode change 100755 => 100644 temas/_llocali.map mode change 100755 => 100644 temas/_llocalianimagif.map delete mode 100755 temas/a.map diff --git a/admin/admin.db b/admin/admin.db index b7a2dab..a49a520 100755 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/classesphp/classe_mapa.php b/classesphp/classe_mapa.php index a3cd02f..f84bc85 100755 --- a/classesphp/classe_mapa.php +++ b/classesphp/classe_mapa.php @@ -459,7 +459,8 @@ class Mapa if (!mb_detect_encoding($f,"UTF-8",true)){ $f = mb_convert_encoding($f,"UTF-8","ISO-8859-1"); } - $ferramentas["animagif"] = json_decode($f); + $ferramentas["animagif"] = json_decode(str_replace("'",'"',$f)); + //var_dump($ferramentas["animagif"]);exit; } $temas[] = array( $oLayer->name, diff --git a/ferramentas/animagif/exec.php b/ferramentas/animagif/exec.php index c73b3bd..2ccd2c5 100755 --- a/ferramentas/animagif/exec.php +++ b/ferramentas/animagif/exec.php @@ -37,11 +37,9 @@ $_GET = array_merge($_GET,$_POST); // if(empty($_GET["colunat"])){ $nmapa = ms_newMapObj($locaplic."/temas/".$_GET["tema"].".map"); - $layer = $nmapa->getlayerbyname($_GET["tema"]); - $animagif = $layer->getmetadata("animagif"); - $animagif = json_decode($animagif,true); + $animagif = json_decode(str_replace("'",'"',$animagif),true); $_GET["colunat"] = $animagif["colunat"]; $_GET["tempo"] = $animagif["tempo"]; $_GET["w"] = $animagif["w"]; @@ -110,6 +108,10 @@ if(!in_array($operador,array("=","<",">"))){ $nulos = explode(",",$nulos); $arqtemp = $dir_tmp."/".$nometemp; if(file_exists($arqtemp.".gif")){ + if(getimagesize($arqtemp.".gif") == false){ + echo ""; + exit; + } $gifBinary = file_get_contents($arqtemp.".gif"); //retorna o gif para o navegador header('Content-type: image/gif'); @@ -191,9 +193,6 @@ if($copyright != ""){ $label->updatefromstring("LABEL POSITION lr END"); $label->updatefromstring('LABEL STYLE GEOMTRANSFORM "labelpoly" COLOR 255 255 255 END END'); } - -// -$mapa->save($arqtemp.".map"); //adiciona ao mapa base as camadas do mapfile indicado em $tema $nmapa = ms_newMapObj($locaplic."/temas/".$tema.".map"); $numlayers = $nmapa->numlayers; @@ -219,8 +218,6 @@ for ($i=0;$i < $numlayers;$i++){ cloneInlineSymbol($layern,$nmapa,$mapa); ms_newLayerObj($mapa, $layern); } - -$mapa->save($arqtemp.".map"); //aplica a extensao geografica $layer = $mapa->getlayerbyname($tema); @@ -272,10 +269,8 @@ $o->set("imagemode",MS_IMAGEMODE_RGBA); if($transparente == "sim"){ $o->set("transparent",MS_TRUE); } - +restauraConObj($mapa,$postgis_mapa); $mapa->save($arqtemp.".map"); -$mapa = ms_newMapObj($arqtemp.".map"); -restauraCon($arqtemp.".map",$postgis_mapa); /* if(validaAcessoTemas($arqtemp.".map",false) == true){ @@ -295,8 +290,7 @@ foreach($lista as $l){ } } -//$listaunica = array("201537"); - +$mapa = ms_newMapObj($arqtemp.".map"); //cria as imagens para cada periodo $layer = $mapa->getlayerbyname($tema); @@ -308,6 +302,11 @@ if($copyright != ""){ } $mapa->moveLayerdown(0); +$mapa->save($arqtemp.".map"); +substituiCon($mapa,$postgis_mapa); +$mapa = ms_newMapObj($arqtemp.".map"); +$copyright = $mapa->getlayerbyname("copyright"); + if($copyright != ""){ $c = $copyright->getclass(0); if($vi >= 60200){ @@ -323,19 +322,23 @@ if($copyright != ""){ $imagens = array(); $duracao = array(); $objImagem = ""; + foreach($listaunica as $d){ + + $layer = $mapa->getlayerbyname($tema); if(strtoupper($colunat) == $colunat){ $filtro = "(('[$colunat]' $operador '$d'))"; - if($tipocolunat == "numerico"){ + if($tipocolunat == "numerico" || $tipocolunat == "numero"){ $filtro = "(([$colunat] $operador $d))"; } } else{ $filtro = "$colunat $operador '$d'"; - if($tipocolunat == "numerico"){ + if($tipocolunat == "numerico" || $tipocolunat == "numero"){ $filtro = "$colunat $operador $d"; } } + $layer->setfilter($filtro); $nomec = $arqtemp.$d.".png"; @@ -348,16 +351,13 @@ foreach($listaunica as $d){ $classe->title = $d; } //$mapa->save($arqtemp."teste.map"); + $mapa->save($arqtemp.".map"); if(!file_exists($nomec)){ if($objImagem == ""){ - //$mapa->save($arqtemp.".map"); - //echo $arqtemp.".map"; $objImagem = $mapa->draw(); $objImagem->saveImage($nomec); } else{ - //$mapa->save($arqtemp.".map"); - //echo $arqtemp.".map"; $i = $mapa->draw(); $objImagem->pasteImage($i,-1); $objImagem->saveImage($nomec); @@ -367,7 +367,10 @@ foreach($listaunica as $d){ $duracao[] = $tempo; //$mapa->save($arqtemp.".map");exit; } - +restauraConObj($mapa,$postgis_mapa); +$mapa->save($arqtemp.".map"); +unlink($arqtemp.".map"); +$mapa = null; //junta as imagens no gif include("../../pacotes/gifcreator/GifCreator.php"); diff --git a/ferramentas/animagif/index.js b/ferramentas/animagif/index.js index 1fe7b0a..1f785ce 100755 --- a/ferramentas/animagif/index.js +++ b/ferramentas/animagif/index.js @@ -313,7 +313,7 @@ i3GEOF.animagif = p = i3GEO.configura.locaplic + "/ferramentas/animagif/manutencao.php"; par = "&g_sid=" + i3GEO.configura.sid + "&tema=" + i3GEOF.animagif.tema - + "&animagif=" + i3GEO.util.base64encode(j) + + "&animagif=" + j + "&funcao=inclui"; retorno = diff --git a/ferramentas/animagif/manutencao.php b/ferramentas/animagif/manutencao.php index 1c77be1..624efa7 100755 --- a/ferramentas/animagif/manutencao.php +++ b/ferramentas/animagif/manutencao.php @@ -11,7 +11,7 @@ if(in_array(strtoupper($funcao),$funcoesEdicao)){ retornaJSON("Vc nao pode realizar essa operacao. Tente fazer login novamente.");exit; } } -$tema = $_GET["tema"]; +$tema = $_POST["tema"]; error_reporting(0); // //faz a busca da função que deve ser executada @@ -44,7 +44,7 @@ switch (strtoupper($funcao)) $mapa = ms_newMapObj($map_file); $l = $mapa->getlayerbyname($tema); if($l != ""){ - //$l->setmetadata("animagif",base64_decode($animagif)); + $l->setmetadata("animagif",$animagif); $mapa->save($map_file); } $arq = $locaplic."/temas/".$tema.".map"; @@ -52,7 +52,7 @@ switch (strtoupper($funcao)) $mapa = ms_newMapObj($arq); $l = $mapa->getlayerbyname($tema); if($l != ""){ - //$l->setmetadata("animagif",base64_decode($animagif)); + $l->setmetadata("animagif",str_replace("\\","'",$_POST["animagif"])); $mapa->save($arq); removeCabecalho($arq); } diff --git a/ferramentas/blacklist.php b/ferramentas/blacklist.php old mode 100644 new mode 100755 index b1cc27c..b1cc27c --- a/ferramentas/blacklist.php +++ b/ferramentas/blacklist.php diff --git a/ferramentas/colourramp/index.php b/ferramentas/colourramp/index.php index 568c0e6..f9c1f6e 100755 --- a/ferramentas/colourramp/index.php +++ b/ferramentas/colourramp/index.php @@ -4,11 +4,14 @@ include_once(dirname(__FILE__)."/../../classesphp/class.palette.php"); $m = new palette(); $lista = implode(",",($m->listaColourRamps(dirname(__FILE__)."/../.."))); - if(!isset($ncores)) - {$ncores = 10;} + if(!isset($_GET["ncores"])){ + $_GET["ncores"] = 10; + } if(empty($_GET["locaplic"])){ - $locaplic = "../.."; + $_GET["locaplic"] = "../.."; } + + $locaplic = $_GET["locaplic"]; ?> @@ -130,7 +133,7 @@ new YAHOO.widget.Button( {onclick:{fn: function(){aplicarCores();}}} ); $i("voltar-button").style.width = "250px" -var lista = ""; +var lista = ""; lista = lista.split(","); var n = lista.length; var ins = ""; diff --git a/ferramentas/filtro/exec.php b/ferramentas/filtro/exec.php index d002b41..bc6742b 100755 --- a/ferramentas/filtro/exec.php +++ b/ferramentas/filtro/exec.php @@ -30,8 +30,11 @@ Inclui um filtro no tema. include_once(dirname(__FILE__)."/../../classesphp/classe_temas.php"); //copiaSeguranca($map_file); $m = new Temas($map_file,$tema); - if(!isset($_GET["testa"])){$_GET["testa"]="";} - {$retorno = $m->insereFiltro($_GET["filtro"],$_GET["testa"],"sim");} + if(!isset($_GET["testa"])){ + $_GET["testa"]=""; + } + $m->insereFiltro(""); + $retorno = $m->insereFiltro($_GET["filtro"],$_GET["testa"],"sim"); if(strtolower($testa) != "sim"){ $m->salva(); $_SESSION["contadorsalva"]++; diff --git a/ferramentas/filtro/index.js b/ferramentas/filtro/index.js index 644e6e0..b7ffdb1 100755 --- a/ferramentas/filtro/index.js +++ b/ferramentas/filtro/index.js @@ -397,7 +397,7 @@ i3GEOF.filtro = { $i(idRetorno).value = i3GEOF.filtro.formataMapserver(); } else{ - p = i3GEO.configura.locaplic+"/ferramentas/filtro/exec.php?base64=sim&g_sid="+i3GEO.configura.sid+"&funcao=inserefiltro&filtro="+i3GEO.util.base64encode(filtro); + p = i3GEO.configura.locaplic+"/ferramentas/filtro/exec.php?base64=nao&g_sid="+i3GEO.configura.sid+"&funcao=inserefiltro&filtro="+filtro; cp = new cpaint(); cp.set_response_type("JSON"); cp.set_transfer_mode('POST'); @@ -415,7 +415,7 @@ i3GEOF.filtro = { i3GEOF.filtro.aguarde.visibility = "hidden"; }; } - cp.call(p,"insereFiltro",temp,"tema="+i3GEOF.filtro.tema,"testa="+testa); + cp.call(p,"insereFiltro",temp,"tema="+i3GEOF.filtro.tema+"&testa="+testa); } } catch(e){ diff --git a/ferramentas/graficointerativo1/index.js b/ferramentas/graficointerativo1/index.js index 2cdb867..5f02160 100755 --- a/ferramentas/graficointerativo1/index.js +++ b/ferramentas/graficointerativo1/index.js @@ -1874,7 +1874,7 @@ i3GEOF.graficointerativo1 = temp = function(retorno){ i3GEO.Interface.atualizaTema(retorno,tema); }; - cp.call(p,"insereFiltro",temp,"tema="+tema,"filtro="); + cp.call(p,"insereFiltro",temp,"tema="+tema+"&filtro="); } } }; diff --git a/ferramentas/identifica/index.js b/ferramentas/identifica/index.js index a11a809..5ff7438 100755 --- a/ferramentas/identifica/index.js +++ b/ferramentas/identifica/index.js @@ -1168,11 +1168,11 @@ i3GEOF.identifica = i3GEOF.identifica.propJanelas[idjanela].aguarde.visibility = "hidden"; i3GEO.Interface.atualizaTema(retorno, tema); }, p = - i3GEO.configura.locaplic + "/ferramentas/filtro/exec.php?base64=sim&g_sid=" + i3GEO.configura.sid + "&funcao=inserefiltro", cp = + i3GEO.configura.locaplic + "/ferramentas/filtro/exec.php?base64=nao&g_sid=" + i3GEO.configura.sid + "&funcao=inserefiltro", cp = new cpaint(); cp.set_response_type("JSON"); cp.set_transfer_mode('POST'); - cp.call(p, "insereFiltro", temp, "tema=" + tema, "filtro=" + i3GEO.util.base64encode(filtro)); + cp.call(p, "insereFiltro", temp, "tema=" + tema + "&filtro=" + filtro); }, removeFiltro : function(tema, idjanela) { if (i3GEOF.identifica.propJanelas[idjanela].visibility === "visible") { @@ -1187,7 +1187,7 @@ i3GEOF.identifica = new cpaint(); cp.set_response_type("JSON"); cp.set_transfer_mode('POST'); - cp.call(p, "insereFiltro", temp, "tema=" + tema, "filtro="); + cp.call(p, "insereFiltro", temp, "tema=" + tema + "&filtro="); }, adicionaPontoRegiao : function(idjanela) { var p = i3GEO.configura.locaplic + "/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid=" + i3GEO.configura.sid, tema = diff --git a/ferramentas/salvamapa/index.js b/ferramentas/salvamapa/index.js index 7be6100..b337caf 100755 --- a/ferramentas/salvamapa/index.js +++ b/ferramentas/salvamapa/index.js @@ -98,7 +98,6 @@ i3GEOF.salvaMapa = { local = i3GEO.configura.locaplic+"/../ms_tmp"+local[1]; onde.innerHTML = "" + ""+$trad('baixaArquivo',i3GEOF.salvaMapa.dicionario)+"
" + - ""+$trad('veArquivo',i3GEOF.salvaMapa.dicionario)+"
" + ""+$trad('testaArquivo',i3GEOF.salvaMapa.dicionario)+""; } catch(erro){i3GEO.janela.tempoMsg(erro);} diff --git a/ferramentas/selecao/index.js b/ferramentas/selecao/index.js index f45619e..7bd381d 100755 --- a/ferramentas/selecao/index.js +++ b/ferramentas/selecao/index.js @@ -1198,11 +1198,11 @@ i3GEOF.selecao = p, "selecaoPoli", retorna, - "xs=" + xs, - "ys=" + ys, - "tema=" + tema, - "tipo=" + $i("i3GEOselecaotipoOperacao").value, - "buffer=" + $i("i3GEOselecaotoleranciapt").value); + "xs=" + xs + + "&ys=" + ys + + "&tema=" + tema + + "&tipo=" + $i("i3GEOselecaotipoOperacao").value + + "&buffer=" + $i("i3GEOselecaotoleranciapt").value); } }, /* diff --git a/temas/_llocali.map b/temas/_llocali.map old mode 100755 new mode 100644 index 12acde9..b2b8706 --- a/temas/_llocali.map +++ b/temas/_llocali.map @@ -1,34 +1,33 @@ MAP FONTSET "../symbols/fontes.txt" SYMBOLSET "../symbols/simbolosv6.sym" - LAYER CONNECTION "" DATA "/var/www/i3geo/aplicmap/dados/locali.shp" METADATA "METAESTAT_ID_MEDIDA_VARIAVEL" "" - "cache" "SIM" "TIP" "TIPO,NOMELOC,ANOCRIA" - "LTEMPOITEMDESCRICAO" "TIPO" + "cache" "SIM" "CLASSE" "SIM" + "LTEMPOITEMDESCRICAO" "TIPO" "LTEMPOITEMINICIO" "ANOCRIA" - "LTEMPOITEMTIP" "ANOCRIA" "permitekmz" "sim" - "LTEMPOITEMTITULO" "NOMELOC" + "LTEMPOITEMTIP" "ANOCRIA" "ITENSDESC" "Município,TIPO,Localidade,ANOCRIA" - "TILES" "SIM" + "LTEMPOITEMTITULO" "NOMELOC" "ITENSLINK" ",,," + "TILES" "SIM" "METAESTAT_CODIGO_TIPO_REGIAO" "" - "LTEMPOFORMATODATA" "iso8601" "permitedownload" "sim" + "LTEMPOFORMATODATA" "iso8601" "permitecomentario" "SIM" "metaestat" "" "download" "SIM" "itembuscarapida" "NOMELOC" "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA" - "transitioneffect" "NAO" - "permiteogc" "sim" "permitekml" "sim" + "permiteogc" "sim" + "transitioneffect" "NAO" "TEMA" "Localidades (usar com timeline) para teste" "cortepixels" "30" "LTEMPOCONVENCODE" "SIM" diff --git a/temas/_llocalianimagif.map b/temas/_llocalianimagif.map old mode 100755 new mode 100644 index b43f1bf..7db6614 --- a/temas/_llocalianimagif.map +++ b/temas/_llocalianimagif.map @@ -10,7 +10,7 @@ MAP "cache" "SIM" "CLASSE" "SIM" "LTEMPOITEMDESCRICAO" "TIPO" - "animagif" "" + "animagif" "{'colunat':'ANOCRIA','tipocolunat':'numero','tempo':'40','w':'500','h':'500','cache':'sim','mapext':'-159.521484375 -89.263671875 114.521484375 46.263671875','legenda':'sim','transparente':'sim','operador':'','nulos':'','auto':'sim','exec':'nao'}" "LTEMPOITEMINICIO" "ANOCRIA" "permitekmz" "sim" "LTEMPOITEMTIP" "ANOCRIA" diff --git a/temas/a.map b/temas/a.map deleted file mode 100755 index 9d3cd9f..0000000 --- a/temas/a.map +++ /dev/null @@ -1,89 +0,0 @@ -MAP - FONTSET "../symbols/fontes.txt" - SYMBOLSET "../symbols/simbolosv6.sym" - LAYER - CONNECTION "" - DATA "/var/www/i3geo/aplicmap/dados/biomas.shp" - METADATA - "TIP" "CD_LEGENDA" - "CACHE" "sim" - "CLASSE" "SIM" - "permitekmz" "sim" - "ITENSDESC" "Bioma Teste de acentuação" - "ESCALA" "1000000" - "TILES" "SIM" - "extensao" "-76 -39 -29 9" - "permitedownload" "sim" - "download" "sim" - "itembuscarapida" "CD_LEGENDA" - "ITENS" "CD_LEGENDA" - "transitioneffect" "SIM" - "permiteogc" "sim" - "permitekml" "sim" - "TEMA" "Biomas SHP (acentução) teste" - END # METADATA - NAME "a" - PROCESSING "ITEMS=CD_LEGENDA" - PROCESSING "LABEL_NO_CLIP=True" - PROCESSING "POLYLINE_NO_CLIP=True" - STATUS DEFAULT - TEMPLATE "none.htm" - TILEITEM "location" - TYPE POLYGON - UNITS METERS - CLASS - NAME "CAATINGA" - EXPRESSION ('[CD_LEGENDA]'eq'CAATINGA') - STYLE - COLOR 4 180 226 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - CLASS - NAME "PAMPA area > 5" - EXPRESSION ('[CD_LEGENDA]'eq'PAMPA area > 5') - STYLE - COLOR 116 220 127 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - CLASS - NAME "CERRADO" - EXPRESSION ('[CD_LEGENDA]'eq'CERRADO') - STYLE - COLOR 202 199 25 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - CLASS - NAME "PANTANAL" - EXPRESSION ('[CD_LEGENDA]'eq'PANTANAL') - STYLE - COLOR 68 130 30 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - CLASS - NAME "AMAZÔNIA" - EXPRESSION ('[CD_LEGENDA]'eq'AMAZÔNIA') - STYLE - COLOR 23 2 150 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - CLASS - NAME "MATA ATLÂNTICA" - EXPRESSION ('[CD_LEGENDA]'eq'MATA ATLÂNTICA') - STYLE - COLOR 187 96 164 - OUTLINECOLOR 255 255 255 - END # STYLE - TITLE "" - END # CLASS - END # LAYER -END # MAP -- libgit2 0.21.2