Commit d12d595be532b0430fa6cbc2a6ac22870c5c4302
1 parent
3a363adb
Exists in
master
and in
7 other branches
ALterações nas opções de edição vetorial
Showing
10 changed files
with
492 additions
and
197 deletions
Show diff stats
admin/js/editormapfile.js
| @@ -1327,7 +1327,7 @@ function montaEditorComport(dados) | @@ -1327,7 +1327,7 @@ function montaEditorComport(dados) | ||
| 1327 | { | 1327 | { |
| 1328 | var param = { | 1328 | var param = { |
| 1329 | "linhas":[ | 1329 | "linhas":[ |
| 1330 | - {ajuda:"Sets the current status of the layer. Often modified by MapServer itself. Default turns the layer on permanently", | 1330 | + {ajuda:"Define o estado atual da camada. Geralmente modificado pelo próprio MapServer. Default ativa a camada permanentemente.", |
| 1331 | titulo:"Status",id:"",value:dados.status,tipo:"text",div:"<div id=cStatus ></div>"}, | 1331 | titulo:"Status",id:"",value:dados.status,tipo:"text",div:"<div id=cStatus ></div>"}, |
| 1332 | {ajuda:"Indica se o tema irá ser mostrado na ferramenta de identificação", | 1332 | {ajuda:"Indica se o tema irá ser mostrado na ferramenta de identificação", |
| 1333 | titulo:"Identifica (IDENTIFICA)",id:"",value:dados.identifica,tipo:"text",div:"<div id=cIdentifica ></div>"}, | 1333 | titulo:"Identifica (IDENTIFICA)",id:"",value:dados.identifica,tipo:"text",div:"<div id=cIdentifica ></div>"}, |
admin/php/classe_metaestat.php
| @@ -94,7 +94,7 @@ class Metaestat{ | @@ -94,7 +94,7 @@ class Metaestat{ | ||
| 94 | * @return string | 94 | * @return string |
| 95 | */ | 95 | */ |
| 96 | function nomeCache(){ | 96 | function nomeCache(){ |
| 97 | - return md5(implode("x",$_REQUEST)); | 97 | + return "AAAA".md5(implode("x",$_REQUEST)); |
| 98 | } | 98 | } |
| 99 | /** | 99 | /** |
| 100 | * Cria um nome aleatorio | 100 | * Cria um nome aleatorio |
classesphp/classe_mapa.php
| @@ -397,7 +397,10 @@ class Mapa | @@ -397,7 +397,10 @@ class Mapa | ||
| 397 | "permiteogc"=>($oLayer->getmetadata("permiteogc")), | 397 | "permiteogc"=>($oLayer->getmetadata("permiteogc")), |
| 398 | "itembuscarapida"=>($oLayer->getmetadata("itembuscarapida")), | 398 | "itembuscarapida"=>($oLayer->getmetadata("itembuscarapida")), |
| 399 | "usasld"=>$usasld, | 399 | "usasld"=>$usasld, |
| 400 | - "cache"=>$cache | 400 | + "cache"=>$cache, |
| 401 | + "editavel"=>($oLayer->getmetadata("EDITAVEL")), | ||
| 402 | + "editavel"=>($oLayer->getmetadata("EDITAVEL")), | ||
| 403 | + "colunaidunico"=>($oLayer->getmetadata("COLUNAIDUNICO")) | ||
| 401 | ); | 404 | ); |
| 402 | } | 405 | } |
| 403 | } | 406 | } |
classesphp/mapa_openlayers.php
| @@ -87,12 +87,19 @@ if(isset($_GET["tms"])){ | @@ -87,12 +87,19 @@ if(isset($_GET["tms"])){ | ||
| 87 | $_GET["BBOX"] = $lon1." ".$lat1." ".$lon2." ".$lat2; | 87 | $_GET["BBOX"] = $lon1." ".$lat1." ".$lon2." ".$lat2; |
| 88 | } | 88 | } |
| 89 | $map_fileX = $_SESSION["map_file"]; | 89 | $map_fileX = $_SESSION["map_file"]; |
| 90 | +// | ||
| 91 | +//verifica se o request e OGC | ||
| 92 | +if(!empty($_GET["request"])){ | ||
| 93 | + $_GET["REQUEST"] = $_GET["request"]; | ||
| 94 | +} | ||
| 90 | // | 95 | // |
| 91 | //resolve o problema da seleção na versão nova do mapserver | 96 | //resolve o problema da seleção na versão nova do mapserver |
| 92 | // | 97 | // |
| 93 | $qyfile = dirname($map_fileX)."/".$_GET["layer"].".php"; | 98 | $qyfile = dirname($map_fileX)."/".$_GET["layer"].".php"; |
| 94 | $qy = file_exists($qyfile); | 99 | $qy = file_exists($qyfile); |
| 95 | - | 100 | +if($_GET["REQUEST"] == "GetFeatureInfo" || strtolower($_GET["REQUEST"]) == "getfeature"){ |
| 101 | + $_GET["DESLIGACACHE"] = "sim"; | ||
| 102 | +} | ||
| 96 | if($qy == false && $_GET["cache"] == "sim" && $_GET["DESLIGACACHE"] != "sim"){ | 103 | if($qy == false && $_GET["cache"] == "sim" && $_GET["DESLIGACACHE"] != "sim"){ |
| 97 | carregaCacheImagem($_SESSION["cachedir"],$_SESSION["map_file"],$_GET["tms"],$_SESSION["i3georendermode"]); | 104 | carregaCacheImagem($_SESSION["cachedir"],$_SESSION["map_file"],$_GET["tms"],$_SESSION["i3georendermode"]); |
| 98 | } | 105 | } |
| @@ -151,17 +158,22 @@ if(!isset($_GET["telaR"])){//no caso de projecoes remotas, o mapfile nao e alter | @@ -151,17 +158,22 @@ if(!isset($_GET["telaR"])){//no caso de projecoes remotas, o mapfile nao e alter | ||
| 151 | $nomecache = $layerName; | 158 | $nomecache = $layerName; |
| 152 | } | 159 | } |
| 153 | } | 160 | } |
| 154 | - } | ||
| 155 | - if($_GET["REQUEST"] == "GetFeatureInfo" || $_GET["REQUEST"] == "getfeature"){ | ||
| 156 | - $l->setmetadata("gml_include_items","all"); | ||
| 157 | - $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | ||
| 158 | - $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | ||
| 159 | - $l->setmetadata("ows_enable_request","*"); | ||
| 160 | - $l->set("dump",MS_TRUE); | ||
| 161 | - $l->setmetadata("ows_srs","AUTO"); | 161 | + if($_GET["REQUEST"] == "GetFeatureInfo" || strtolower($_GET["REQUEST"]) == "getfeature" ){ |
| 162 | + $l->setmetadata("gml_include_items","all"); | ||
| 163 | + $l->set("template","none.htm"); | ||
| 164 | + $l->setmetadata("WMS_INCLUDE_ITEMS","all"); | ||
| 165 | + $l->setmetadata("WFS_INCLUDE_ITEMS","all"); | ||
| 166 | + $l->setmetadata("ows_enable_request","*"); | ||
| 167 | + $l->set("dump",MS_TRUE); | ||
| 168 | + $l->setmetadata("ows_srs","AUTO"); | ||
| 169 | + if(strtolower($_GET["REQUEST"]) == "getfeature"){ | ||
| 170 | + $_GET["TYPENAME"] = $l->name; | ||
| 171 | + } | ||
| 172 | + } | ||
| 162 | } | 173 | } |
| 163 | } | 174 | } |
| 164 | } | 175 | } |
| 176 | + | ||
| 165 | if (!function_exists('imagepng')) | 177 | if (!function_exists('imagepng')) |
| 166 | {$_GET["TIPOIMAGEM"] = "";} | 178 | {$_GET["TIPOIMAGEM"] = "";} |
| 167 | 179 | ||
| @@ -175,19 +187,21 @@ elseif($_GET["TIPOIMAGEM"] != "" && $_GET["TIPOIMAGEM"] != "nenhum") | @@ -175,19 +187,21 @@ elseif($_GET["TIPOIMAGEM"] != "" && $_GET["TIPOIMAGEM"] != "nenhum") | ||
| 175 | {$cache = false;} | 187 | {$cache = false;} |
| 176 | 188 | ||
| 177 | if($cache == true && $_GET["cache"] != "nao"){ | 189 | if($cache == true && $_GET["cache"] != "nao"){ |
| 178 | - //carregaCacheImagem($cachedir,$_GET["BBOX"],$nomecache,$map_fileX,$_GET["WIDTH"],$_GET["HEIGHT"]); | ||
| 179 | carregaCacheImagem($cachedir,$map,$_GET["tms"]); | 190 | carregaCacheImagem($cachedir,$map,$_GET["tms"]); |
| 180 | } | 191 | } |
| 181 | -$map_size = explode(" ",$_GET["map_size"]); | ||
| 182 | -$mapa->setsize($map_size[0],$map_size[1]); | 192 | +if(isset($_GET["map_size"])){ |
| 193 | + $map_size = explode(" ",$_GET["map_size"]); | ||
| 194 | + $mapa->setsize($map_size[0],$map_size[1]); | ||
| 195 | +} | ||
| 183 | if(isset($_GET["mapext"])){ | 196 | if(isset($_GET["mapext"])){ |
| 184 | $mapext = explode(" ",$_GET["mapext"]); | 197 | $mapext = explode(" ",$_GET["mapext"]); |
| 185 | $mapa->setExtent($mapext[0],$mapext[1],$mapext[2],$mapext[3]); | 198 | $mapa->setExtent($mapext[0],$mapext[1],$mapext[2],$mapext[3]); |
| 186 | } | 199 | } |
| 200 | + | ||
| 187 | // | 201 | // |
| 188 | //qd a cahamda e para um WMS, redireciona para ogc.php | 202 | //qd a cahamda e para um WMS, redireciona para ogc.php |
| 189 | // | 203 | // |
| 190 | -if($_GET["REQUEST"] == "GetFeatureInfo" || $_GET["request"] == "getfeature"){ | 204 | +if($_GET["REQUEST"] == "GetFeatureInfo" || $_GET["REQUEST"] == "getfeature"){ |
| 191 | $req = ms_newowsrequestobj(); | 205 | $req = ms_newowsrequestobj(); |
| 192 | $_GET = array_merge($_GET,$_POST); | 206 | $_GET = array_merge($_GET,$_POST); |
| 193 | foreach ($_GET as $k=>$v){ | 207 | foreach ($_GET as $k=>$v){ |
ferramentas/editortema/exec.php
| @@ -29,6 +29,7 @@ include_once(dirname(__FILE__)."/../inicia.php"); | @@ -29,6 +29,7 @@ include_once(dirname(__FILE__)."/../inicia.php"); | ||
| 29 | include_once(dirname(__FILE__)."/../../admin/php/login.php"); | 29 | include_once(dirname(__FILE__)."/../../admin/php/login.php"); |
| 30 | $funcoesEdicao = array( | 30 | $funcoesEdicao = array( |
| 31 | "ADICIONAGEOMETRIA", | 31 | "ADICIONAGEOMETRIA", |
| 32 | + "ATUALIZAGEOMETRIA", | ||
| 32 | "EXCLUIREGISTRO", | 33 | "EXCLUIREGISTRO", |
| 33 | "SALVAREGISTRO" | 34 | "SALVAREGISTRO" |
| 34 | ); | 35 | ); |
| @@ -80,6 +81,42 @@ switch (strtoupper($funcao)) | @@ -80,6 +81,42 @@ switch (strtoupper($funcao)) | ||
| 80 | } | 81 | } |
| 81 | } | 82 | } |
| 82 | break; | 83 | break; |
| 84 | + case "ATUALIZAGEOMETRIA": | ||
| 85 | + $mapa = ms_newMapObj($map_file); | ||
| 86 | + $layer = $mapa->getlayerbyname($tema); | ||
| 87 | + if(strtolower($layer->getmetadata("EDITAVEL")) != "sim"){ | ||
| 88 | + $retorno = "erro"; | ||
| 89 | + } | ||
| 90 | + else{ | ||
| 91 | + $tabela = $layer->getmetadata("TABELAEDITAVEL"); | ||
| 92 | + $esquema = $layer->getmetadata("ESQUEMATABELAEDITAVEL"); | ||
| 93 | + $colunaidunico = $layer->getmetadata("COLUNAIDUNICO"); | ||
| 94 | + $colunageometria = $layer->getmetadata("COLUNAGEOMETRIA"); | ||
| 95 | + if($colunageometria == ""){ | ||
| 96 | + $retorno = "erro"; | ||
| 97 | + } | ||
| 98 | + $c = stringCon2Array($layer->connection); | ||
| 99 | + try { | ||
| 100 | + $dbh = new PDO('pgsql:dbname='.$c["dbname"].';user='.$c["user"].';password='.$c["password"].';host='.$c["host"].';port='.$c["port"]); | ||
| 101 | + //pega o SRID | ||
| 102 | + $sql = "select ST_SRID($colunageometria) as srid from $esquema"."."."$tabela LIMIT 1"; | ||
| 103 | + //echo $sql;exit; | ||
| 104 | + $q = $dbh->query($sql,PDO::FETCH_ASSOC); | ||
| 105 | + $r = $q->fetchAll(); | ||
| 106 | + $srid = $r[0]["srid"]; | ||
| 107 | + | ||
| 108 | + $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); | ||
| 109 | + $dbh->beginTransaction(); | ||
| 110 | + $sql = "UPDATE ".$esquema.".".$tabela." SET ".$colunageometria." = (ST_GeomFromText('SRID=$srid;".$wkt."')) WHERE $colunaidunico = ".$idunico; | ||
| 111 | + $sth = $dbh->exec($sql); | ||
| 112 | + $dbh->commit(); | ||
| 113 | + $retorno = "ok"; | ||
| 114 | + } catch (Exception $e) { | ||
| 115 | + $dbh->rollBack(); | ||
| 116 | + $retorno = array("Falhou: " . $e->getMessage()); | ||
| 117 | + } | ||
| 118 | + } | ||
| 119 | + break; | ||
| 83 | case "EXCLUIREGISTRO": | 120 | case "EXCLUIREGISTRO": |
| 84 | $mapa = ms_newMapObj($map_file); | 121 | $mapa = ms_newMapObj($map_file); |
| 85 | $layer = $mapa->getlayerbyname($tema); | 122 | $layer = $mapa->getlayerbyname($tema); |
mashups/openlayers.js
| @@ -289,16 +289,46 @@ i3GEO.editorOL = { | @@ -289,16 +289,46 @@ i3GEO.editorOL = { | ||
| 289 | } | 289 | } |
| 290 | return ins; | 290 | return ins; |
| 291 | }, | 291 | }, |
| 292 | + //layers clonados sao copias WMS de layers TMS necessarios para realizar o getfeature | ||
| 293 | + //sao criados quando o layer e adicionado | ||
| 292 | layersClonados: function(paramsLayers){ | 294 | layersClonados: function(paramsLayers){ |
| 293 | var layers = i3GEO.editorOL.mapa.layers, | 295 | var layers = i3GEO.editorOL.mapa.layers, |
| 294 | nlayers = layers.length,i; | 296 | nlayers = layers.length,i; |
| 295 | for(i=0;i<nlayers;i++){ | 297 | for(i=0;i<nlayers;i++){ |
| 296 | - if(layers[i].params.CLONETMS === paramsLayers){ | 298 | + if(layers[i].params && layers[i].params.CLONETMS === paramsLayers){ |
| 297 | return(layers[i]); | 299 | return(layers[i]); |
| 298 | } | 300 | } |
| 299 | } | 301 | } |
| 300 | return false; | 302 | return false; |
| 301 | }, | 303 | }, |
| 304 | + layertms2wms: function(tms){ | ||
| 305 | + var layer = new OpenLayers.Layer.WMS( | ||
| 306 | + tms.layername+"_clone", | ||
| 307 | + tms.url.replace("&cache=sim","&DESLIGACACHE=sim"), | ||
| 308 | + { | ||
| 309 | + layers:tms.name, | ||
| 310 | + transparent:true | ||
| 311 | + }, | ||
| 312 | + { | ||
| 313 | + gutter:0, | ||
| 314 | + isBaseLayer:false, | ||
| 315 | + displayInLayerSwitcher:false, | ||
| 316 | + opacity: 1, | ||
| 317 | + visibility:true, | ||
| 318 | + singleTile: true | ||
| 319 | + } | ||
| 320 | + ); | ||
| 321 | + //i3GEO.editorOL.mapa.addLayer(layer); | ||
| 322 | + return layer; | ||
| 323 | + }, | ||
| 324 | + //remove o layer clonado com layertms2wms | ||
| 325 | + removeClone: function(){ | ||
| 326 | + var nome = i3GEO.editorOL.layerAtivo().layername+"_clone", | ||
| 327 | + busca = i3GEO.editorOL.mapa.getLayersByName(nome); | ||
| 328 | + if(busca.length > 0){ | ||
| 329 | + i3GEO.editorOL.mapa.removeLayer(i3GEO.editorOL.mapa.getLayersByName(camada.name)[0],false); | ||
| 330 | + } | ||
| 331 | + }, | ||
| 302 | coordenadas: function(){ | 332 | coordenadas: function(){ |
| 303 | // | 333 | // |
| 304 | //substitui o controle que mostra as coordenadas | 334 | //substitui o controle que mostra as coordenadas |
| @@ -366,11 +396,19 @@ i3GEO.editorOL = { | @@ -366,11 +396,19 @@ i3GEO.editorOL = { | ||
| 366 | criaComboTemas: function(){ | 396 | criaComboTemas: function(){ |
| 367 | var layers = i3GEO.editorOL.layersLigados(), | 397 | var layers = i3GEO.editorOL.layersLigados(), |
| 368 | nlayers = layers.length, | 398 | nlayers = layers.length, |
| 369 | - i, | ||
| 370 | - combo = "<select id=i3GEOOLlistaTemasAtivos >"; | 399 | + i,nometema = "",temp, |
| 400 | + combo = "<select id=i3GEOOLlistaTemasAtivos style=width:235px; >"; | ||
| 371 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); | 401 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); |
| 372 | for(i=0;i<nlayers;i++){ | 402 | for(i=0;i<nlayers;i++){ |
| 373 | - combo += "<option value='"+i+"' >"+layers[i].name+"</option>"; | 403 | + //pega o nome do tema |
| 404 | + nometema = ""; | ||
| 405 | + if(i3GEO.arvoreDeCamadas && i3GEO.arvoreDeCamadas.CAMADAS){ | ||
| 406 | + temp = i3GEO.arvoreDeCamadas.pegaTema(layers[i].name,"","name"); | ||
| 407 | + if(temp != ""){ | ||
| 408 | + nometema = temp.tema+" - "; | ||
| 409 | + } | ||
| 410 | + } | ||
| 411 | + combo += "<option value='"+i+"' >"+nometema + layers[i].name+"</option>"; | ||
| 374 | } | 412 | } |
| 375 | combo += "</select>"; | 413 | combo += "</select>"; |
| 376 | return combo; | 414 | return combo; |
| @@ -416,6 +454,7 @@ i3GEO.editorOL = { | @@ -416,6 +454,7 @@ i3GEO.editorOL = { | ||
| 416 | } | 454 | } |
| 417 | else{ | 455 | else{ |
| 418 | YAHOO.temaativo.container.panel.show(); | 456 | YAHOO.temaativo.container.panel.show(); |
| 457 | + i3GEO.editorOL.atualizaJanelaAtivaTema(); | ||
| 419 | } | 458 | } |
| 420 | }, | 459 | }, |
| 421 | ativaTema: function(id){ | 460 | ativaTema: function(id){ |
| @@ -585,7 +624,8 @@ i3GEO.editorOL = { | @@ -585,7 +624,8 @@ i3GEO.editorOL = { | ||
| 585 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, | 624 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, |
| 586 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, | 625 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, |
| 587 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, | 626 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, |
| 588 | - graphicName: i3GEO.editorOL.simbologia.graphicName | 627 | + graphicName: i3GEO.editorOL.simbologia.graphicName, |
| 628 | + registros: f["attributes"] | ||
| 589 | }; | 629 | }; |
| 590 | } | 630 | } |
| 591 | i3GEO.editorOL.layergrafico.addFeatures(gml); | 631 | i3GEO.editorOL.layergrafico.addFeatures(gml); |
| @@ -601,7 +641,6 @@ i3GEO.editorOL = { | @@ -601,7 +641,6 @@ i3GEO.editorOL = { | ||
| 601 | salvaGeometrias: function(){ | 641 | salvaGeometrias: function(){ |
| 602 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | 642 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 603 | n = geos.length, | 643 | n = geos.length, |
| 604 | - janela, | ||
| 605 | ins = ""; | 644 | ins = ""; |
| 606 | if(n > 0){ | 645 | if(n > 0){ |
| 607 | if($i("panelsalvageometrias")){ | 646 | if($i("panelsalvageometrias")){ |
| @@ -638,20 +677,30 @@ i3GEO.editorOL = { | @@ -638,20 +677,30 @@ i3GEO.editorOL = { | ||
| 638 | i3GEO.editorOL.processageo("converteSHP"); | 677 | i3GEO.editorOL.processageo("converteSHP"); |
| 639 | }, | 678 | }, |
| 640 | listaGeometriasSel: function(){ | 679 | listaGeometriasSel: function(){ |
| 641 | - var geos = i3GEO.editorOL.layergrafico.selectedFeatures; | ||
| 642 | - var n = geos.length; | ||
| 643 | - var ins = "",i; | 680 | + var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 681 | + n = geos.length, | ||
| 682 | + ins = "",i,a,w; | ||
| 644 | for(i=0;i<n;i++){ | 683 | for(i=0;i<n;i++){ |
| 645 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; | 684 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; |
| 646 | ins += "<b>Atributos: "+i+"</b><br>"; | 685 | ins += "<b>Atributos: "+i+"</b><br>"; |
| 647 | - var a = geos[i].attributes; | 686 | + a = geos[i].attributes; |
| 648 | for(key in a){ | 687 | for(key in a){ |
| 688 | + if(a[key]){ | ||
| 689 | + ins += key+" = "+a[key]+"<br>"; | ||
| 690 | + } | ||
| 691 | + } | ||
| 692 | + //lista os registros se for fruto de uma captura | ||
| 693 | + if(geos[i].attributes.registros){ | ||
| 694 | + ins += "<b>Registros: "+i+"</b><br>"; | ||
| 695 | + a = geos[i].attributes.registros; | ||
| 696 | + for(key in a){ | ||
| 649 | if(a[key]){ | 697 | if(a[key]){ |
| 650 | ins += key+" = "+a[key]+"<br>"; | 698 | ins += key+" = "+a[key]+"<br>"; |
| 651 | } | 699 | } |
| 700 | + } | ||
| 652 | } | 701 | } |
| 653 | } | 702 | } |
| 654 | - var w = window.open(); | 703 | + w = window.open(); |
| 655 | w.document.write(ins); | 704 | w.document.write(ins); |
| 656 | w.document.close(); | 705 | w.document.close(); |
| 657 | }, | 706 | }, |
| @@ -659,20 +708,62 @@ i3GEO.editorOL = { | @@ -659,20 +708,62 @@ i3GEO.editorOL = { | ||
| 659 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); | 708 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); |
| 660 | }, | 709 | }, |
| 661 | salvaGeo: function(){ | 710 | salvaGeo: function(){ |
| 662 | - i3GEO.editorOL.testeSalvar(); | ||
| 663 | - return; | ||
| 664 | - //verifica se apenas uma geometria esta selecionada | ||
| 665 | - //verifica se a geometria contem o atributo que indica a coluna ou codigo unico | ||
| 666 | - var funcaoOK = function(){ | ||
| 667 | - | ||
| 668 | - alert("oi"); | 711 | + //i3GEO.editorOL.testeSalvar(); |
| 712 | + //return; | ||
| 713 | + var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | ||
| 714 | + n = geos.length, | ||
| 715 | + funcaoOK = function(){ | ||
| 716 | + //verifica se a geometria contem o atributo que indica a coluna ou codigo unico | ||
| 717 | + if(geos[0].geometry){ | ||
| 718 | + var registros = "", | ||
| 719 | + valorunico = "", | ||
| 720 | + nometema = $i("editorOLcomboTemaEditavel").value, | ||
| 721 | + key,tema,redesenha,p; | ||
| 722 | + if(nometema == ""){ | ||
| 723 | + return; | ||
| 724 | + } | ||
| 725 | + tema = i3GEO.arvoreDeCamadas.pegaTema(nometema,"","name"); | ||
| 726 | + //o tema contem o indicador de qual e a coluna que contem o identificador unico | ||
| 727 | + if(geos[0].attributes.registros){ | ||
| 728 | + registros = geos[0].attributes.registros; | ||
| 729 | + for(key in registros){ | ||
| 730 | + if(registros[key] && key == tema.colunaidunico){ | ||
| 731 | + valorunico = registros[key]; | ||
| 732 | + } | ||
| 733 | + } | ||
| 734 | + } | ||
| 735 | + redesenha = function(retorno){ | ||
| 736 | + i3GEO.janela.fechaAguarde("aguardeSalvaPonto"); | ||
| 737 | + i3GEO.editorOL.layergrafico.removeFeatures(i3GEO.editorOL.layergrafico.selectedFeatures); | ||
| 738 | + i3GEO.Interface.atualizaTema("",nometema); | ||
| 739 | + }; | ||
| 740 | + i3GEO.janela.AGUARDEMODAL = true; | ||
| 741 | + i3GEO.janela.abreAguarde("aguardeSalvaPonto","Adicionando..."); | ||
| 742 | + i3GEO.janela.AGUARDEMODAL = false; | ||
| 743 | + | ||
| 744 | + //cria um novo registro | ||
| 745 | + if(valorunico == ""){ | ||
| 746 | + p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 747 | + cpJSON.call(p,"foo",redesenha,"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 748 | + } | ||
| 749 | + else{ | ||
| 750 | + //atualiza a geometria | ||
| 751 | + p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 752 | + cpJSON.call(p,"foo",redesenha,"&idunico="+valorunico+"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 753 | + } | ||
| 754 | + } | ||
| 669 | }, | 755 | }, |
| 670 | funcaoCombo = function(obj){ | 756 | funcaoCombo = function(obj){ |
| 671 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; | 757 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; |
| 672 | }, | 758 | }, |
| 673 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; | 759 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; |
| 674 | - i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); | ||
| 675 | - i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); | 760 | + if(n != 1){ |
| 761 | + i3GEO.janela.tempoMsg("Selecione apenas uma figura"); | ||
| 762 | + } | ||
| 763 | + else{ | ||
| 764 | + i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); | ||
| 765 | + i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); | ||
| 766 | + } | ||
| 676 | }, | 767 | }, |
| 677 | criaBotoes: function(botoes){ | 768 | criaBotoes: function(botoes){ |
| 678 | var sketchSymbolizers = { | 769 | var sketchSymbolizers = { |
| @@ -845,19 +936,12 @@ i3GEO.editorOL = { | @@ -845,19 +936,12 @@ i3GEO.editorOL = { | ||
| 845 | displayClass: "editorOLidentifica", | 936 | displayClass: "editorOLidentifica", |
| 846 | eventListeners: { | 937 | eventListeners: { |
| 847 | getfeatureinfo: function(event) { | 938 | getfeatureinfo: function(event) { |
| 848 | - var ativo = [i3GEO.editorOL.layerAtivo()]; | ||
| 849 | - //se for TMS tem de pegar o clone wms | ||
| 850 | - if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | ||
| 851 | - temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 852 | - if(temp != ""){ | ||
| 853 | - temp.setVisibility(false); | ||
| 854 | - } | ||
| 855 | - } | ||
| 856 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 939 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 857 | lonlattexto = "<hr>", | 940 | lonlattexto = "<hr>", |
| 858 | formata; | 941 | formata; |
| 942 | + | ||
| 859 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ | 943 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ |
| 860 | - lonlattexto += "<pre><span style=color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>captura</span></pre>"; | 944 | + lonlattexto += "<pre><span style=font-size:12px;color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>edita geometria</span></pre><br>"; |
| 861 | } | 945 | } |
| 862 | formata = function(texto){ | 946 | formata = function(texto){ |
| 863 | var temp, | 947 | var temp, |
| @@ -891,20 +975,17 @@ i3GEO.editorOL = { | @@ -891,20 +975,17 @@ i3GEO.editorOL = { | ||
| 891 | "chicken", | 975 | "chicken", |
| 892 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 976 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 893 | null, | 977 | null, |
| 894 | - lonlattexto+"<pre>"+formata(event.text)+"</pre>", | 978 | + "<div style=text-align:left >"+lonlattexto+"<pre>"+formata(event.text)+"</pre></div>", |
| 895 | null, | 979 | null, |
| 896 | true | 980 | true |
| 897 | )); | 981 | )); |
| 982 | + i3GEO.editorOL.removeClone(); | ||
| 898 | }, | 983 | }, |
| 899 | beforegetfeatureinfo: function(event){ | 984 | beforegetfeatureinfo: function(event){ |
| 900 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; | 985 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; |
| 901 | //se for TMS tem de pegar o clone wms | 986 | //se for TMS tem de pegar o clone wms |
| 902 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | 987 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ |
| 903 | - temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 904 | - if(temp != ""){ | ||
| 905 | - temp.setVisibility(true); | ||
| 906 | - ativo = [temp]; | ||
| 907 | - } | 988 | + ativo = [i3GEO.editorOL.layertms2wms(ativo[0])]; |
| 908 | } | 989 | } |
| 909 | event.object.layers = ativo; | 990 | event.object.layers = ativo; |
| 910 | botaoIdentifica.layers = ativo; | 991 | botaoIdentifica.layers = ativo; |
mashups/openlayers.php
| @@ -333,7 +333,6 @@ Par&acirc;metros: | @@ -333,7 +333,6 @@ Par&acirc;metros: | ||
| 333 | 333 | ||
| 334 | 334 | ||
| 335 | <script type="text/javascript" src="openlayers_compacto.js.php"></script> | 335 | <script type="text/javascript" src="openlayers_compacto.js.php"></script> |
| 336 | -<script type="text/javascript" src="../classesjs/compactados/classe_util_compacto.js"></script> | ||
| 337 | <link rel="stylesheet" href="openlayers_compacto.css" type="text/css" /> | 336 | <link rel="stylesheet" href="openlayers_compacto.css" type="text/css" /> |
| 338 | 337 | ||
| 339 | 338 |
mashups/openlayers_compacto.js
| @@ -3302,16 +3302,46 @@ ins.push(layers[i]); | @@ -3302,16 +3302,46 @@ ins.push(layers[i]); | ||
| 3302 | } | 3302 | } |
| 3303 | return ins; | 3303 | return ins; |
| 3304 | }, | 3304 | }, |
| 3305 | +//layers clonados sao copias WMS de layers TMS necessarios para realizar o getfeature | ||
| 3306 | +//sao criados quando o layer e adicionado | ||
| 3305 | layersClonados: function(paramsLayers){ | 3307 | layersClonados: function(paramsLayers){ |
| 3306 | var layers = i3GEO.editorOL.mapa.layers, | 3308 | var layers = i3GEO.editorOL.mapa.layers, |
| 3307 | nlayers = layers.length,i; | 3309 | nlayers = layers.length,i; |
| 3308 | for(i=0;i<nlayers;i++){ | 3310 | for(i=0;i<nlayers;i++){ |
| 3309 | -if(layers[i].params.CLONETMS === paramsLayers){ | 3311 | +if(layers[i].params && layers[i].params.CLONETMS === paramsLayers){ |
| 3310 | return(layers[i]); | 3312 | return(layers[i]); |
| 3311 | } | 3313 | } |
| 3312 | } | 3314 | } |
| 3313 | return false; | 3315 | return false; |
| 3314 | }, | 3316 | }, |
| 3317 | +layertms2wms: function(tms){ | ||
| 3318 | +var layer = new OpenLayers.Layer.WMS( | ||
| 3319 | +tms.layername+"_clone", | ||
| 3320 | +tms.url.replace("&cache=sim","&DESLIGACACHE=sim"), | ||
| 3321 | +{ | ||
| 3322 | +layers:tms.name, | ||
| 3323 | +transparent:true | ||
| 3324 | +}, | ||
| 3325 | +{ | ||
| 3326 | +gutter:0, | ||
| 3327 | +isBaseLayer:false, | ||
| 3328 | +displayInLayerSwitcher:false, | ||
| 3329 | +opacity: 1, | ||
| 3330 | +visibility:true, | ||
| 3331 | +singleTile: true | ||
| 3332 | +} | ||
| 3333 | +); | ||
| 3334 | +//i3GEO.editorOL.mapa.addLayer(layer); | ||
| 3335 | +return layer; | ||
| 3336 | +}, | ||
| 3337 | +//remove o layer clonado com layertms2wms | ||
| 3338 | +removeClone: function(){ | ||
| 3339 | +var nome = i3GEO.editorOL.layerAtivo().layername+"_clone", | ||
| 3340 | +busca = i3GEO.editorOL.mapa.getLayersByName(nome); | ||
| 3341 | +if(busca.length > 0){ | ||
| 3342 | +i3GEO.editorOL.mapa.removeLayer(i3GEO.editorOL.mapa.getLayersByName(camada.name)[0],false); | ||
| 3343 | +} | ||
| 3344 | +}, | ||
| 3315 | coordenadas: function(){ | 3345 | coordenadas: function(){ |
| 3316 | // | 3346 | // |
| 3317 | //substitui o controle que mostra as coordenadas | 3347 | //substitui o controle que mostra as coordenadas |
| @@ -3378,11 +3408,19 @@ catch(e){} | @@ -3378,11 +3408,19 @@ catch(e){} | ||
| 3378 | criaComboTemas: function(){ | 3408 | criaComboTemas: function(){ |
| 3379 | var layers = i3GEO.editorOL.layersLigados(), | 3409 | var layers = i3GEO.editorOL.layersLigados(), |
| 3380 | nlayers = layers.length, | 3410 | nlayers = layers.length, |
| 3381 | -i, | ||
| 3382 | -combo = "<select id=i3GEOOLlistaTemasAtivos >"; | 3411 | +i,nometema = "",temp, |
| 3412 | +combo = "<select id=i3GEOOLlistaTemasAtivos style=width:235px; >"; | ||
| 3383 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); | 3413 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); |
| 3384 | for(i=0;i<nlayers;i++){ | 3414 | for(i=0;i<nlayers;i++){ |
| 3385 | -combo += "<option value='"+i+"' >"+layers[i].name+"</option>"; | 3415 | +//pega o nome do tema |
| 3416 | +nometema = ""; | ||
| 3417 | +if(i3GEO.arvoreDeCamadas && i3GEO.arvoreDeCamadas.CAMADAS){ | ||
| 3418 | +temp = i3GEO.arvoreDeCamadas.pegaTema(layers[i].name,"","name"); | ||
| 3419 | +if(temp != ""){ | ||
| 3420 | +nometema = temp.tema+" - "; | ||
| 3421 | +} | ||
| 3422 | +} | ||
| 3423 | +combo += "<option value='"+i+"' >"+nometema + layers[i].name+"</option>"; | ||
| 3386 | } | 3424 | } |
| 3387 | combo += "</select>"; | 3425 | combo += "</select>"; |
| 3388 | return combo; | 3426 | return combo; |
| @@ -3428,6 +3466,7 @@ temp.onclick = function(){i3GEO.janela.minimiza("paneltemaativo");}; | @@ -3428,6 +3466,7 @@ temp.onclick = function(){i3GEO.janela.minimiza("paneltemaativo");}; | ||
| 3428 | } | 3466 | } |
| 3429 | else{ | 3467 | else{ |
| 3430 | YAHOO.temaativo.container.panel.show(); | 3468 | YAHOO.temaativo.container.panel.show(); |
| 3469 | +i3GEO.editorOL.atualizaJanelaAtivaTema(); | ||
| 3431 | } | 3470 | } |
| 3432 | }, | 3471 | }, |
| 3433 | ativaTema: function(id){ | 3472 | ativaTema: function(id){ |
| @@ -3593,7 +3632,8 @@ fillColor: i3GEO.editorOL.simbologia.fillColor, | @@ -3593,7 +3632,8 @@ fillColor: i3GEO.editorOL.simbologia.fillColor, | ||
| 3593 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, | 3632 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, |
| 3594 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, | 3633 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, |
| 3595 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, | 3634 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, |
| 3596 | -graphicName: i3GEO.editorOL.simbologia.graphicName | 3635 | +graphicName: i3GEO.editorOL.simbologia.graphicName, |
| 3636 | +registros: f["attributes"] | ||
| 3597 | }; | 3637 | }; |
| 3598 | } | 3638 | } |
| 3599 | i3GEO.editorOL.layergrafico.addFeatures(gml); | 3639 | i3GEO.editorOL.layergrafico.addFeatures(gml); |
| @@ -3609,7 +3649,6 @@ alert("Erro"); | @@ -3609,7 +3649,6 @@ alert("Erro"); | ||
| 3609 | salvaGeometrias: function(){ | 3649 | salvaGeometrias: function(){ |
| 3610 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | 3650 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 3611 | n = geos.length, | 3651 | n = geos.length, |
| 3612 | -janela, | ||
| 3613 | ins = ""; | 3652 | ins = ""; |
| 3614 | if(n > 0){ | 3653 | if(n > 0){ |
| 3615 | if($i("panelsalvageometrias")){ | 3654 | if($i("panelsalvageometrias")){ |
| @@ -3646,20 +3685,30 @@ exportarSHP: function(){ | @@ -3646,20 +3685,30 @@ exportarSHP: function(){ | ||
| 3646 | i3GEO.editorOL.processageo("converteSHP"); | 3685 | i3GEO.editorOL.processageo("converteSHP"); |
| 3647 | }, | 3686 | }, |
| 3648 | listaGeometriasSel: function(){ | 3687 | listaGeometriasSel: function(){ |
| 3649 | -var geos = i3GEO.editorOL.layergrafico.selectedFeatures; | ||
| 3650 | -var n = geos.length; | ||
| 3651 | -var ins = "",i; | 3688 | +var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 3689 | +n = geos.length, | ||
| 3690 | +ins = "",i,a,w; | ||
| 3652 | for(i=0;i<n;i++){ | 3691 | for(i=0;i<n;i++){ |
| 3653 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; | 3692 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; |
| 3654 | ins += "<b>Atributos: "+i+"</b><br>"; | 3693 | ins += "<b>Atributos: "+i+"</b><br>"; |
| 3655 | -var a = geos[i].attributes; | 3694 | +a = geos[i].attributes; |
| 3656 | for(key in a){ | 3695 | for(key in a){ |
| 3657 | if(a[key]){ | 3696 | if(a[key]){ |
| 3658 | ins += key+" = "+a[key]+"<br>"; | 3697 | ins += key+" = "+a[key]+"<br>"; |
| 3659 | } | 3698 | } |
| 3660 | } | 3699 | } |
| 3700 | +//lista os registros se for fruto de uma captura | ||
| 3701 | +if(geos[i].attributes.registros){ | ||
| 3702 | +ins += "<b>Registros: "+i+"</b><br>"; | ||
| 3703 | +a = geos[i].attributes.registros; | ||
| 3704 | +for(key in a){ | ||
| 3705 | +if(a[key]){ | ||
| 3706 | +ins += key+" = "+a[key]+"<br>"; | ||
| 3707 | +} | ||
| 3708 | +} | ||
| 3709 | +} | ||
| 3661 | } | 3710 | } |
| 3662 | -var w = window.open(); | 3711 | +w = window.open(); |
| 3663 | w.document.write(ins); | 3712 | w.document.write(ins); |
| 3664 | w.document.close(); | 3713 | w.document.close(); |
| 3665 | }, | 3714 | }, |
| @@ -3667,19 +3716,61 @@ testeSalvar: function(){ | @@ -3667,19 +3716,61 @@ testeSalvar: function(){ | ||
| 3667 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); | 3716 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); |
| 3668 | }, | 3717 | }, |
| 3669 | salvaGeo: function(){ | 3718 | salvaGeo: function(){ |
| 3670 | -i3GEO.editorOL.testeSalvar(); | ||
| 3671 | -return; | ||
| 3672 | -//verifica se apenas uma geometria esta selecionada | 3719 | +//i3GEO.editorOL.testeSalvar(); |
| 3720 | +//return; | ||
| 3721 | +var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | ||
| 3722 | +n = geos.length, | ||
| 3723 | +funcaoOK = function(){ | ||
| 3673 | //verifica se a geometria contem o atributo que indica a coluna ou codigo unico | 3724 | //verifica se a geometria contem o atributo que indica a coluna ou codigo unico |
| 3674 | -var funcaoOK = function(){ | ||
| 3675 | -alert("oi"); | 3725 | +if(geos[0].geometry){ |
| 3726 | +var registros = "", | ||
| 3727 | +valorunico = "", | ||
| 3728 | +nometema = $i("editorOLcomboTemaEditavel").value, | ||
| 3729 | +key,tema,redesenha,p; | ||
| 3730 | +if(nometema == ""){ | ||
| 3731 | +return; | ||
| 3732 | +} | ||
| 3733 | +tema = i3GEO.arvoreDeCamadas.pegaTema(nometema,"","name"); | ||
| 3734 | +//o tema contem o indicador de qual e a coluna que contem o identificador unico | ||
| 3735 | +if(geos[0].attributes.registros){ | ||
| 3736 | +registros = geos[0].attributes.registros; | ||
| 3737 | +for(key in registros){ | ||
| 3738 | +if(registros[key] && key == tema.colunaidunico){ | ||
| 3739 | +valorunico = registros[key]; | ||
| 3740 | +} | ||
| 3741 | +} | ||
| 3742 | +} | ||
| 3743 | +redesenha = function(retorno){ | ||
| 3744 | +i3GEO.janela.fechaAguarde("aguardeSalvaPonto"); | ||
| 3745 | +i3GEO.editorOL.layergrafico.removeFeatures(i3GEO.editorOL.layergrafico.selectedFeatures); | ||
| 3746 | +i3GEO.Interface.atualizaTema("",nometema); | ||
| 3747 | +}; | ||
| 3748 | +i3GEO.janela.AGUARDEMODAL = true; | ||
| 3749 | +i3GEO.janela.abreAguarde("aguardeSalvaPonto","Adicionando..."); | ||
| 3750 | +i3GEO.janela.AGUARDEMODAL = false; | ||
| 3751 | +//cria um novo registro | ||
| 3752 | +if(valorunico == ""){ | ||
| 3753 | +p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 3754 | +cpJSON.call(p,"foo",redesenha,"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 3755 | +} | ||
| 3756 | +else{ | ||
| 3757 | +//atualiza a geometria | ||
| 3758 | +p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 3759 | +cpJSON.call(p,"foo",redesenha,"&idunico="+valorunico+"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 3760 | +} | ||
| 3761 | +} | ||
| 3676 | }, | 3762 | }, |
| 3677 | funcaoCombo = function(obj){ | 3763 | funcaoCombo = function(obj){ |
| 3678 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; | 3764 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; |
| 3679 | }, | 3765 | }, |
| 3680 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; | 3766 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; |
| 3767 | +if(n != 1){ | ||
| 3768 | +i3GEO.janela.tempoMsg("Selecione apenas uma figura"); | ||
| 3769 | +} | ||
| 3770 | +else{ | ||
| 3681 | i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); | 3771 | i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); |
| 3682 | i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); | 3772 | i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); |
| 3773 | +} | ||
| 3683 | }, | 3774 | }, |
| 3684 | criaBotoes: function(botoes){ | 3775 | criaBotoes: function(botoes){ |
| 3685 | var sketchSymbolizers = { | 3776 | var sketchSymbolizers = { |
| @@ -3852,19 +3943,11 @@ type: OpenLayers.Control.TYPE_TOOL, | @@ -3852,19 +3943,11 @@ type: OpenLayers.Control.TYPE_TOOL, | ||
| 3852 | displayClass: "editorOLidentifica", | 3943 | displayClass: "editorOLidentifica", |
| 3853 | eventListeners: { | 3944 | eventListeners: { |
| 3854 | getfeatureinfo: function(event) { | 3945 | getfeatureinfo: function(event) { |
| 3855 | -var ativo = [i3GEO.editorOL.layerAtivo()]; | ||
| 3856 | -//se for TMS tem de pegar o clone wms | ||
| 3857 | -if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | ||
| 3858 | -temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 3859 | -if(temp != ""){ | ||
| 3860 | -temp.setVisibility(false); | ||
| 3861 | -} | ||
| 3862 | -} | ||
| 3863 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 3946 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 3864 | lonlattexto = "<hr>", | 3947 | lonlattexto = "<hr>", |
| 3865 | formata; | 3948 | formata; |
| 3866 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ | 3949 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ |
| 3867 | -lonlattexto += "<pre><span style=color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>captura</span></pre>"; | 3950 | +lonlattexto += "<pre><span style=font-size:12px;color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>edita geometria</span></pre><br>"; |
| 3868 | } | 3951 | } |
| 3869 | formata = function(texto){ | 3952 | formata = function(texto){ |
| 3870 | var temp, | 3953 | var temp, |
| @@ -3898,20 +3981,17 @@ i3GEO.editorOL.mapa.addPopup(new OpenLayers.Popup.FramedCloud( | @@ -3898,20 +3981,17 @@ i3GEO.editorOL.mapa.addPopup(new OpenLayers.Popup.FramedCloud( | ||
| 3898 | "chicken", | 3981 | "chicken", |
| 3899 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 3982 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 3900 | null, | 3983 | null, |
| 3901 | -lonlattexto+"<pre>"+formata(event.text)+"</pre>", | 3984 | +"<div style=text-align:left >"+lonlattexto+"<pre>"+formata(event.text)+"</pre></div>", |
| 3902 | null, | 3985 | null, |
| 3903 | true | 3986 | true |
| 3904 | )); | 3987 | )); |
| 3988 | +i3GEO.editorOL.removeClone(); | ||
| 3905 | }, | 3989 | }, |
| 3906 | beforegetfeatureinfo: function(event){ | 3990 | beforegetfeatureinfo: function(event){ |
| 3907 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; | 3991 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; |
| 3908 | //se for TMS tem de pegar o clone wms | 3992 | //se for TMS tem de pegar o clone wms |
| 3909 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | 3993 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ |
| 3910 | -temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 3911 | -if(temp != ""){ | ||
| 3912 | -temp.setVisibility(true); | ||
| 3913 | -ativo = [temp]; | ||
| 3914 | -} | 3994 | +ativo = [i3GEO.editorOL.layertms2wms(ativo[0])]; |
| 3915 | } | 3995 | } |
| 3916 | event.object.layers = ativo; | 3996 | event.object.layers = ativo; |
| 3917 | botaoIdentifica.layers = ativo; | 3997 | botaoIdentifica.layers = ativo; |
mashups/openlayers_compacto.js.php
| @@ -3302,16 +3302,46 @@ ins.push(layers[i]); | @@ -3302,16 +3302,46 @@ ins.push(layers[i]); | ||
| 3302 | } | 3302 | } |
| 3303 | return ins; | 3303 | return ins; |
| 3304 | }, | 3304 | }, |
| 3305 | +//layers clonados sao copias WMS de layers TMS necessarios para realizar o getfeature | ||
| 3306 | +//sao criados quando o layer e adicionado | ||
| 3305 | layersClonados: function(paramsLayers){ | 3307 | layersClonados: function(paramsLayers){ |
| 3306 | var layers = i3GEO.editorOL.mapa.layers, | 3308 | var layers = i3GEO.editorOL.mapa.layers, |
| 3307 | nlayers = layers.length,i; | 3309 | nlayers = layers.length,i; |
| 3308 | for(i=0;i<nlayers;i++){ | 3310 | for(i=0;i<nlayers;i++){ |
| 3309 | -if(layers[i].params.CLONETMS === paramsLayers){ | 3311 | +if(layers[i].params && layers[i].params.CLONETMS === paramsLayers){ |
| 3310 | return(layers[i]); | 3312 | return(layers[i]); |
| 3311 | } | 3313 | } |
| 3312 | } | 3314 | } |
| 3313 | return false; | 3315 | return false; |
| 3314 | }, | 3316 | }, |
| 3317 | +layertms2wms: function(tms){ | ||
| 3318 | +var layer = new OpenLayers.Layer.WMS( | ||
| 3319 | +tms.layername+"_clone", | ||
| 3320 | +tms.url.replace("&cache=sim","&DESLIGACACHE=sim"), | ||
| 3321 | +{ | ||
| 3322 | +layers:tms.name, | ||
| 3323 | +transparent:true | ||
| 3324 | +}, | ||
| 3325 | +{ | ||
| 3326 | +gutter:0, | ||
| 3327 | +isBaseLayer:false, | ||
| 3328 | +displayInLayerSwitcher:false, | ||
| 3329 | +opacity: 1, | ||
| 3330 | +visibility:true, | ||
| 3331 | +singleTile: true | ||
| 3332 | +} | ||
| 3333 | +); | ||
| 3334 | +//i3GEO.editorOL.mapa.addLayer(layer); | ||
| 3335 | +return layer; | ||
| 3336 | +}, | ||
| 3337 | +//remove o layer clonado com layertms2wms | ||
| 3338 | +removeClone: function(){ | ||
| 3339 | +var nome = i3GEO.editorOL.layerAtivo().layername+"_clone", | ||
| 3340 | +busca = i3GEO.editorOL.mapa.getLayersByName(nome); | ||
| 3341 | +if(busca.length > 0){ | ||
| 3342 | +i3GEO.editorOL.mapa.removeLayer(i3GEO.editorOL.mapa.getLayersByName(camada.name)[0],false); | ||
| 3343 | +} | ||
| 3344 | +}, | ||
| 3315 | coordenadas: function(){ | 3345 | coordenadas: function(){ |
| 3316 | // | 3346 | // |
| 3317 | //substitui o controle que mostra as coordenadas | 3347 | //substitui o controle que mostra as coordenadas |
| @@ -3378,11 +3408,19 @@ catch(e){} | @@ -3378,11 +3408,19 @@ catch(e){} | ||
| 3378 | criaComboTemas: function(){ | 3408 | criaComboTemas: function(){ |
| 3379 | var layers = i3GEO.editorOL.layersLigados(), | 3409 | var layers = i3GEO.editorOL.layersLigados(), |
| 3380 | nlayers = layers.length, | 3410 | nlayers = layers.length, |
| 3381 | -i, | ||
| 3382 | -combo = "<select id=i3GEOOLlistaTemasAtivos >"; | 3411 | +i,nometema = "",temp, |
| 3412 | +combo = "<select id=i3GEOOLlistaTemasAtivos style=width:235px; >"; | ||
| 3383 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); | 3413 | //i3GEO.editorOL.layergrafico.setLayerIndex(i3GEO.editorOL.getNumLayers() + 1); |
| 3384 | for(i=0;i<nlayers;i++){ | 3414 | for(i=0;i<nlayers;i++){ |
| 3385 | -combo += "<option value='"+i+"' >"+layers[i].name+"</option>"; | 3415 | +//pega o nome do tema |
| 3416 | +nometema = ""; | ||
| 3417 | +if(i3GEO.arvoreDeCamadas && i3GEO.arvoreDeCamadas.CAMADAS){ | ||
| 3418 | +temp = i3GEO.arvoreDeCamadas.pegaTema(layers[i].name,"","name"); | ||
| 3419 | +if(temp != ""){ | ||
| 3420 | +nometema = temp.tema+" - "; | ||
| 3421 | +} | ||
| 3422 | +} | ||
| 3423 | +combo += "<option value='"+i+"' >"+nometema + layers[i].name+"</option>"; | ||
| 3386 | } | 3424 | } |
| 3387 | combo += "</select>"; | 3425 | combo += "</select>"; |
| 3388 | return combo; | 3426 | return combo; |
| @@ -3428,6 +3466,7 @@ temp.onclick = function(){i3GEO.janela.minimiza("paneltemaativo");}; | @@ -3428,6 +3466,7 @@ temp.onclick = function(){i3GEO.janela.minimiza("paneltemaativo");}; | ||
| 3428 | } | 3466 | } |
| 3429 | else{ | 3467 | else{ |
| 3430 | YAHOO.temaativo.container.panel.show(); | 3468 | YAHOO.temaativo.container.panel.show(); |
| 3469 | +i3GEO.editorOL.atualizaJanelaAtivaTema(); | ||
| 3431 | } | 3470 | } |
| 3432 | }, | 3471 | }, |
| 3433 | ativaTema: function(id){ | 3472 | ativaTema: function(id){ |
| @@ -3593,7 +3632,8 @@ fillColor: i3GEO.editorOL.simbologia.fillColor, | @@ -3593,7 +3632,8 @@ fillColor: i3GEO.editorOL.simbologia.fillColor, | ||
| 3593 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, | 3632 | strokeWidth: i3GEO.editorOL.simbologia.strokeWidth, |
| 3594 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, | 3633 | strokeColor: i3GEO.editorOL.simbologia.strokeColor, |
| 3595 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, | 3634 | pointRadius: i3GEO.editorOL.simbologia.pointRadius, |
| 3596 | -graphicName: i3GEO.editorOL.simbologia.graphicName | 3635 | +graphicName: i3GEO.editorOL.simbologia.graphicName, |
| 3636 | +registros: f["attributes"] | ||
| 3597 | }; | 3637 | }; |
| 3598 | } | 3638 | } |
| 3599 | i3GEO.editorOL.layergrafico.addFeatures(gml); | 3639 | i3GEO.editorOL.layergrafico.addFeatures(gml); |
| @@ -3609,7 +3649,6 @@ alert("Erro"); | @@ -3609,7 +3649,6 @@ alert("Erro"); | ||
| 3609 | salvaGeometrias: function(){ | 3649 | salvaGeometrias: function(){ |
| 3610 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | 3650 | var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 3611 | n = geos.length, | 3651 | n = geos.length, |
| 3612 | -janela, | ||
| 3613 | ins = ""; | 3652 | ins = ""; |
| 3614 | if(n > 0){ | 3653 | if(n > 0){ |
| 3615 | if($i("panelsalvageometrias")){ | 3654 | if($i("panelsalvageometrias")){ |
| @@ -3646,20 +3685,30 @@ exportarSHP: function(){ | @@ -3646,20 +3685,30 @@ exportarSHP: function(){ | ||
| 3646 | i3GEO.editorOL.processageo("converteSHP"); | 3685 | i3GEO.editorOL.processageo("converteSHP"); |
| 3647 | }, | 3686 | }, |
| 3648 | listaGeometriasSel: function(){ | 3687 | listaGeometriasSel: function(){ |
| 3649 | -var geos = i3GEO.editorOL.layergrafico.selectedFeatures; | ||
| 3650 | -var n = geos.length; | ||
| 3651 | -var ins = "",i; | 3688 | +var geos = i3GEO.editorOL.layergrafico.selectedFeatures, |
| 3689 | +n = geos.length, | ||
| 3690 | +ins = "",i,a,w; | ||
| 3652 | for(i=0;i<n;i++){ | 3691 | for(i=0;i<n;i++){ |
| 3653 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; | 3692 | ins += "<b>Geometria: "+i+"</b><br>"+geos[i].geometry+"<br><br>"; |
| 3654 | ins += "<b>Atributos: "+i+"</b><br>"; | 3693 | ins += "<b>Atributos: "+i+"</b><br>"; |
| 3655 | -var a = geos[i].attributes; | 3694 | +a = geos[i].attributes; |
| 3656 | for(key in a){ | 3695 | for(key in a){ |
| 3657 | if(a[key]){ | 3696 | if(a[key]){ |
| 3658 | ins += key+" = "+a[key]+"<br>"; | 3697 | ins += key+" = "+a[key]+"<br>"; |
| 3659 | } | 3698 | } |
| 3660 | } | 3699 | } |
| 3700 | +//lista os registros se for fruto de uma captura | ||
| 3701 | +if(geos[i].attributes.registros){ | ||
| 3702 | +ins += "<b>Registros: "+i+"</b><br>"; | ||
| 3703 | +a = geos[i].attributes.registros; | ||
| 3704 | +for(key in a){ | ||
| 3705 | +if(a[key]){ | ||
| 3706 | +ins += key+" = "+a[key]+"<br>"; | ||
| 3707 | +} | ||
| 3708 | +} | ||
| 3709 | +} | ||
| 3661 | } | 3710 | } |
| 3662 | -var w = window.open(); | 3711 | +w = window.open(); |
| 3663 | w.document.write(ins); | 3712 | w.document.write(ins); |
| 3664 | w.document.close(); | 3713 | w.document.close(); |
| 3665 | }, | 3714 | }, |
| @@ -3667,19 +3716,61 @@ testeSalvar: function(){ | @@ -3667,19 +3716,61 @@ testeSalvar: function(){ | ||
| 3667 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); | 3716 | alert("Funcao nao disponivel. Defina o nome da funcao em i3GEO.editorOL.nomeFuncaoSalvar "); |
| 3668 | }, | 3717 | }, |
| 3669 | salvaGeo: function(){ | 3718 | salvaGeo: function(){ |
| 3670 | -i3GEO.editorOL.testeSalvar(); | ||
| 3671 | -return; | ||
| 3672 | -//verifica se apenas uma geometria esta selecionada | 3719 | +//i3GEO.editorOL.testeSalvar(); |
| 3720 | +//return; | ||
| 3721 | +var geos = i3GEO.editorOL.layergrafico.selectedFeatures, | ||
| 3722 | +n = geos.length, | ||
| 3723 | +funcaoOK = function(){ | ||
| 3673 | //verifica se a geometria contem o atributo que indica a coluna ou codigo unico | 3724 | //verifica se a geometria contem o atributo que indica a coluna ou codigo unico |
| 3674 | -var funcaoOK = function(){ | ||
| 3675 | -alert("oi"); | 3725 | +if(geos[0].geometry){ |
| 3726 | +var registros = "", | ||
| 3727 | +valorunico = "", | ||
| 3728 | +nometema = $i("editorOLcomboTemaEditavel").value, | ||
| 3729 | +key,tema,redesenha,p; | ||
| 3730 | +if(nometema == ""){ | ||
| 3731 | +return; | ||
| 3732 | +} | ||
| 3733 | +tema = i3GEO.arvoreDeCamadas.pegaTema(nometema,"","name"); | ||
| 3734 | +//o tema contem o indicador de qual e a coluna que contem o identificador unico | ||
| 3735 | +if(geos[0].attributes.registros){ | ||
| 3736 | +registros = geos[0].attributes.registros; | ||
| 3737 | +for(key in registros){ | ||
| 3738 | +if(registros[key] && key == tema.colunaidunico){ | ||
| 3739 | +valorunico = registros[key]; | ||
| 3740 | +} | ||
| 3741 | +} | ||
| 3742 | +} | ||
| 3743 | +redesenha = function(retorno){ | ||
| 3744 | +i3GEO.janela.fechaAguarde("aguardeSalvaPonto"); | ||
| 3745 | +i3GEO.editorOL.layergrafico.removeFeatures(i3GEO.editorOL.layergrafico.selectedFeatures); | ||
| 3746 | +i3GEO.Interface.atualizaTema("",nometema); | ||
| 3747 | +}; | ||
| 3748 | +i3GEO.janela.AGUARDEMODAL = true; | ||
| 3749 | +i3GEO.janela.abreAguarde("aguardeSalvaPonto","Adicionando..."); | ||
| 3750 | +i3GEO.janela.AGUARDEMODAL = false; | ||
| 3751 | +//cria um novo registro | ||
| 3752 | +if(valorunico == ""){ | ||
| 3753 | +p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 3754 | +cpJSON.call(p,"foo",redesenha,"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 3755 | +} | ||
| 3756 | +else{ | ||
| 3757 | +//atualiza a geometria | ||
| 3758 | +p = i3GEO.configura.locaplic+"/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid="+i3GEO.configura.sid; | ||
| 3759 | +cpJSON.call(p,"foo",redesenha,"&idunico="+valorunico+"&tema="+nometema+"&wkt="+geos[0].geometry); | ||
| 3760 | +} | ||
| 3761 | +} | ||
| 3676 | }, | 3762 | }, |
| 3677 | funcaoCombo = function(obj){ | 3763 | funcaoCombo = function(obj){ |
| 3678 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; | 3764 | $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; |
| 3679 | }, | 3765 | }, |
| 3680 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; | 3766 | texto = "Salvar no tema:<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; |
| 3767 | +if(n != 1){ | ||
| 3768 | +i3GEO.janela.tempoMsg("Selecione apenas uma figura"); | ||
| 3769 | +} | ||
| 3770 | +else{ | ||
| 3681 | i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); | 3771 | i3GEO.janela.confirma(texto,300,"Salva","Cancela",funcaoOK); |
| 3682 | i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); | 3772 | i3GEO.util.comboTemas("editorOLcomboTemaEditavel",funcaoCombo,"editorOLondeComboTemaEditavel","",false,"editavel"); |
| 3773 | +} | ||
| 3683 | }, | 3774 | }, |
| 3684 | criaBotoes: function(botoes){ | 3775 | criaBotoes: function(botoes){ |
| 3685 | var sketchSymbolizers = { | 3776 | var sketchSymbolizers = { |
| @@ -3852,19 +3943,11 @@ type: OpenLayers.Control.TYPE_TOOL, | @@ -3852,19 +3943,11 @@ type: OpenLayers.Control.TYPE_TOOL, | ||
| 3852 | displayClass: "editorOLidentifica", | 3943 | displayClass: "editorOLidentifica", |
| 3853 | eventListeners: { | 3944 | eventListeners: { |
| 3854 | getfeatureinfo: function(event) { | 3945 | getfeatureinfo: function(event) { |
| 3855 | -var ativo = [i3GEO.editorOL.layerAtivo()]; | ||
| 3856 | -//se for TMS tem de pegar o clone wms | ||
| 3857 | -if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | ||
| 3858 | -temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 3859 | -if(temp != ""){ | ||
| 3860 | -temp.setVisibility(false); | ||
| 3861 | -} | ||
| 3862 | -} | ||
| 3863 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 3946 | var lonlat = i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 3864 | lonlattexto = "<hr>", | 3947 | lonlattexto = "<hr>", |
| 3865 | formata; | 3948 | formata; |
| 3866 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ | 3949 | if( botoes.linha === true || botoes.ponto === true || botoes.poligono === true || botoes.edita === true){ |
| 3867 | -lonlattexto += "<pre><span style=color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>captura</span></pre>"; | 3950 | +lonlattexto += "<pre><span style=font-size:12px;color:blue;cursor:pointer onclick='i3GEO.editorOL.captura(\""+lonlat.lon+","+lonlat.lat+"\")'>edita geometria</span></pre><br>"; |
| 3868 | } | 3951 | } |
| 3869 | formata = function(texto){ | 3952 | formata = function(texto){ |
| 3870 | var temp, | 3953 | var temp, |
| @@ -3898,20 +3981,17 @@ i3GEO.editorOL.mapa.addPopup(new OpenLayers.Popup.FramedCloud( | @@ -3898,20 +3981,17 @@ i3GEO.editorOL.mapa.addPopup(new OpenLayers.Popup.FramedCloud( | ||
| 3898 | "chicken", | 3981 | "chicken", |
| 3899 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), | 3982 | i3GEO.editorOL.mapa.getLonLatFromPixel(event.xy), |
| 3900 | null, | 3983 | null, |
| 3901 | -lonlattexto+"<pre>"+formata(event.text)+"</pre>", | 3984 | +"<div style=text-align:left >"+lonlattexto+"<pre>"+formata(event.text)+"</pre></div>", |
| 3902 | null, | 3985 | null, |
| 3903 | true | 3986 | true |
| 3904 | )); | 3987 | )); |
| 3988 | +i3GEO.editorOL.removeClone(); | ||
| 3905 | }, | 3989 | }, |
| 3906 | beforegetfeatureinfo: function(event){ | 3990 | beforegetfeatureinfo: function(event){ |
| 3907 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; | 3991 | var temp,ativo = [i3GEO.editorOL.layerAtivo()]; |
| 3908 | //se for TMS tem de pegar o clone wms | 3992 | //se for TMS tem de pegar o clone wms |
| 3909 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ | 3993 | if(ativo[0].CLASS_NAME == "OpenLayers.Layer.TMS"){ |
| 3910 | -temp = i3GEO.editorOL.layersClonados(ativo[0].layername); | ||
| 3911 | -if(temp != ""){ | ||
| 3912 | -temp.setVisibility(true); | ||
| 3913 | -ativo = [temp]; | ||
| 3914 | -} | 3994 | +ativo = [i3GEO.editorOL.layertms2wms(ativo[0])]; |
| 3915 | } | 3995 | } |
| 3916 | event.object.layers = ativo; | 3996 | event.object.layers = ativo; |
| 3917 | botaoIdentifica.layers = ativo; | 3997 | botaoIdentifica.layers = ativo; |
temas/_llocali.map
| 1 | MAP | 1 | MAP |
| 2 | - FONTSET "../symbols/fontes.txt" | ||
| 3 | - SYMBOLSET "../symbols/simbolosv6.sym" | ||
| 4 | - LAYER | ||
| 5 | - CONNECTION "" | ||
| 6 | - DATA "/var/www/i3geo/aplicmap/dados/locali.shp" | ||
| 7 | - #FILTER (('[ESTADO]' = 'GO')) | ||
| 8 | - METADATA | ||
| 9 | - "METAESTAT_ID_MEDIDA_VARIAVEL" "" | ||
| 10 | - "cache" "nao" | ||
| 11 | - "LTEMPOITEMIMAGEM" "" | ||
| 12 | - "TIP" "TIPO,ANOCRIA,NOMELOC" | ||
| 13 | - "LTEMPOITEMDESCRICAO" "TIPO" | ||
| 14 | - "CLASSE" "SIM" | ||
| 15 | - "palletestep" "" | ||
| 16 | - "LTEMPOITEMINICIO" "ANOCRIA" | ||
| 17 | - "temporizador" "" | ||
| 18 | - "LTEMPOITEMTIP" "ANOCRIA" | ||
| 19 | - "permitekmz" "sim" | ||
| 20 | - "description_template" "" | ||
| 21 | - "LTEMPOITEMTITULO" "NOMELOC" | ||
| 22 | - "iconetema" "" | ||
| 23 | - "LTEMPOITEMLINK" "" | ||
| 24 | - "METAESTAT_CODIGO_TIPO_REGIAO" "" | ||
| 25 | - "palletefile" "" | ||
| 26 | - "LTEMPOFORMATODATA" "iso8601" | ||
| 27 | - "permitedownload" "sim" | ||
| 28 | - "LTEMPOITEMICONE" "" | ||
| 29 | - "permitecomentario" "" | ||
| 30 | - "metaestat" "" | ||
| 31 | - "download" "SIM" | ||
| 32 | - "itembuscarapida" "NOMELOC" | ||
| 33 | - "arquivokmz" "" | ||
| 34 | - "arquivodownload" "" | ||
| 35 | - "transitioneffect" "NAO" | ||
| 36 | - "permiteogc" "sim" | ||
| 37 | - "permitekml" "sim" | ||
| 38 | - "convcaracter" "" | ||
| 39 | - "TEMA" "Localidades (usar com timeline)" | ||
| 40 | - "LTEMPOCONVENCODE" "SIM" | ||
| 41 | - "editorsql" "" | ||
| 42 | - "legendaimg" "" | ||
| 43 | - "LTEMPOITEMFIM" "" | ||
| 44 | - END # METADATA | ||
| 45 | - NAME "_llocali" | ||
| 46 | - STATUS DEFAULT | ||
| 47 | - TEMPLATE "none.htm" | ||
| 48 | - TILEITEM "location" | ||
| 49 | - TYPE POINT | ||
| 50 | - UNITS METERS | ||
| 51 | - CLASS | ||
| 52 | - NAME "Vila" | ||
| 53 | - EXPRESSION ('[TIPO]'eq'Vila') | ||
| 54 | - STYLE | ||
| 55 | - ANGLE 0 | ||
| 56 | - COLOR 250 193 4 | ||
| 57 | - OFFSET 0 0 | ||
| 58 | - SIZE 20 | ||
| 59 | - SYMBOL "/var/www/i3geo/imagens/google/condominium.png" | ||
| 60 | - END # STYLE | ||
| 61 | - END # CLASS | ||
| 62 | - CLASS | ||
| 63 | - NAME "Cidade" | ||
| 64 | - EXPRESSION ('[TIPO]'eq'Cidade') | ||
| 65 | - STYLE | ||
| 66 | - ANGLE 0 | ||
| 67 | - COLOR 62 9 41 | ||
| 68 | - OFFSET 0 0 | ||
| 69 | - SIZE 20 | ||
| 70 | - SYMBOL "/var/www/i3geo/imagens/google/condominium1.png" | ||
| 71 | - END # STYLE | ||
| 72 | - END # CLASS | ||
| 73 | - CLASS | ||
| 74 | - NAME "Capital" | ||
| 75 | - EXPRESSION ('[TIPO]'eq'Capital') | ||
| 76 | - STYLE | ||
| 77 | - ANGLE 0 | ||
| 78 | - COLOR 112 203 244 | ||
| 79 | - OFFSET 0 0 | ||
| 80 | - SIZE 6 | ||
| 81 | - SYMBOL "vila" | ||
| 82 | - END # STYLE | ||
| 83 | - END # CLASS | ||
| 84 | - END # LAYER | 2 | + FONTSET "../symbols/fontes.txt" |
| 3 | + SYMBOLSET "../symbols/simbolosv6.sym" | ||
| 4 | + LAYER | ||
| 5 | + CONNECTION "" | ||
| 6 | + DATA "/var/www/i3geo/aplicmap/dados/locali.shp" | ||
| 7 | + #FILTER (('[ESTADO]' = 'GO')) | ||
| 8 | + METADATA | ||
| 9 | + "METAESTAT_ID_MEDIDA_VARIAVEL" "" | ||
| 10 | + "cache" "nao" | ||
| 11 | + "LTEMPOITEMIMAGEM" "" | ||
| 12 | + "TIP" "TIPO,ANOCRIA,NOMELOC" | ||
| 13 | + "LTEMPOITEMDESCRICAO" "TIPO" | ||
| 14 | + "CLASSE" "SIM" | ||
| 15 | + "palletestep" "" | ||
| 16 | + "LTEMPOITEMINICIO" "ANOCRIA" | ||
| 17 | + "temporizador" "" | ||
| 18 | + "LTEMPOITEMTIP" "ANOCRIA" | ||
| 19 | + "permitekmz" "sim" | ||
| 20 | + "description_template" "" | ||
| 21 | + "LTEMPOITEMTITULO" "NOMELOC" | ||
| 22 | + "iconetema" "" | ||
| 23 | + "LTEMPOITEMLINK" "" | ||
| 24 | + "METAESTAT_CODIGO_TIPO_REGIAO" "" | ||
| 25 | + "palletefile" "" | ||
| 26 | + "LTEMPOFORMATODATA" "iso8601" | ||
| 27 | + "permitedownload" "sim" | ||
| 28 | + "LTEMPOITEMICONE" "" | ||
| 29 | + "permitecomentario" "" | ||
| 30 | + "metaestat" "" | ||
| 31 | + "download" "SIM" | ||
| 32 | + "itembuscarapida" "NOMELOC" | ||
| 33 | + "arquivokmz" "" | ||
| 34 | + "arquivodownload" "" | ||
| 35 | + "transitioneffect" "NAO" | ||
| 36 | + "permiteogc" "sim" | ||
| 37 | + "permitekml" "sim" | ||
| 38 | + "convcaracter" "" | ||
| 39 | + "TEMA" "Localidades (usar com timeline)" | ||
| 40 | + "LTEMPOCONVENCODE" "SIM" | ||
| 41 | + "editorsql" "" | ||
| 42 | + "legendaimg" "" | ||
| 43 | + "LTEMPOITEMFIM" "" | ||
| 44 | + END # METADATA | ||
| 45 | + | ||
| 46 | + NAME "_llocali" | ||
| 47 | + STATUS DEFAULT | ||
| 48 | + TEMPLATE "none.htm" | ||
| 49 | + TILEITEM "location" | ||
| 50 | + TYPE POINT | ||
| 51 | + UNITS METERS | ||
| 52 | + CLASS | ||
| 53 | + NAME "Vila" | ||
| 54 | + EXPRESSION ('[TIPO]'eq'Vila') | ||
| 55 | + STYLE | ||
| 56 | + ANGLE 0 | ||
| 57 | + COLOR 250 193 4 | ||
| 58 | + OFFSET 0 0 | ||
| 59 | + SIZE 20 | ||
| 60 | + SYMBOL "/var/www/i3geo/imagens/google/condominium.png" | ||
| 61 | + END # STYLE | ||
| 62 | + END # CLASS | ||
| 63 | + CLASS | ||
| 64 | + NAME "Cidade" | ||
| 65 | + EXPRESSION ('[TIPO]'eq'Cidade') | ||
| 66 | + STYLE | ||
| 67 | + ANGLE 0 | ||
| 68 | + COLOR 62 9 41 | ||
| 69 | + OFFSET 0 0 | ||
| 70 | + SIZE 20 | ||
| 71 | + SYMBOL "/var/www/i3geo/imagens/google/condominium1.png" | ||
| 72 | + END # STYLE | ||
| 73 | + END # CLASS | ||
| 74 | + CLASS | ||
| 75 | + NAME "Capital" | ||
| 76 | + EXPRESSION ('[TIPO]'eq'Capital') | ||
| 77 | + STYLE | ||
| 78 | + ANGLE 0 | ||
| 79 | + COLOR 112 203 244 | ||
| 80 | + OFFSET 0 0 | ||
| 81 | + SIZE 6 | ||
| 82 | + SYMBOL "vila" | ||
| 83 | + END # STYLE | ||
| 84 | + END # CLASS | ||
| 85 | + END # LAYER | ||
| 85 | 86 | ||
| 86 | END # MAP | 87 | END # MAP |
| 87 | 88 |