Commit d3c524186a3b3a0298af8629d85a4dcaa87c516e
1 parent
c0d8d332
Exists in
master
and in
7 other branches
Inclusão de opções de verificação de erros na inicialização do mapa. No ms_criam…
…apa.php, cada layer é verificado para identificar se o arquivo shapefile utilizado realmente existe.
Showing
5 changed files
with
83 additions
and
6 deletions
Show diff stats
classesjs/i3geo_tudo_compacto.js
| ... | ... | @@ -1263,7 +1263,8 @@ function Mapa(e,m){ objaguarde=new aguarde(); objposicaocursor=new posicaocursor |
| 1263 | 1263 | if(!window.testaferramentas){alert("ferramentas.js com problemas");} |
| 1264 | 1264 | if(!window.testaajax){alert("redesenho.js com problemas");} |
| 1265 | 1265 | objaguarde.abre("montaMapa","Aguarde...iniciando o mapa"); var cp=new cpaint(); cp.set_response_type("JSON"); var p=g_locaplic+"/classesphp/mapa_controle.php?funcao=inicia&embedLegenda="+g_embedLegenda+"&w="+this.w+"&h="+this.h+"&g_sid="+g_sid; cp.call(p,"iniciaMapa",this.montaMapa);} |
| 1266 | - this.montaMapa=function(retorno){ if(retorno.data=="linkquebrado"){ objaguarde.fecha("montaMapa"); document.body.style.backgroundColor="white"; document.body.innerHTML="<br>Para abrir o mapa utilize o link:<br><a href="+g_locaplic+"/ms_criamapa.php >"+g_locaplic+"/ms_criamapa.php</a>"; return("linkquebrado");} | |
| 1266 | + this.montaMapa=function(retorno){ if(retorno.data.search("erro.")>-1){ alert(retorno.data);} | |
| 1267 | + if(retorno.data=="linkquebrado"){ objaguarde.fecha("montaMapa"); document.body.style.backgroundColor="white"; document.body.innerHTML="<br>Para abrir o mapa utilize o link:<br><a href="+g_locaplic+"/ms_criamapa.php >"+g_locaplic+"/ms_criamapa.php</a>"; return("linkquebrado");} | |
| 1267 | 1268 | else{ if((retorno.data !="erro")&&(retorno.data !=undefined)){ eval(retorno.data); if(oMenuData==""){ oMenuData={ "ajudas": [{text: "Sobre o I3Geo", url: "javascript:g_hlpt='sobrei3geo';ajudaf('abre')"},{text: "Sistema", url: "javascript:abreDoc()"},{text: "WikiBook", url: "http://pt.wikibooks.org/wiki/I3geo"},{text: "Tutoriais", url: "http://mapas.mma.gov.br/wikibooki3geo"},{text: "Blog", url: "http://sistemas.mma.gov.br/blogs/index.php?blog=6"}, ], "analise": [{text: "Geometrias", url: "javascript:analisaGeometrias()"},{text: "Grade de poligonos", url: "javascript:gradePol()"},{text: "Grade de pontos", url: "javascript:gradePontos()"},{text: "Grade de hexágonos", url: "javascript:gradeHex()"},{text: "Entorno(buffer)", url: "javascript:buffer()"},{text: "Centróide", url: "javascript:centroide()"},{text: "N pontos em poligono", url: "javascript:nptPol()"},{text: "Ponto em poligono/raster", url: "javascript:pontoempoligono()"},{text: "Distribuição de pontos", url: "javascript:pontosdistri()"} |
| 1268 | 1269 | ] }; if(!$i("listaPropriedades")){ oMenuData.propriedades=[{text: "Tipo de imagem", url: "javascript:tipoimagem()"},{text: "Legenda", url: "javascript:opcoesLegenda()"},{text: "Escala", url: "javascript:opcoesEscala()"},{text: "Tamanho", url: "javascript:tamanho()"},{text: "Ativa/desativa entorno", url: "javascript:ativaEntorno()"},{text: "Ativa/desativa logo", url: "javascript:ativaLogo()"},{text: "Cor da selecao", url: "javascript:queryMap()"},{text: "Cor do fundo", url: "javascript:corFundo()"},{text: "Grade de coordenadas", url: "javascript:gradeCoord()"} |
| 1269 | 1270 | ];} |
| ... | ... | @@ -1286,7 +1287,7 @@ function Mapa(e,m){ objaguarde=new aguarde(); objposicaocursor=new posicaocursor |
| 1286 | 1287 | if($i("maisBotoes2")){YAHOO.janelaBotoes2.xp.panel.moveTo(imagemxi,imagemyi+10);} |
| 1287 | 1288 | mudaiconf("pan"); if(g_entorno=="sim"){ geraURLentorno(); var letras=["L","O","N","S"]; for(l=0;l<letras.length;l++){ if($i("img"+letras[l])){ $i("img"+letras[l]).style.width=objmapa.w; $i("img"+letras[l]).style.height=objmapa.h; $i("img"+letras[l]).style.display="block";}} |
| 1288 | 1289 | ajustaEntorno();}} |
| 1289 | - else{trataErro();alert("Erro. Impossivel criar o mapa");return;} | |
| 1290 | + else{alert("Erro. Impossivel criar o mapa "+retorno.data);return;} | |
| 1290 | 1291 | var temp=g_guiaativa.split("guia"); mostraguiaf(temp[1]); if($i(objmapa.guiaListaMapas)){ if(g_locmapas==""){$i(objmapa.guiaListaMapas).style.display="none"}} |
| 1291 | 1292 | if(pCookie("g_janelaMen")){g_janelaMen=pCookie("g_janelaMen");} |
| 1292 | 1293 | if(g_janelaMen=="sim"){initJanelaMen();} | ... | ... |
classesjs/iniciamma.js
| ... | ... | @@ -725,6 +725,10 @@ function Mapa(e,m) |
| 725 | 725 | */ |
| 726 | 726 | this.montaMapa = function (retorno) |
| 727 | 727 | { |
| 728 | + if (retorno.data.search("erro.") > -1) | |
| 729 | + { | |
| 730 | + alert(retorno.data); | |
| 731 | + } | |
| 728 | 732 | if (retorno.data == "linkquebrado") |
| 729 | 733 | { |
| 730 | 734 | objaguarde.fecha("montaMapa"); |
| ... | ... | @@ -902,7 +906,7 @@ function Mapa(e,m) |
| 902 | 906 | } |
| 903 | 907 | } |
| 904 | 908 | else |
| 905 | - {trataErro();alert("Erro. Impossivel criar o mapa");return;} | |
| 909 | + {alert("Erro. Impossivel criar o mapa "+retorno.data);return;} | |
| 906 | 910 | //ativa a guia correta |
| 907 | 911 | var temp = g_guiaativa.split("guia"); |
| 908 | 912 | mostraguiaf(temp[1]); | ... | ... |
classesjs/iniciamma_compacto.js
| ... | ... | @@ -15,7 +15,8 @@ function Mapa(e,m){ objaguarde=new aguarde(); objposicaocursor=new posicaocursor |
| 15 | 15 | if(!window.testaferramentas){alert("ferramentas.js com problemas");} |
| 16 | 16 | if(!window.testaajax){alert("redesenho.js com problemas");} |
| 17 | 17 | objaguarde.abre("montaMapa","Aguarde...iniciando o mapa"); var cp=new cpaint(); cp.set_response_type("JSON"); var p=g_locaplic+"/classesphp/mapa_controle.php?funcao=inicia&embedLegenda="+g_embedLegenda+"&w="+this.w+"&h="+this.h+"&g_sid="+g_sid; cp.call(p,"iniciaMapa",this.montaMapa);} |
| 18 | - this.montaMapa=function(retorno){ if(retorno.data=="linkquebrado"){ objaguarde.fecha("montaMapa"); document.body.style.backgroundColor="white"; document.body.innerHTML="<br>Para abrir o mapa utilize o link:<br><a href="+g_locaplic+"/ms_criamapa.php >"+g_locaplic+"/ms_criamapa.php</a>"; return("linkquebrado");} | |
| 18 | + this.montaMapa=function(retorno){ if(retorno.data.search("erro.")>-1){ alert(retorno.data);} | |
| 19 | + if(retorno.data=="linkquebrado"){ objaguarde.fecha("montaMapa"); document.body.style.backgroundColor="white"; document.body.innerHTML="<br>Para abrir o mapa utilize o link:<br><a href="+g_locaplic+"/ms_criamapa.php >"+g_locaplic+"/ms_criamapa.php</a>"; return("linkquebrado");} | |
| 19 | 20 | else{ if((retorno.data !="erro")&&(retorno.data !=undefined)){ eval(retorno.data); if(oMenuData==""){ oMenuData={ "ajudas": [{text: "Sobre o I3Geo", url: "javascript:g_hlpt='sobrei3geo';ajudaf('abre')"},{text: "Sistema", url: "javascript:abreDoc()"},{text: "WikiBook", url: "http://pt.wikibooks.org/wiki/I3geo"},{text: "Tutoriais", url: "http://mapas.mma.gov.br/wikibooki3geo"},{text: "Blog", url: "http://sistemas.mma.gov.br/blogs/index.php?blog=6"}, ], "analise": [{text: "Geometrias", url: "javascript:analisaGeometrias()"},{text: "Grade de poligonos", url: "javascript:gradePol()"},{text: "Grade de pontos", url: "javascript:gradePontos()"},{text: "Grade de hexágonos", url: "javascript:gradeHex()"},{text: "Entorno(buffer)", url: "javascript:buffer()"},{text: "Centróide", url: "javascript:centroide()"},{text: "N pontos em poligono", url: "javascript:nptPol()"},{text: "Ponto em poligono/raster", url: "javascript:pontoempoligono()"},{text: "Distribuição de pontos", url: "javascript:pontosdistri()"} |
| 20 | 21 | ] }; if(!$i("listaPropriedades")){ oMenuData.propriedades=[{text: "Tipo de imagem", url: "javascript:tipoimagem()"},{text: "Legenda", url: "javascript:opcoesLegenda()"},{text: "Escala", url: "javascript:opcoesEscala()"},{text: "Tamanho", url: "javascript:tamanho()"},{text: "Ativa/desativa entorno", url: "javascript:ativaEntorno()"},{text: "Ativa/desativa logo", url: "javascript:ativaLogo()"},{text: "Cor da selecao", url: "javascript:queryMap()"},{text: "Cor do fundo", url: "javascript:corFundo()"},{text: "Grade de coordenadas", url: "javascript:gradeCoord()"} |
| 21 | 22 | ];} |
| ... | ... | @@ -38,7 +39,7 @@ function Mapa(e,m){ objaguarde=new aguarde(); objposicaocursor=new posicaocursor |
| 38 | 39 | if($i("maisBotoes2")){YAHOO.janelaBotoes2.xp.panel.moveTo(imagemxi,imagemyi+10);} |
| 39 | 40 | mudaiconf("pan"); if(g_entorno=="sim"){ geraURLentorno(); var letras=["L","O","N","S"]; for(l=0;l<letras.length;l++){ if($i("img"+letras[l])){ $i("img"+letras[l]).style.width=objmapa.w; $i("img"+letras[l]).style.height=objmapa.h; $i("img"+letras[l]).style.display="block";}} |
| 40 | 41 | ajustaEntorno();}} |
| 41 | - else{trataErro();alert("Erro. Impossivel criar o mapa");return;} | |
| 42 | + else{alert("Erro. Impossivel criar o mapa "+retorno.data);return;} | |
| 42 | 43 | var temp=g_guiaativa.split("guia"); mostraguiaf(temp[1]); if($i(objmapa.guiaListaMapas)){ if(g_locmapas==""){$i(objmapa.guiaListaMapas).style.display="none"}} |
| 43 | 44 | if(pCookie("g_janelaMen")){g_janelaMen=pCookie("g_janelaMen");} |
| 44 | 45 | if(g_janelaMen=="sim"){initJanelaMen();} | ... | ... |
classesphp/mapa_inicia.php
| ... | ... | @@ -84,6 +84,10 @@ Essa string é recuperada no lado do javascript com eval(). |
| 84 | 84 | function iniciaMapa() |
| 85 | 85 | { |
| 86 | 86 | global $locaplic,$cp,$embedLegenda,$map_file,$mapext,$w,$h,$locsistemas,$locidentifica,$R_path,$locmapas,$locmapserv,$postgis_con; |
| 87 | + if (!file_exists($locaplic)) | |
| 88 | + {$cp->set_data("erro. $locaplic nao existe (variavel locaplic - corrija o ms_configura.php)");return;} | |
| 89 | + if (!file_exists($map_file)) | |
| 90 | + {$cp->set_data("erro. $map_file nao existe (variavel map_file utilize o testainstal.php)");return;} | |
| 87 | 91 | //altera o tamanho do query map para ficar igual ao do mapa |
| 88 | 92 | include("classe_mapa.php"); |
| 89 | 93 | $m = new Mapa($map_file); | ... | ... |
ms_criamapa.php
| ... | ... | @@ -211,6 +211,7 @@ if (!file_exists($dir_tmp."/index.htm")) |
| 211 | 211 | // |
| 212 | 212 | //cria os objetos map |
| 213 | 213 | // |
| 214 | +ms_ResetErrorList(); | |
| 214 | 215 | if (file_exists($base)) |
| 215 | 216 | { |
| 216 | 217 | $map = ms_newMapObj($base); |
| ... | ... | @@ -221,6 +222,13 @@ else |
| 221 | 222 | $map = ms_newMapObj($temasaplic."/".$base.".map"); |
| 222 | 223 | $mapn = ms_newMapObj($temasaplic."/".$base.".map"); |
| 223 | 224 | } |
| 225 | +$error = ms_GetErrorObj(); | |
| 226 | +while($error && $error->code != MS_NOERR) | |
| 227 | +{ | |
| 228 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 229 | + $error = $error->next(); | |
| 230 | +} | |
| 231 | +ms_ResetErrorList(); | |
| 224 | 232 | // |
| 225 | 233 | //verifica a lista de temas da inicializacao, adicionando-os se necessário |
| 226 | 234 | // |
| ... | ... | @@ -263,6 +271,13 @@ foreach ($alayers as $arqt) |
| 263 | 271 | } |
| 264 | 272 | } |
| 265 | 273 | } |
| 274 | +$error = ms_GetErrorObj(); | |
| 275 | +while($error && $error->code != MS_NOERR) | |
| 276 | +{ | |
| 277 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 278 | + $error = $error->next(); | |
| 279 | +} | |
| 280 | +ms_ResetErrorList(); | |
| 266 | 281 | // |
| 267 | 282 | //liga os temas definidos em $layers |
| 268 | 283 | // |
| ... | ... | @@ -279,6 +294,13 @@ if (isset($layers)) |
| 279 | 294 | {$layern = $mapn->getLayerByName($l);$layern->set("status",MS_DEFAULT);} |
| 280 | 295 | } |
| 281 | 296 | } |
| 297 | +$error = ms_GetErrorObj(); | |
| 298 | +while($error && $error->code != MS_NOERR) | |
| 299 | +{ | |
| 300 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 301 | + $error = $error->next(); | |
| 302 | +} | |
| 303 | +ms_ResetErrorList(); | |
| 282 | 304 | // |
| 283 | 305 | //aplica ao mapa os parâmetros passados pela URL |
| 284 | 306 | // |
| ... | ... | @@ -309,6 +331,13 @@ if ((isset($mapext)) && ($mapext != "")) |
| 309 | 331 | if (count($newext) == 4) |
| 310 | 332 | {$ext->setextent($newext[0], $newext[1], $newext[2], $newext[3]);} |
| 311 | 333 | } |
| 334 | +$error = ms_GetErrorObj(); | |
| 335 | +while($error && $error->code != MS_NOERR) | |
| 336 | +{ | |
| 337 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 338 | + $error = $error->next(); | |
| 339 | +} | |
| 340 | +ms_ResetErrorList(); | |
| 312 | 341 | // |
| 313 | 342 | //configura os endereços corretos |
| 314 | 343 | // |
| ... | ... | @@ -334,6 +363,13 @@ if (isset($executa)) |
| 334 | 363 | if (function_exists($executa)) |
| 335 | 364 | {eval($executa."();");} |
| 336 | 365 | } |
| 366 | +$error = ms_GetErrorObj(); | |
| 367 | +while($error && $error->code != MS_NOERR) | |
| 368 | +{ | |
| 369 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 370 | + $error = $error->next(); | |
| 371 | +} | |
| 372 | +ms_ResetErrorList(); | |
| 337 | 373 | //inclui pontos via url |
| 338 | 374 | if (isset($pontos)) |
| 339 | 375 | { |
| ... | ... | @@ -390,11 +426,42 @@ if (isset($pontos)) |
| 390 | 426 | $cor->setRGB(255,0,0); |
| 391 | 427 | $salvo = $mapa->save($tmpfname); |
| 392 | 428 | } |
| 429 | +$error = ms_GetErrorObj(); | |
| 430 | +while($error && $error->code != MS_NOERR) | |
| 431 | +{ | |
| 432 | + printf("<br>Error in %s: %s<br>\n", $error->routine, $error->message); | |
| 433 | + $error = $error->next(); | |
| 434 | +} | |
| 435 | +ms_ResetErrorList(); | |
| 393 | 436 | // |
| 394 | 437 | //se vc quiser para o script aqui, para verificar erros, descomente a linha abaixo |
| 395 | 438 | // |
| 396 | 439 | //exit; |
| 397 | - | |
| 440 | +// | |
| 441 | +//verifica os dados de cada layer | |
| 442 | +// | |
| 443 | +$mapa = ms_newMapObj($tmpfname); | |
| 444 | +$path = $mapa->shappath; | |
| 445 | +for($i=0;$i<($mapa->numlayers);$i++) | |
| 446 | +{ | |
| 447 | + $layer = $mapa->getLayer($i); | |
| 448 | + $ok = true; | |
| 449 | + if ($layer->connection == "") | |
| 450 | + { | |
| 451 | + $ok = false; | |
| 452 | + $d = $layer->data; | |
| 453 | + if((file_exists($d)) || (file_exists($d.".shp"))) | |
| 454 | + {$ok = true;} | |
| 455 | + else | |
| 456 | + { | |
| 457 | + if((file_exists($path."/".$d)) || (file_exists($path."/".$d.".shp"))) | |
| 458 | + {$ok = true;} | |
| 459 | + } | |
| 460 | + } | |
| 461 | + if ($ok == false) | |
| 462 | + {$layer->set("status",MS_OFF);} | |
| 463 | +} | |
| 464 | +$mapa->save($tmpfname); | |
| 398 | 465 | // |
| 399 | 466 | // gera a url para abrir o mapa |
| 400 | 467 | // interface = arquivo html que será aberto | ... | ... |