Commit 3a14264151265ad1e67db3f60c89cde3bc26026a
1 parent
6b507d8a
Exists in
master
and in
7 other branches
--no commit message
Showing
3 changed files
with
72 additions
and
53 deletions
Show diff stats
admin/admin.db
No preview for this file type
classesphp/classe_toponimia.php
@@ -177,6 +177,7 @@ Retorno: | @@ -177,6 +177,7 @@ Retorno: | ||
177 | error_reporting(0); | 177 | error_reporting(0); |
178 | if(!$this->layer){return "erro";} | 178 | if(!$this->layer){return "erro";} |
179 | $this->removeToponimia(); | 179 | $this->removeToponimia(); |
180 | + | ||
180 | if (!isset($tipo)){$tipo = "";} | 181 | if (!isset($tipo)){$tipo = "";} |
181 | if ($item != "") //o layer nao tem tabela mas tem toponimia | 182 | if ($item != "") //o layer nao tem tabela mas tem toponimia |
182 | { | 183 | { |
@@ -186,7 +187,7 @@ Retorno: | @@ -186,7 +187,7 @@ Retorno: | ||
186 | $nomer = nomeRandomico(); | 187 | $nomer = nomeRandomico(); |
187 | $novolayer->set("name",$nomer); | 188 | $novolayer->set("name",$nomer); |
188 | $novolayer->set("group",""); | 189 | $novolayer->set("group",""); |
189 | - $novolayer->set("type",MS_LAYER_ANNOTATION); | 190 | + $novolayer->set("type",$this->layer->type); |
190 | $nclasses = $novolayer->numclasses; | 191 | $nclasses = $novolayer->numclasses; |
191 | for ($i=0; $i < $nclasses; ++$i){ | 192 | for ($i=0; $i < $nclasses; ++$i){ |
192 | $c = $novolayer->getclass($i); | 193 | $c = $novolayer->getclass($i); |
@@ -242,13 +243,15 @@ Retorno: | @@ -242,13 +243,15 @@ Retorno: | ||
242 | } | 243 | } |
243 | if ($fonte != "bitmap") | 244 | if ($fonte != "bitmap") |
244 | { | 245 | { |
245 | - $label->set("type",MS_TRUETYPE); | 246 | + //$label->set("type",MS_TRUETYPE); |
247 | + $label->updatefromstring("LABEL TYPE TRUETYPE END"); | ||
246 | $label->set("font",$fonte); | 248 | $label->set("font",$fonte); |
247 | $label->set("size",$tamanho); | 249 | $label->set("size",$tamanho); |
248 | } | 250 | } |
249 | else | 251 | else |
250 | { | 252 | { |
251 | - $label->set("type",MS_BITMAP); | 253 | + //$label->set("type",MS_BITMAP); |
254 | + $label->updatefromstring("LABEL TYPE BITMAP END"); | ||
252 | //$label->set("font",$fonte); | 255 | //$label->set("font",$fonte); |
253 | $t = MS_TINY; | 256 | $t = MS_TINY; |
254 | if ($tamanho > 5 ){$t = MS_TINY;} | 257 | if ($tamanho > 5 ){$t = MS_TINY;} |
@@ -261,10 +264,10 @@ Retorno: | @@ -261,10 +264,10 @@ Retorno: | ||
261 | if($angulo > 0){ | 264 | if($angulo > 0){ |
262 | $label->set("angle",$angulo); | 265 | $label->set("angle",$angulo); |
263 | } | 266 | } |
264 | - if($angulo == "AUTO") | ||
265 | - {$label->updatefromstring("LABEL ANGLE AUTO END");} | ||
266 | - if (strtoupper($angulo) == "CURVO" || strtoupper($angulo) == "FOLLOW") | ||
267 | - { | 267 | + if($angulo == "AUTO"){ |
268 | + $label->updatefromstring("LABEL ANGLE AUTO END"); | ||
269 | + } | ||
270 | + if (strtoupper($angulo) == "CURVO" || strtoupper($angulo) == "FOLLOW"){ | ||
268 | $label->updatefromstring("LABEL ANGLE FOLLOW END"); | 271 | $label->updatefromstring("LABEL ANGLE FOLLOW END"); |
269 | } | 272 | } |
270 | corE($label,$cor,"color"); | 273 | corE($label,$cor,"color"); |
ferramentas/editorol/editorol.js
@@ -657,8 +657,8 @@ i3GEO.editorOL = | @@ -657,8 +657,8 @@ i3GEO.editorOL = | ||
657 | YAHOO.legendaeditorOL.container.panel.show(); | 657 | YAHOO.legendaeditorOL.container.panel.show(); |
658 | } | 658 | } |
659 | }, | 659 | }, |
660 | - captura : function(x,y,tema) { | ||
661 | - var d = 0.1, | 660 | + captura : function(x,y,tema,idunico) { |
661 | + var d = 0.001, | ||
662 | layer = i3geoOL.getLayersByName(tema)[0], | 662 | layer = i3geoOL.getLayersByName(tema)[0], |
663 | xy = [x,y], | 663 | xy = [x,y], |
664 | u = layer.getSource().getUrls()[0], | 664 | u = layer.getSource().getUrls()[0], |
@@ -719,6 +719,9 @@ i3GEO.editorOL = | @@ -719,6 +719,9 @@ i3GEO.editorOL = | ||
719 | }) | 719 | }) |
720 | ); | 720 | ); |
721 | f.setId(i3GEO.util.uid()); | 721 | f.setId(i3GEO.util.uid()); |
722 | + f.setProperties({ | ||
723 | + idUnico : idunico | ||
724 | + }); | ||
722 | c.addFeature(f); | 725 | c.addFeature(f); |
723 | } | 726 | } |
724 | }; | 727 | }; |
@@ -800,51 +803,54 @@ i3GEO.editorOL = | @@ -800,51 +803,54 @@ i3GEO.editorOL = | ||
800 | }, | 803 | }, |
801 | //TODO verificar se esta funcionando | 804 | //TODO verificar se esta funcionando |
802 | salvaGeo : function() { | 805 | salvaGeo : function() { |
803 | - var geos = i3GEO.desenho.layergrafico.selectedFeatures, n = geos.length, funcaoOK = | ||
804 | - function() { | 806 | + var s = i3GEO.desenho.layergrafico.getSource(), |
807 | + n = i3GEO.editorOL.idsSelecionados.length, | ||
808 | + funcaoOK = function() { | ||
805 | // verifica se a geometria contem o atributo que indica a coluna ou codigo unico | 809 | // verifica se a geometria contem o atributo que indica a coluna ou codigo unico |
806 | - if (geos[0].geometry) { | ||
807 | - var registros = "", valorunico = "", nometema = $i("editorOLcomboTemaEditavel").value, key = "", tema, redesenha, p, g = | ||
808 | - i3GEO.editorOL.google2wgs(geos[0].geometry); | ||
809 | - if (nometema == "") { | ||
810 | - return; | ||
811 | - } | ||
812 | - tema = i3GEO.arvoreDeCamadas.pegaTema(nometema, "", "name"); | ||
813 | - // o tema contem o indicador de qual e a coluna que contem o identificador unico | ||
814 | - if (geos[0].attributes.registros) { | ||
815 | - registros = geos[0].attributes.registros; | ||
816 | - for (key in registros) { | ||
817 | - if (registros[key] && key == tema.colunaidunico) { | ||
818 | - valorunico = registros[key]; | ||
819 | - } | ||
820 | - } | ||
821 | - } | ||
822 | - redesenha = function(retorno) { | ||
823 | - i3GEO.janela.fechaAguarde("aguardeSalvaPonto"); | ||
824 | - i3GEO.desenho.layergrafico.removeFeatures(i3GEO.desenho.layergrafico.selectedFeatures); | ||
825 | - i3GEO.Interface.atualizaTema("", nometema); | ||
826 | - }; | ||
827 | - i3GEO.janela.AGUARDEMODAL = true; | ||
828 | - i3GEO.janela.abreAguarde("aguardeSalvaPonto", $trad("adic") + "..."); | ||
829 | - i3GEO.janela.AGUARDEMODAL = false; | 810 | + var f = s.getFeatureById(i3GEO.editorOL.idsSelecionados[0]), |
811 | + g = f.getGeometry(), | ||
812 | + tema = $i("editorOLcomboTemaEditavel").value, | ||
813 | + redesenha, p, format; | ||
830 | 814 | ||
831 | - // cria um novo registro | ||
832 | - if (valorunico == "") { | ||
833 | - p = | ||
834 | - i3GEO.configura.locaplic + "/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid=" | ||
835 | - + i3GEO.configura.sid; | ||
836 | - cpJSON.call(p, "foo", redesenha, "&tema=" + nometema + "&wkt=" + g); | ||
837 | - } else { | ||
838 | - // atualiza a geometria | ||
839 | - p = | ||
840 | - i3GEO.configura.locaplic + "/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid=" | ||
841 | - + i3GEO.configura.sid; | ||
842 | - cpJSON.call(p, "foo", redesenha, "&idunico=" + valorunico + "&tema=" + nometema + "&wkt=" + g); | ||
843 | - } | 815 | + g = i3GEO.editorOL.google2wgs(g); |
816 | + format = new ol.format.WKT(); | ||
817 | + f.setGeometry(g); | ||
818 | + | ||
819 | + if (tema == "") { | ||
820 | + return; | ||
821 | + } | ||
822 | + redesenha = function(retorno) { | ||
823 | + i3GEO.janela.fechaAguarde("aguardeSalvaPonto"); | ||
824 | + i3GEO.editorOL.removeFeaturesSel(); | ||
825 | + i3GEO.Interface.atualizaTema("", tema); | ||
826 | + }; | ||
827 | + i3GEO.janela.AGUARDEMODAL = true; | ||
828 | + i3GEO.janela.abreAguarde("aguardeSalvaPonto", $trad("adic") + "..."); | ||
829 | + i3GEO.janela.AGUARDEMODAL = false; | ||
830 | + | ||
831 | + // cria um novo registro | ||
832 | + if(!f.getProperties().idUnico || f.getProperties().idUnico == ""){ | ||
833 | + p = i3GEO.configura.locaplic | ||
834 | + + "/ferramentas/editortema/exec.php?funcao=adicionaGeometria&g_sid=" | ||
835 | + + i3GEO.configura.sid; | ||
836 | + cpJSON.call(p, "foo", redesenha, "&tema=" + tema + "&wkt=" + format.writeFeatures([f])); | ||
837 | + } else { | ||
838 | + // atualiza a geometria | ||
839 | + p = i3GEO.configura.locaplic | ||
840 | + + "/ferramentas/editortema/exec.php?funcao=atualizaGeometria&g_sid=" | ||
841 | + + i3GEO.configura.sid; | ||
842 | + cpJSON.call( | ||
843 | + p, | ||
844 | + "foo", | ||
845 | + redesenha, | ||
846 | + "&idunico=" + f.getProperties().idUnico + "&tema=" + tema + "&wkt=" + format.writeFeatures([f]) | ||
847 | + ); | ||
844 | } | 848 | } |
845 | - }, funcaoCombo = function(obj) { | ||
846 | - $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; | ||
847 | - }, texto = $trad("stema") + ":<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; | 849 | + }, |
850 | + funcaoCombo = function(obj) { | ||
851 | + $i("editorOLondeComboTemaEditavel").innerHTML = obj.dados; | ||
852 | + }, | ||
853 | + texto = $trad("stema") + ":<br><div id=editorOLondeComboTemaEditavel ></div><br><br>"; | ||
848 | if (n != 1) { | 854 | if (n != 1) { |
849 | i3GEO.janela.tempoMsg($trad("seluma")); | 855 | i3GEO.janela.tempoMsg($trad("seluma")); |
850 | } else { | 856 | } else { |
@@ -1430,7 +1436,8 @@ i3GEO.editorOL = | @@ -1430,7 +1436,8 @@ i3GEO.editorOL = | ||
1430 | url = layer.getSource().getUrls()[0]; | 1436 | url = layer.getSource().getUrls()[0]; |
1431 | xy = evt.target.downPx_; | 1437 | xy = evt.target.downPx_; |
1432 | retorno = function(r){ | 1438 | retorno = function(r){ |
1433 | - var texto = "", lonlattexto, xy, temp, temp1, n, i, f = [], textoN = r.split(":"); | 1439 | + var valorunico = "", camada, texto = "", lonlattexto, xy, temp, temp1, n, i, f = [], textoN = r.split(":"); |
1440 | + camada = i3GEO.arvoreDeCamadas.pegaTema(tema.value, "", "name"); | ||
1434 | xy = evt.feature.getGeometry().getFirstCoordinate(); | 1441 | xy = evt.feature.getGeometry().getFirstCoordinate(); |
1435 | i3GEO.eventos.cliquePerm.ativo = true; | 1442 | i3GEO.eventos.cliquePerm.ativo = true; |
1436 | try { | 1443 | try { |
@@ -1445,8 +1452,14 @@ i3GEO.editorOL = | @@ -1445,8 +1452,14 @@ i3GEO.editorOL = | ||
1445 | for (i = 0; i < n; i++) { | 1452 | for (i = 0; i < n; i++) { |
1446 | temp1 = temp[i].replace(/^\s+/, ""); | 1453 | temp1 = temp[i].replace(/^\s+/, ""); |
1447 | temp1 = temp1.replace(/\s+$/, ""); | 1454 | temp1 = temp1.replace(/\s+$/, ""); |
1448 | - if (temp1 != "") | 1455 | + if (temp1 != ""){ |
1456 | + //verifica se a coluna eh o idunico e pega o valor | ||
1457 | + if(camada.colunaidunico != "" && temp1.split(":")[0].trim() == camada.colunaidunico){ | ||
1458 | + valorunico = temp1.split(":")[1].trim(); | ||
1459 | + temp1 = "(*) "+temp1; | ||
1460 | + } | ||
1449 | f.push(temp1); | 1461 | f.push(temp1); |
1462 | + } | ||
1450 | } | 1463 | } |
1451 | texto = "<pre>" + f.join("<br>") + "</pre>"; | 1464 | texto = "<pre>" + f.join("<br>") + "</pre>"; |
1452 | } | 1465 | } |
@@ -1458,6 +1471,9 @@ i3GEO.editorOL = | @@ -1458,6 +1471,9 @@ i3GEO.editorOL = | ||
1458 | + xy[1] | 1471 | + xy[1] |
1459 | + ",\"" | 1472 | + ",\"" |
1460 | + tema.value | 1473 | + tema.value |
1474 | + + "\"" | ||
1475 | + + ",\"" | ||
1476 | + + valorunico | ||
1461 | + "\")'>edita geometria</span><br>"; | 1477 | + "\")'>edita geometria</span><br>"; |
1462 | i3GEO.Interface.openlayers.balao("<div style='text-align:left' >" + lonlattexto + texto + "</div>","", xy[0], xy[1], false, false); | 1478 | i3GEO.Interface.openlayers.balao("<div style='text-align:left' >" + lonlattexto + texto + "</div>","", xy[0], xy[1], false, false); |
1463 | i3GEO.eventos.cliquePerm.ativo = false; | 1479 | i3GEO.eventos.cliquePerm.ativo = false; |