diff --git a/ferramentas/parametrossql/dicionario.js b/ferramentas/parametrossql/dicionario.js index 4a231d6..33c1088 100755 --- a/ferramentas/parametrossql/dicionario.js +++ b/ferramentas/parametrossql/dicionario.js @@ -9,5 +9,10 @@ i3GEOF.parametrossql.dicionario = { pt : "Aplicar", en : "Apply", es : "Aplicar" + } ], + 'nova' : [ { + pt : "Cria uma nova camada", + en : "", + es : "" } ] }; \ No newline at end of file diff --git a/ferramentas/parametrossql/exec.php b/ferramentas/parametrossql/exec.php index 85d10e0..a8ba276 100755 --- a/ferramentas/parametrossql/exec.php +++ b/ferramentas/parametrossql/exec.php @@ -61,6 +61,10 @@ switch (strtoupper($funcao)) $map = ms_newMapObj($map_file); //pega o layer $layer = $map->getlayerbyname($tema); + if($_GET["nova"] == "true"){ + $layer = ms_newLayerObj($map,$layer); + $layer->name = "novo".nomeRandomico(); + } $map1 = @ms_newMapObj($locaplic."/temas/".$layer->getmetadata("nomeoriginal").".map"); if($map1){ $layer1 = $map1->getlayerbyname($layer->getmetadata("nomeoriginal")); diff --git a/ferramentas/parametrossql/index.js b/ferramentas/parametrossql/index.js index 21bd849..777420a 100755 --- a/ferramentas/parametrossql/index.js +++ b/ferramentas/parametrossql/index.js @@ -58,6 +58,7 @@ i3GEOF.parametrossql = { mustacheHash : function(camada) { var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.parametrossql.dicionario); dicionario["camada"] = camada.name; + dicionario["novaCamada"] = camada.novaCamada; return dicionario; }, /* @@ -79,6 +80,9 @@ i3GEOF.parametrossql = { }); return; } + if(camada.novaCamada == undefined){ + camada.novaCamada = "hidden"; + } $i(iddiv).innerHTML = i3GEOF.parametrossql.html(camada); var b, f = i3GEOF.parametrossql.formulario(camada); @@ -106,7 +110,6 @@ i3GEOF.parametrossql = { Cria a janela flutuante para controle da ferramenta. */ iniciaJanelaFlutuante: function(camada){ - //verifica se deve ser aberto o formulario if(camada.plugini3geo.ativo != undefined && camada.plugini3geo.ativo === "nao"){ i3GEOF.parametrossql.iniciaDefault(camada); } @@ -267,7 +270,7 @@ i3GEOF.parametrossql = { } else{ ins += "
"+p.titulo+"
"; - ins += "
Auarde...
"; + ins += "
Aguarde...
"; } } } @@ -324,8 +327,8 @@ i3GEOF.parametrossql = { for (i = 0; i
- +
+ +
+ \ No newline at end of file diff --git a/interface/templates/camada.html b/interface/templates/camada.html index c84e1c2..cced77d 100755 --- a/interface/templates/camada.html +++ b/interface/templates/camada.html @@ -11,7 +11,7 @@
- + diff --git a/js/compactados/plugini3geo_compacto.js b/js/compactados/plugini3geo_compacto.js index 2d10cab..5142488 100644 --- a/js/compactados/plugini3geo_compacto.js +++ b/js/compactados/plugini3geo_compacto.js @@ -1 +1 @@ -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; \ No newline at end of file +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada,novaCamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}if(!novaCamada){camada.novaCamada="hidden"}else{camada.novaCamada=""}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; \ No newline at end of file diff --git a/js/compactajs.php b/js/compactajs.php index 0bd98b0..0872aa1 100755 --- a/js/compactajs.php +++ b/js/compactajs.php @@ -1,7 +1,7 @@ Compacta js -

Compactador de código Javascript da versão 7.0

+

Compactador de código Javascript

Esse programa deve ser executado sempre que forem feitas alterações nos códigos javascript principais do i3Geo (aqueles que ficam na pasta i3geo/js). A compactação reduz o tamanho dos arquivos e faz a concatenação de vários arquivos em um só. O compactador atua também sobre os arquivos CSS existentes em i3geo/css. Ao utilizar o javascript i3geo/js/i3geo.js o arquivo compactado será carregado, assim como o CSS, correspondentes a última versão do i3Geo. diff --git a/js/i3geo_tudo_compacto7.js b/js/i3geo_tudo_compacto7.js index 7882ca7..817f665 100755 --- a/js/i3geo_tudo_compacto7.js +++ b/js/i3geo_tudo_compacto7.js @@ -283,7 +283,7 @@ if(typeof(i3GEOF)==='undefined'){var i3GEOF={}}i3GEO.login={divnomelogin:"i3GEON if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.marcador={IDONDE:"",TEMPLATE:"",config:{"template":"templates/ferramentasSend.html"},carregaTemplates:function(){$.get(i3GEO.marcador.config.template,function(template){i3GEO.template.marcador=template;i3GEO.marcador.inicia()})},inicia:function(obj){if(obj&&$(obj).attr("data-template")!=undefined){i3GEO.marcador.config.template=$(obj).attr("data-template")}if(!i3GEO.template.marcador){i3GEO.marcador.carregaTemplates();return}else{var janela=i3GEO.janela.cria("380px","400px","","","",""+$trad("x79")+"

","i3GEOmarcador",false,"hd","","","",true,"","","","");i3GEO.marcador.IDONDE=janela[2].id;i3GEO.marcador.redesenha()}},prompt:function(){i3GEO.janela.prompt($trad("x77"),i3GEO.marcador.armazena,"")},armazena:function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),ext=i3GEO.parametros.mapexten,nome="Marcador",valor;if($i("i3GEOjanelaprompt")){nome=$i("i3GEOjanelaprompt").value}valor=nome+"|"+ext;if(cookies){cookies+=":"}else{cookies=""}valor=cookies+valor;i3GEO.util.insereCookie("marcadoresDoI3Geo",valor,365);i3GEO.marcador.redesenha()},redesenha:function(){var t=Mustache.to_html("{{#data}}"+i3GEO.template.marcador+"{{/data}}",{"data":i3GEO.marcador.itensMenu()});$("#"+i3GEO.marcador.IDONDE).html("
"+t+"
")},exporta:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),texto;if(!c){c=""}texto="

"+$trad("x78")+"

";i3GEO.janela.mensagemSimples(texto,$trad("x79"))},exportaShp:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),temp=function(retorno){i3GEO.temaAtivo=retorno.data;i3GEO.atualiza()};if(c){i3GEO.php.marcadores2shp(temp)}},importa:function(){var temp=function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),novos="";if($i("i3GEOjanelaprompt")){novos=$i("i3GEOjanelaprompt").value}if(cookies){cookies+=":"}else{cookies=""}novos=cookies+novos;i3GEO.util.insereCookie("marcadoresDoI3Geo",novos,365);i3GEO.marcador.redesenha()};i3GEO.janela.prompt($trad("x83"),temp,"")},remove:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp,novos=[];for(i=0;idelete_forever"})}}}return itens}}; // //compactados/plugini3geo_compacto.js -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada,novaCamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}if(!novaCamada){camada.novaCamada="hidden"}else{camada.novaCamada=""}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; // //compactados/catalogoMenus_compacto.js i3GEO.catalogoMenus={IDSMENUS:[],MENU:"",GRUPO:"",SUBGRUPO:"",config:{"templateDir":"templates/dir.html","templateTema":"templates/tema.html","idOndeMenus":"catalogoMenus","idCatalogoPrincipal":"catalogoPrincipal","idCatalogoNavegacao":"catalogoNavegacao","idOndeMigalha":"catalogoMigalha"},carregaTemplates:function(){var t1=i3GEO.catalogoMenus.config.templateDir,t2=i3GEO.catalogoMenus.config.templateTema,t3=$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).attr("data-template");$.when($.get(t1),$.get(t2),$.get(t3)).done(function(r1,r2,r3){i3GEO.template.dir=r1[0];i3GEO.template.tema=r2[0];i3GEO.template.catalogoMigalha=r3[0];i3GEO.catalogoMenus.listaMenus()}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return})},aguarde:function(){$("#"+i3GEO.catalogoMenus.config.idOndeMenus).html($trad("o1"))},atualizaMigalha:function(nome,onclick){var t=Mustache.to_html(i3GEO.template.catalogoMigalha,{"nome":nome,"onclick":onclick});$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).html(t)},escondeCatalogoPrincipal:function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoPrincipal).hide()},mostraCatalogoPrincipal:function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).hide();$("#"+i3GEO.catalogoMenus.config.idCatalogoPrincipal).show()})},adicionaTema:function(tid){var tema=i3GEO.arvoreDeCamadas.pegaTema(tid),ck;if(tema!==""){ck=i3GEO.arvoreDeCamadas.capturaCheckBox(tid);if(ck!=false&&ck.onclick){ck.checked=!ck.checked;ck.onclick.call(ck)}else{i3GEO.janela.tempoMsg($trad("x76"))}}else{i3GEO.php.adtema(i3GEO.atualiza,tid)}},listaMenus:function(config){if(config){$.each(config,function(i,v){i3GEO.catalogoMenus.config[i]=v})}i3GEO.catalogoMenus.aguarde();if(!i3GEO.template.dir||!i3GEO.template.tema||!i3GEO.template.catalogoMigalha){i3GEO.catalogoMenus.carregaTemplates();return}else{config=i3GEO.catalogoMenus.config;if(i3GEO.arvoreDeTemas&&i3GEO.arvoreDeTemas.IDSMENUS&&i3GEO.arvoreDeTemas.IDSMENUS.length>0){i3GEO.catalogoMenus.IDSMENUS=i3GEO.arvoreDeTemas.IDSMENUS}var montaMenus=function(dados){var menus=dados.data,clone=[],n=i3GEO.catalogoMenus.IDSMENUS.length,t;$.each(menus,function(i,v){if(n===0||i3GEO.catalogoMenus.IDSMENUS.indexOf(v.idmenu)>=0||i3GEO.catalogoMenus.IDSMENUS.indexOf(v.idmenu*1)>=0){v.nome=v.nomemenu;v.descricao=v.desc;v.onclick="i3GEO.catalogoMenus.listaGrupos("+v.idmenu+",'"+v.nome+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}});t=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});$("#"+config.idOndeMenus).html(t)};i3GEO.php.pegalistademenus(montaMenus)}},listaGrupos:function(idmenu,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.MENU=nomeMigalha;i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.mostraCatalogoPrincipal()");var montaGrupos=function(dados){var grupos=dados.data.grupos,clone=[],config=i3GEO.catalogoMenus.config,g="",t="",temas=[];$.each(grupos,function(i,v){if(v.id_n1){v.onclick="i3GEO.catalogoMenus.listaSubGrupos("+idmenu+","+v.id_n1+",'"+v.nome+"','"+nomeMigalha+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}if(v.temasraiz){temas=v.temasraiz}});g=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});clone=[];$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+config.idCatalogoNavegacao).html(t+g);$("#"+config.idCatalogoPrincipal).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadegrupos(montaGrupos,idmenu,"nao")},listaSubGrupos:function(idmenu,id_n1,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.GRUPO=nomeMigalha;i3GEO.catalogoMenus.escondeCatalogoPrincipal();i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.listaGrupos('"+idmenu+"','"+i3GEO.catalogoMenus.MENU+"')");var montaSubGrupos=function(dados){var subgrupos=dados.data.subgrupo,clone=[],g="",t="",temas;$.each(subgrupos,function(i,v){if(v.id_n2){v.onclick="i3GEO.catalogoMenus.listaTemasSubgrupo("+idmenu+","+id_n1+","+v.id_n2+",'"+v.nome+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}});g=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});clone=[];temas=dados.data.temasgrupo;$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).html(t+g);$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadeSubgrupos(montaSubGrupos,idmenu,id_n1)},listaTemasSubgrupo:function(idmenu,id_n1,id_n2,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.SUBGRUPO=nomeMigalha;i3GEO.catalogoMenus.escondeCatalogoPrincipal();i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.listaSubGrupos("+idmenu+","+id_n1+",'"+i3GEO.catalogoMenus.GRUPO+"')");var montaTemas=function(dados){var temas=dados.data.temas,clone=[],t="";clone=[];$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).html(t);$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadetemas(montaTemas,idmenu,id_n1,id_n2)}}; diff --git a/js/i3geo_tudo_compacto7.js.php b/js/i3geo_tudo_compacto7.js.php index 8764331..9392d53 100644 --- a/js/i3geo_tudo_compacto7.js.php +++ b/js/i3geo_tudo_compacto7.js.php @@ -283,7 +283,7 @@ if(typeof(i3GEOF)==='undefined'){var i3GEOF={}}i3GEO.login={divnomelogin:"i3GEON if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.marcador={IDONDE:"",TEMPLATE:"",config:{"template":"templates/ferramentasSend.html"},carregaTemplates:function(){$.get(i3GEO.marcador.config.template,function(template){i3GEO.template.marcador=template;i3GEO.marcador.inicia()})},inicia:function(obj){if(obj&&$(obj).attr("data-template")!=undefined){i3GEO.marcador.config.template=$(obj).attr("data-template")}if(!i3GEO.template.marcador){i3GEO.marcador.carregaTemplates();return}else{var janela=i3GEO.janela.cria("380px","400px","","","",""+$trad("x79")+"","i3GEOmarcador",false,"hd","","","",true,"","","","");i3GEO.marcador.IDONDE=janela[2].id;i3GEO.marcador.redesenha()}},prompt:function(){i3GEO.janela.prompt($trad("x77"),i3GEO.marcador.armazena,"")},armazena:function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),ext=i3GEO.parametros.mapexten,nome="Marcador",valor;if($i("i3GEOjanelaprompt")){nome=$i("i3GEOjanelaprompt").value}valor=nome+"|"+ext;if(cookies){cookies+=":"}else{cookies=""}valor=cookies+valor;i3GEO.util.insereCookie("marcadoresDoI3Geo",valor,365);i3GEO.marcador.redesenha()},redesenha:function(){var t=Mustache.to_html("{{#data}}"+i3GEO.template.marcador+"{{/data}}",{"data":i3GEO.marcador.itensMenu()});$("#"+i3GEO.marcador.IDONDE).html("

"+t+"
")},exporta:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),texto;if(!c){c=""}texto="

"+$trad("x78")+"

";i3GEO.janela.mensagemSimples(texto,$trad("x79"))},exportaShp:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),temp=function(retorno){i3GEO.temaAtivo=retorno.data;i3GEO.atualiza()};if(c){i3GEO.php.marcadores2shp(temp)}},importa:function(){var temp=function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),novos="";if($i("i3GEOjanelaprompt")){novos=$i("i3GEOjanelaprompt").value}if(cookies){cookies+=":"}else{cookies=""}novos=cookies+novos;i3GEO.util.insereCookie("marcadoresDoI3Geo",novos,365);i3GEO.marcador.redesenha()};i3GEO.janela.prompt($trad("x83"),temp,"")},remove:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp,novos=[];for(i=0;idelete_forever"})}}}return itens}}; // //compactados/plugini3geo_compacto.js -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(camada.plugini3geo){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)}},formAdmin:function(plugin,configString,onde){var html=i3GEO.pluginI3geo[plugin].formAdmin(configString,onde);if(!onde){return html}else{return false}},iconeArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name)}else{return false}},clickArvoreDeCamadas:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name)}else{return false}},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();i3GEO.pluginI3geo.OBJETOS[nomecamada]=false;delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},layerMashup:function(Interface,camada,epsg,parametros){if(camada.plugini3geo&&camada.plugini3geo!=""&&i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup){var l=i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada,epsg,parametros);return l}else{return[false]}},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.heatmap){var t1=i3GEO.configura.locaplic+"/js/templates/heatmapForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.heatmap=r1;i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="heatmap"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"coluna":parametros.coluna,"valorPonto":parametros.valorPonto,"radius":parametros.radius,"tipoGradiente":parametros.tipoGradiente,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.heatmap,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoHeatmapGm"+camada.name)){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",criaLayer;criaLayer=function(){var g,v=true,temp,heatmap,data=heatmap_dados,datalen=heatmap_dados.length,nudata=[];if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;g=new ol.geom.Point([data[datalen].lng*1,data[datalen].lat*1]);g=i3GEO.util.projGeo2OSM(g);nudata.push(new ol.Feature({geometry:g,weight:temp}))}if(camada.status==="0"){v=false}if(!camada.plugini3geo.parametros.max){camada.plugini3geo.parametros.max=10}heatmap=new ol.layer.Heatmap({source:new ol.source.Vector({features:nudata}),blur:camada.plugini3geo.parametros.max*1,title:camada.tema,opacity:(camada.transparency*1)/100,radius:camada.plugini3geo.parametros.radius*1,name:camada.name,isBaseLayer:false,visible:v});i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,"")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=122"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.markercluster){var t1=i3GEO.configura.locaplic+"/js/templates/markerclusterForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.markercluster=r1;i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="markercluster"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"gridSize":parametros.gridSize,"tipoEstilos":parametros.tipoEstilos,"color":i3GEO.util.hex2rgb(parametros.color),"strokecolor":i3GEO.util.hex2rgb(parametros.strokecolor),"textcolor":i3GEO.util.hex2rgb(parametros.textcolor),"linkAjuda":i3GEO.pluginI3geo.linkAjuda("markercluster"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.markercluster,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;i3GEO.util.aplicaAquarela(onde);return false}else{return ins}},parametrosFormAdmin:function(onde){return'{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){if(document.getElementById("i3GeoClustermapGm")){i3GEO.janela.fechaAguarde("aguardePlugin");return}var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i9){r=7*(size+"").length}var style=styleCache[size];if(!style){if(size==1){style=new ol.style.Style({image:new ol.style.Circle({radius:6,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})})});styleCache[size]=style}else{style=new ol.style.Style({image:new ol.style.Circle({radius:r,stroke:new ol.style.Stroke({color:camada.plugini3geo.parametros.strokecolor}),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.color})}),text:new ol.style.Text({text:size.toString(),fill:new ol.style.Fill({color:camada.plugini3geo.parametros.textcolor}),stroke:new ol.style.Stroke({color:'rgba(0, 0, 0, 0.6)',width:1})})});styleCache[size]=style}}return style}});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null;objMapa.addLayer(markercluster)};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos;i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=126"},formAdmin:function(config,onde,tema,salva,remove){if(!i3GEO.template.layerkml){var t1=i3GEO.configura.locaplic+"/js/templates/layerkmlForm_mst.html";$.get(t1).done(function(r1){i3GEO.template.layerkml=r1;i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove)}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return});return}var mustache,parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=JSON.parse(config);if(config.plugin!="layerkml"){config=JSON.parse(configDefault)}parametros=config.parametros;mustache={"url":parametros.url,"linkAjuda":i3GEO.pluginI3geo.linkAjuda("layerkml"),"tema":tema,"salvaPlugin":salva,"removePlugin":remove};ins=Mustache.render(i3GEO.template.layerkml,$.extend({},mustache,i3GEO.idioma.OBJETOIDIOMA));if($i(onde)){$i(onde).innerHTML=ins;return false}else{return ins}},iconeArvoreDeCamadas:function(nomecamada){return false},clickArvoreDeCamadas:function(nomecamada){return false},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},layerMashup:function(camada,epsg){i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa);return[]},inicia:function(camada,objMapa){var layerkml,url,temp;url=i3GEO.configura.locaplic+"/ferramentas/layerkml/getkml.php?sid="+i3GEO.configura.sid+"&tema="+camada.nomeoriginal;layerkml=new ol.layer.Vector({name:camada.name,isBaseLayer:false,source:new ol.source.Vector({url:url,format:new ol.format.KML({extractStyles:true}),tipoServico:"kml"})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}temp=function(pixel){var feature,chaves,c,i=0,html="",prop,g;feature=i3geoOL.forEachFeatureAtPixel(pixel,function(feature,layer){return feature});if(feature){i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar=false;i3GEO.Interface.openlayers.BALAOPROP.classeCadeado="i3GEOiconeFechado";chaves=feature.getKeys();prop=feature.getProperties();c=chaves.length;for(i=0;i";return icone},clickArvoreDeCamadas:function(nomecamada){var icone="

Parâmetros";return icone},buscaParForm:function(nomecamada,novaCamada){var p,cp,temp,s;temp=function(retorno){var camada;retorno.data.ativo="sim";if(i3GEO.arvoreDeCamadas){camada=i3GEO.arvoreDeCamadas.pegaTema(nomecamada);camada.plugini3geo=retorno.data}else{camada={plugini3geo:retorno.data,name:nomecamada}}if(!novaCamada){camada.novaCamada="hidden"}else{camada.novaCamada=""}i3GEO.pluginI3geo.parametrossql.inicia(camada)};s=i3GEO.configura.sid;if(s===undefined){s=""}p=i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+s+"&funcao=PARAMETROSPLUGIN&tema="+nomecamada;cp=new cpaint();cp.set_response_type("JSON");cp.call(p,"foo",temp)},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada},layerMashup:function(camada,epsg,funcao,parametros){var p=[],tile,url;if(!camada.cache){camada["cache"]="NAO"}if(!camada.transitioneffect){camada["transitioneffect"]="SIM"}if(camada["transitioneffect"]==="SIM"){camada["transitioneffect"]="resize"}else{camada["transitioneffect"]=null}if(camada["tiles"]==="NAO"){tile=false}else{tile=true}url=i3GEO.configura.locaplic+"ferramentas/parametrossql/ogc.php?tema="+camada.name;if(camada.cache==="NAO"){p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&DESLIGACACHE=sim&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:tile,isBaseLayer:false,visibility:true,transitionEffect:camada["transitioneffect"],layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}else{p.push(new OpenLayers.Layer.TMS(camada.tema,url+"&",{singleTile:false,isBaseLayer:false,layers:camada.name,visibility:true,serviceVersion:"&tms=",tileOrigin:new OpenLayers.LonLat(-180,-90),layername:camada.name,type:"png",transitionEffect:camada["transitioneffect"],plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}));p.push(new OpenLayers.Layer.WMS(camada.tema,url+"&",{layers:camada.name,SRS:'EPSG:'+epsg,FORMAT:'image/png'},{singleTile:true,isBaseLayer:false,visibility:false,transitionEffect:null,layername:camada.name,plugini3geo:"parametrossql","pluginparametros":camada.plugini3geo.parametros,ferramentas:camada.ferramentas}))}if(funcao){funcao.call("",p)}else{return p}}}}}; // //compactados/catalogoMenus_compacto.js i3GEO.catalogoMenus={IDSMENUS:[],MENU:"",GRUPO:"",SUBGRUPO:"",config:{"templateDir":"templates/dir.html","templateTema":"templates/tema.html","idOndeMenus":"catalogoMenus","idCatalogoPrincipal":"catalogoPrincipal","idCatalogoNavegacao":"catalogoNavegacao","idOndeMigalha":"catalogoMigalha"},carregaTemplates:function(){var t1=i3GEO.catalogoMenus.config.templateDir,t2=i3GEO.catalogoMenus.config.templateTema,t3=$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).attr("data-template");$.when($.get(t1),$.get(t2),$.get(t3)).done(function(r1,r2,r3){i3GEO.template.dir=r1[0];i3GEO.template.tema=r2[0];i3GEO.template.catalogoMigalha=r3[0];i3GEO.catalogoMenus.listaMenus()}).fail(function(){i3GEO.janela.closeMsg($trad("erroTpl"));return})},aguarde:function(){$("#"+i3GEO.catalogoMenus.config.idOndeMenus).html($trad("o1"))},atualizaMigalha:function(nome,onclick){var t=Mustache.to_html(i3GEO.template.catalogoMigalha,{"nome":nome,"onclick":onclick});$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).html(t)},escondeCatalogoPrincipal:function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoPrincipal).hide()},mostraCatalogoPrincipal:function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).hide();$("#"+i3GEO.catalogoMenus.config.idCatalogoPrincipal).show()})},adicionaTema:function(tid){var tema=i3GEO.arvoreDeCamadas.pegaTema(tid),ck;if(tema!==""){ck=i3GEO.arvoreDeCamadas.capturaCheckBox(tid);if(ck!=false&&ck.onclick){ck.checked=!ck.checked;ck.onclick.call(ck)}else{i3GEO.janela.tempoMsg($trad("x76"))}}else{i3GEO.php.adtema(i3GEO.atualiza,tid)}},listaMenus:function(config){if(config){$.each(config,function(i,v){i3GEO.catalogoMenus.config[i]=v})}i3GEO.catalogoMenus.aguarde();if(!i3GEO.template.dir||!i3GEO.template.tema||!i3GEO.template.catalogoMigalha){i3GEO.catalogoMenus.carregaTemplates();return}else{config=i3GEO.catalogoMenus.config;if(i3GEO.arvoreDeTemas&&i3GEO.arvoreDeTemas.IDSMENUS&&i3GEO.arvoreDeTemas.IDSMENUS.length>0){i3GEO.catalogoMenus.IDSMENUS=i3GEO.arvoreDeTemas.IDSMENUS}var montaMenus=function(dados){var menus=dados.data,clone=[],n=i3GEO.catalogoMenus.IDSMENUS.length,t;$.each(menus,function(i,v){if(n===0||i3GEO.catalogoMenus.IDSMENUS.indexOf(v.idmenu)>=0||i3GEO.catalogoMenus.IDSMENUS.indexOf(v.idmenu*1)>=0){v.nome=v.nomemenu;v.descricao=v.desc;v.onclick="i3GEO.catalogoMenus.listaGrupos("+v.idmenu+",'"+v.nome+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}});t=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});$("#"+config.idOndeMenus).html(t)};i3GEO.php.pegalistademenus(montaMenus)}},listaGrupos:function(idmenu,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.MENU=nomeMigalha;i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.mostraCatalogoPrincipal()");var montaGrupos=function(dados){var grupos=dados.data.grupos,clone=[],config=i3GEO.catalogoMenus.config,g="",t="",temas=[];$.each(grupos,function(i,v){if(v.id_n1){v.onclick="i3GEO.catalogoMenus.listaSubGrupos("+idmenu+","+v.id_n1+",'"+v.nome+"','"+nomeMigalha+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}if(v.temasraiz){temas=v.temasraiz}});g=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});clone=[];$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+config.idCatalogoNavegacao).html(t+g);$("#"+config.idCatalogoPrincipal).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadegrupos(montaGrupos,idmenu,"nao")},listaSubGrupos:function(idmenu,id_n1,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.GRUPO=nomeMigalha;i3GEO.catalogoMenus.escondeCatalogoPrincipal();i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.listaGrupos('"+idmenu+"','"+i3GEO.catalogoMenus.MENU+"')");var montaSubGrupos=function(dados){var subgrupos=dados.data.subgrupo,clone=[],g="",t="",temas;$.each(subgrupos,function(i,v){if(v.id_n2){v.onclick="i3GEO.catalogoMenus.listaTemasSubgrupo("+idmenu+","+id_n1+","+v.id_n2+",'"+v.nome+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}clone.push(v)}});g=Mustache.to_html("{{#data}}"+i3GEO.template.dir+"{{/data}}",{"data":clone});clone=[];temas=dados.data.temasgrupo;$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).html(t+g);$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadeSubgrupos(montaSubGrupos,idmenu,id_n1)},listaTemasSubgrupo:function(idmenu,id_n1,id_n2,nomeMigalha){$("#i3GEOguiaMovelConteudo").scrollTop(0);i3GEO.catalogoMenus.SUBGRUPO=nomeMigalha;i3GEO.catalogoMenus.escondeCatalogoPrincipal();i3GEO.catalogoMenus.atualizaMigalha(nomeMigalha,"i3GEO.catalogoMenus.listaSubGrupos("+idmenu+","+id_n1+",'"+i3GEO.catalogoMenus.GRUPO+"')");var montaTemas=function(dados){var temas=dados.data.temas,clone=[],t="";clone=[];$.each(temas,function(i,v){v.onclick="i3GEO.catalogoMenus.adicionaTema('"+v.codigo_tema+"')";if(v.publicado.toLowerCase()=="nao"){v.nome=v.nome+" ("+$trad("naoPublicado")+")"}if(v.link&&v.link.trim()!=""){v.link="Link"}clone.push(v)});t=Mustache.to_html("{{#data}}"+i3GEO.template.tema+"{{/data}}",{"data":clone});$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).fadeOut("fast",function(){$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).html(t);$("#"+i3GEO.catalogoMenus.config.idOndeMigalha).show();$("#"+i3GEO.catalogoMenus.config.idCatalogoNavegacao).show()})};i3GEO.php.pegalistadetemas(montaTemas,idmenu,id_n1,id_n2)}}; diff --git a/js/plugini3geo.js b/js/plugini3geo.js index bf1b450..cb1508b 100755 --- a/js/plugini3geo.js +++ b/js/plugini3geo.js @@ -45,1219 +45,1225 @@ i3GEO.pluginI3geo = //XXX criar plugin geojson //XXX criar plugin que aceite um JSON generico PLUGINS : [ - { - "classe" : "heatmap", // namespace da classe - "nome" : "Mapa de calor", // tituo do plugin - "editor" : true - // inclui no editor de mapfiles - }, { - "classe" : "markercluster", - "nome" : "Agrupamento de pontos (cluster)", - "editor" : true - }, { - "classe" : "layerkml", - "nome" : "Camada Kml", - "editor" : true - }, { - "classe" : "parametrossql", - "nome" : "SQL parametrizado", - "editor" : true - } - ], - /** - * Inicia a execucao de um plugin - * - * Camada e um objeto gerado pelo i3Geo quando uma camada e adicionada ao mapa O objeto i3GEO.arvoreDeCamadas.CAMADAS guarda todas - * as camadas adicionadas ao mapa Ao adicionar uma camada pelo catalogo, o i3Geo verifica se a camada possui plugin e direciona para - * ca Os plugins sao definidos como metadados em cada mapfile de cada tema - * - * Veja em i3geo/classesphp/classe_mapa.php funcao parametrostemas - */ - inicia : function(camada) { - if (typeof (console) !== 'undefined') - console.info("i3GEO.pluginI3geo.inicia()"); + { + "classe" : "heatmap", // namespace da classe + "nome" : "Mapa de calor", // tituo do plugin + "editor" : true + // inclui no editor de mapfiles + }, { + "classe" : "markercluster", + "nome" : "Agrupamento de pontos (cluster)", + "editor" : true + }, { + "classe" : "layerkml", + "nome" : "Camada Kml", + "editor" : true + }, { + "classe" : "parametrossql", + "nome" : "SQL parametrizado", + "editor" : true + } + ], + /** + * Inicia a execucao de um plugin + * + * Camada e um objeto gerado pelo i3Geo quando uma camada e adicionada ao mapa O objeto i3GEO.arvoreDeCamadas.CAMADAS guarda todas + * as camadas adicionadas ao mapa Ao adicionar uma camada pelo catalogo, o i3Geo verifica se a camada possui plugin e direciona para + * ca Os plugins sao definidos como metadados em cada mapfile de cada tema + * + * Veja em i3geo/classesphp/classe_mapa.php funcao parametrostemas + */ + inicia : function(camada) { + if (typeof (console) !== 'undefined') + console.info("i3GEO.pluginI3geo.inicia()"); - if(camada.plugini3geo){ - if (i3GEO.janela) { - i3GEO.janela.AGUARDEMODAL = true; - i3GEO.janela.abreAguarde("aguardePlugin", "Plugin..."); - i3GEO.janela.AGUARDEMODAL = false; - } - // chama a funcao conforme o tipo de plugin e a interface atual - // para cada plugin deve haver um objeto com as funcoes especificas - // para - // cada interface - i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada); - } - }, - /** - * Retorna o HTML com o formulario para editar os parametros do plugin - */ - formAdmin : function(plugin, configString, onde) { - var html = i3GEO.pluginI3geo[plugin].formAdmin(configString,onde); - if(!onde){ - return html; - } else { - return false; - } - }, - /** - * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e - * utilizado para reabrir o formulario de parametros - */ - iconeArvoreDeCamadas : function(camada) { - if (camada.plugini3geo && camada.plugini3geo != "") { - return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name); - } else { - return false; - } - }, - clickArvoreDeCamadas : function(camada) { - if (camada.plugini3geo && camada.plugini3geo != "") { - return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name); - } else { - return false; - } - }, - linkAjuda : function(plugin) { - return i3GEO.pluginI3geo[plugin].linkAjuda(); - }, - ligaCamada : function(nomecamada) { - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada) { - i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada(); - return true; - } - return false; - }, - desligaCamada : function(nomecamada) { - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada) { - i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada(); - return true; - } - return false; - }, - removeCamada : function(nomecamada) { - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada) { - i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada(); - i3GEO.pluginI3geo.OBJETOS[nomecamada] = false; - delete (i3GEO.pluginI3geo.OBJETOS[nomecamada]); - return true; - } - return false; - }, - atualizaCamada : function(nomecamada) { - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) { - i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada(); - return true; - } - return false; - }, - existeObjeto : function(nomecamada) { - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) { - return true; - } - return false; - }, - /** - * Aplica as propriedades em um objeto do tipo tema - * - * tema e fornecido por i3GEO.arvoreDeCamadas o ajuste das propriedades e necessario para que as propriedades aparecam de forma - * correta na arvore de camadas - */ - aplicaPropriedades : function(camada) { - if (camada.plugini3geo && camada.plugini3geo != "") { - camada = i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada); - } - return camada; - }, - /** - * Cria um layer conforme a API em uso no aplicativo mashup - * - * Parametros - * - * {string} - nome da interface em uso openlayers|googlemaps - * - * {objeto} - objeto camada, conforme definido em i3GEO.arvoreDeCamadas.CAMADAS - * - * {string} - codigo epsg que sera usado no WMS - * - * {parametros} - objeto com parametros adicionais especificos da interface em uso - */ - layerMashup : function(Interface, camada, epsg, parametros) { - if (camada.plugini3geo && camada.plugini3geo != "" && i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup) { - var l = i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada, epsg, parametros); - return l; - } else { - return [ - false - ]; - } - }, - /** - * Section: i3GEO.pluginI3geo.heatmap - * - * Mapa de calor - * - * Gera um layer do tipo mapa de calor e adiciona ao mapa - * - * As dependências em javascript sao carregadas via script tag por meio de ferramentas/heatmap - * - * Esse programa também obtém os dados necessários ao plugin - * - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO - * - * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin - * - * Exemplo: - * - * "PLUGINI3GEO" '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","coluna":"teste","max":"10","radius":"15"}}' - * - * Coluna é a que contém os dados numéricos que definem a quantidade de uma medida em cada ponto e é - * usada para gerar a representação. Se for vazia, considera-se o valor como 1 - * - * As cores das classes existentes no LAYER serão utilizadas para calcular as cores do mapa de calor. Se tipoGradiente for - * igual a "default" será utilizado o gradiente padrão. - * - */ - heatmap : { - linkAjuda : function() { - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=121"; - }, - formAdmin : function(config,onde,tema,salva,remove) { - if(!i3GEO.template.heatmap){ - var t1 = i3GEO.configura.locaplic + "/js/templates/heatmapForm_mst.html"; - $.get(t1).done(function(r1) { - i3GEO.template.heatmap = r1; - i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove); - }).fail(function() { - i3GEO.janela.closeMsg($trad("erroTpl")); - return; - }); - return; - } - var mustache,parametros, ins = "", configDefault = '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}'; - if (config === "") { - config = configDefault; - } - config = JSON.parse(config); - if (config.plugin != "heatmap") { - config = JSON.parse(configDefault); - } - parametros = config.parametros; - mustache = { - "coluna": parametros.coluna, - "valorPonto": parametros.valorPonto, - "radius" : parametros.radius, - "tipoGradiente": parametros.tipoGradiente, - "linkAjuda": i3GEO.pluginI3geo.linkAjuda("layerkml"), - "tema": tema, - "salvaPlugin": salva, - "removePlugin": remove - }; - ins = Mustache.render( - i3GEO.template.heatmap, - $.extend( - {}, - mustache, - i3GEO.idioma.OBJETOIDIOMA - ) - ); - if($i(onde)){ - $i(onde).innerHTML = ins; - return false; - } else { - return ins; - } - }, - /** - * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e - * utilizado para reabrir o formulario de parametros - */ - iconeArvoreDeCamadas : function(nomecamada) { - return false; - }, - clickArvoreDeCamadas : function(nomecamada) { - return false; - }, - googlemaps : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.AGUARDALEGENDA = false; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - inicia : function(camada) { - if(document.getElementById("i3GeoHeatmapGm"+camada.name)){ - i3GEO.janela.fechaAguarde("aguardePlugin"); - return; - } - var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic + "/ferramentas/heatmap/googlemaps_js.php", carregaJs = - "nao", criaLayer; - criaLayer = function() { - var heatmap, pontos; + if(camada.plugini3geo){ + if (i3GEO.janela) { + i3GEO.janela.AGUARDEMODAL = true; + i3GEO.janela.abreAguarde("aguardePlugin", "Plugin..."); + i3GEO.janela.AGUARDEMODAL = false; + } + // chama a funcao conforme o tipo de plugin e a interface atual + // para cada plugin deve haver um objeto com as funcoes especificas + // para + // cada interface + i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada); + } + }, + /** + * Retorna o HTML com o formulario para editar os parametros do plugin + */ + formAdmin : function(plugin, configString, onde) { + var html = i3GEO.pluginI3geo[plugin].formAdmin(configString,onde); + if(!onde){ + return html; + } else { + return false; + } + }, + /** + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e + * utilizado para reabrir o formulario de parametros + */ + iconeArvoreDeCamadas : function(camada) { + if (camada.plugini3geo && camada.plugini3geo != "") { + return i3GEO.pluginI3geo[camada.plugini3geo.plugin].iconeArvoreDeCamadas(camada.name); + } else { + return false; + } + }, + clickArvoreDeCamadas : function(camada) { + if (camada.plugini3geo && camada.plugini3geo != "") { + return i3GEO.pluginI3geo[camada.plugini3geo.plugin].clickArvoreDeCamadas(camada.name); + } else { + return false; + } + }, + linkAjuda : function(plugin) { + return i3GEO.pluginI3geo[plugin].linkAjuda(); + }, + ligaCamada : function(nomecamada) { + if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada) { + i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada(); + return true; + } + return false; + }, + desligaCamada : function(nomecamada) { + if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada) { + i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada(); + return true; + } + return false; + }, + removeCamada : function(nomecamada) { + if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada) { + i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada(); + i3GEO.pluginI3geo.OBJETOS[nomecamada] = false; + delete (i3GEO.pluginI3geo.OBJETOS[nomecamada]); + return true; + } + return false; + }, + atualizaCamada : function(nomecamada) { + if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) { + i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada(); + return true; + } + return false; + }, + existeObjeto : function(nomecamada) { + if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) { + return true; + } + return false; + }, + /** + * Aplica as propriedades em um objeto do tipo tema + * + * tema e fornecido por i3GEO.arvoreDeCamadas o ajuste das propriedades e necessario para que as propriedades aparecam de forma + * correta na arvore de camadas + */ + aplicaPropriedades : function(camada) { + if (camada.plugini3geo && camada.plugini3geo != "") { + camada = i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada); + } + return camada; + }, + /** + * Cria um layer conforme a API em uso no aplicativo mashup + * + * Parametros + * + * {string} - nome da interface em uso openlayers|googlemaps + * + * {objeto} - objeto camada, conforme definido em i3GEO.arvoreDeCamadas.CAMADAS + * + * {string} - codigo epsg que sera usado no WMS + * + * {parametros} - objeto com parametros adicionais especificos da interface em uso + */ + layerMashup : function(Interface, camada, epsg, parametros) { + if (camada.plugini3geo && camada.plugini3geo != "" && i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup) { + var l = i3GEO.pluginI3geo[camada.plugini3geo.plugin][Interface].layerMashup(camada, epsg, parametros); + return l; + } else { + return [ + false + ]; + } + }, + /** + * Section: i3GEO.pluginI3geo.heatmap + * + * Mapa de calor + * + * Gera um layer do tipo mapa de calor e adiciona ao mapa + * + * As dependências em javascript sao carregadas via script tag por meio de ferramentas/heatmap + * + * Esse programa também obtém os dados necessários ao plugin + * + * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO + * + * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin + * + * Exemplo: + * + * "PLUGINI3GEO" '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","coluna":"teste","max":"10","radius":"15"}}' + * + * Coluna é a que contém os dados numéricos que definem a quantidade de uma medida em cada ponto e é + * usada para gerar a representação. Se for vazia, considera-se o valor como 1 + * + * As cores das classes existentes no LAYER serão utilizadas para calcular as cores do mapa de calor. Se tipoGradiente for + * igual a "default" será utilizado o gradiente padrão. + * + */ + heatmap : { + linkAjuda : function() { + return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=121"; + }, + formAdmin : function(config,onde,tema,salva,remove) { + if(!i3GEO.template.heatmap){ + var t1 = i3GEO.configura.locaplic + "/js/templates/heatmapForm_mst.html"; + $.get(t1).done(function(r1) { + i3GEO.template.heatmap = r1; + i3GEO.pluginI3geo.heatmap.formAdmin(config,onde,tema,salva,remove); + }).fail(function() { + i3GEO.janela.closeMsg($trad("erroTpl")); + return; + }); + return; + } + var mustache,parametros, ins = "", configDefault = '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}'; + if (config === "") { + config = configDefault; + } + config = JSON.parse(config); + if (config.plugin != "heatmap") { + config = JSON.parse(configDefault); + } + parametros = config.parametros; + mustache = { + "coluna": parametros.coluna, + "valorPonto": parametros.valorPonto, + "radius" : parametros.radius, + "tipoGradiente": parametros.tipoGradiente, + "linkAjuda": i3GEO.pluginI3geo.linkAjuda("layerkml"), + "tema": tema, + "salvaPlugin": salva, + "removePlugin": remove + }; + ins = Mustache.render( + i3GEO.template.heatmap, + $.extend( + {}, + mustache, + i3GEO.idioma.OBJETOIDIOMA + ) + ); + if($i(onde)){ + $i(onde).innerHTML = ins; + return false; + } else { + return ins; + } + }, + /** + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e + * utilizado para reabrir o formulario de parametros + */ + iconeArvoreDeCamadas : function(nomecamada) { + return false; + }, + clickArvoreDeCamadas : function(nomecamada) { + return false; + }, + googlemaps : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.AGUARDALEGENDA = false; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + inicia : function(camada) { + if(document.getElementById("i3GeoHeatmapGm"+camada.name)){ + i3GEO.janela.fechaAguarde("aguardePlugin"); + return; + } + var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic + "/ferramentas/heatmap/googlemaps_js.php", carregaJs = + "nao", criaLayer; + criaLayer = function() { + var heatmap, pontos; - heatmap = new HeatmapOverlay(i3GeoMap, camada.name, { - "radius" : camada.plugini3geo.parametros.radius, - "visible" : true, - "opacity" : camada.transparency, - "gradient" : heatmap_config.gradient, - "legend" : { - "title" : camada.tema, - "position" : "bl", - "offset" : [ - 5, 50 - ] - } - }); - // i3GeoMap.overlayMapTypes.insertAt(0, heatmap); - pontos = { - max : camada.plugini3geo.parametros.max, - data : heatmap_dados - }; - i3GEO.janela.fechaAguarde("aguardePlugin"); - heatmap.setDataSet(pontos); - heatmap.ligaCamada = function() { - this.liga(); - }; - heatmap.desLigaCamada = function() { - this.desliga(); - }; - heatmap.removeCamada = function() { - this.destroy(); - }; - heatmap.atualizaCamada = function() { - this.draw(); - }; - i3GEO.pluginI3geo.OBJETOS[camada.name] = heatmap; - heatmap_dados = null; - }; - // se o script nao existir carrega o codigo e os dados - // caso contrario, carrega apenas os dados no script - if (!$i(nomeScript)) { - carregaJs = "sim"; - } else { - nomeScript = ""; - } - p += - "?carregajs=" + carregaJs - + "&layer=" - + camada.name - + "&coluna=" - + camada.plugini3geo.parametros.coluna - + "&tipoGradiente=" - + camada.plugini3geo.parametros.tipoGradiente - + "&g_sid=" - + i3GEO.configura.sid - + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config"; - i3GEO.util.scriptTag(p, criaLayer, nomeScript); - } - }, - // - // O script que adiciona a camada - // define os eventos visibilitychanged, moveend e removed - // A camada e adicionada como um objeto layer, permitindo que as - // funcoes - // do i3Geo operem normalmente, sem muitas modificacoes - // - openlayers : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - layerMashup : function(camada, epsg){ - i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa); - return []; - }, - inicia : function(camada, objMapa) { - var p = i3GEO.configura.locaplic + "/ferramentas/heatmap/openlayers_js.php",criaLayer; - criaLayer = function() { - if (typeof (console) !== 'undefined') - console.info("criaLayer heatmap"); + heatmap = new HeatmapOverlay(i3GeoMap, camada.name, { + "radius" : camada.plugini3geo.parametros.radius, + "visible" : true, + "opacity" : camada.transparency, + "gradient" : heatmap_config.gradient, + "legend" : { + "title" : camada.tema, + "position" : "bl", + "offset" : [ + 5, 50 + ] + } + }); + // i3GeoMap.overlayMapTypes.insertAt(0, heatmap); + pontos = { + max : camada.plugini3geo.parametros.max, + data : heatmap_dados + }; + i3GEO.janela.fechaAguarde("aguardePlugin"); + heatmap.setDataSet(pontos); + heatmap.ligaCamada = function() { + this.liga(); + }; + heatmap.desLigaCamada = function() { + this.desliga(); + }; + heatmap.removeCamada = function() { + this.destroy(); + }; + heatmap.atualizaCamada = function() { + this.draw(); + }; + i3GEO.pluginI3geo.OBJETOS[camada.name] = heatmap; + heatmap_dados = null; + }; + // se o script nao existir carrega o codigo e os dados + // caso contrario, carrega apenas os dados no script + if (!$i(nomeScript)) { + carregaJs = "sim"; + } else { + nomeScript = ""; + } + p += + "?carregajs=" + carregaJs + + "&layer=" + + camada.name + + "&coluna=" + + camada.plugini3geo.parametros.coluna + + "&tipoGradiente=" + + camada.plugini3geo.parametros.tipoGradiente + + "&g_sid=" + + i3GEO.configura.sid + + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config"; + i3GEO.util.scriptTag(p, criaLayer, nomeScript); + } + }, + // + // O script que adiciona a camada + // define os eventos visibilitychanged, moveend e removed + // A camada e adicionada como um objeto layer, permitindo que as + // funcoes + // do i3Geo operem normalmente, sem muitas modificacoes + // + openlayers : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + layerMashup : function(camada, epsg){ + i3GEO.pluginI3geo.heatmap.openlayers.inicia(camada,i3GEO.editorOL.mapa); + return []; + }, + inicia : function(camada, objMapa) { + var p = i3GEO.configura.locaplic + "/ferramentas/heatmap/openlayers_js.php",criaLayer; + criaLayer = function() { + if (typeof (console) !== 'undefined') + console.info("criaLayer heatmap"); - var g, v = true, temp, heatmap, data = heatmap_dados, datalen = heatmap_dados.length, nudata = []; - // para uso com o mashup - if (!objMapa) { - objMapa = i3geoOL; - } - while (datalen--) { - temp = heatmap_dados[datalen].count; - g = new ol.geom.Point([data[datalen].lng * 1,data[datalen].lat * 1]); - g = i3GEO.util.projGeo2OSM(g); - nudata.push(new ol.Feature({ - geometry: g, - weight: temp - }) - ); - } - // create our heatmap layer - if(camada.status === "0"){ - v = false; - } - if(!camada.plugini3geo.parametros.max){ - camada.plugini3geo.parametros.max = 10; - } - heatmap = new ol.layer.Heatmap({ - source: new ol.source.Vector({ - features : nudata - }), - blur: camada.plugini3geo.parametros.max * 1, - title: camada.tema, - opacity: (camada.transparency * 1) / 100, - radius: camada.plugini3geo.parametros.radius * 1, - name : camada.name, - isBaseLayer : false, - visible : v - }); - i3GEO.pluginI3geo.OBJETOS[camada.name] = heatmap; - objMapa.addLayer(heatmap); - heatmap_dados = null; - if (i3GEO.janela) { - i3GEO.janela.fechaAguarde("aguardePlugin"); - } - }; - if (!i3GEO.configura || !i3GEO.configura.sid) { - i3GEO.configura.sid = ""; - } - p += - "?layer=" - + camada.name - + "&coluna=" - + camada.plugini3geo.parametros.coluna - + "&tipoGradiente=" - + camada.plugini3geo.parametros.tipoGradiente - + "&g_sid=" - + i3GEO.configura.sid - + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config"; - i3GEO.util.scriptTag(p, criaLayer, ""); - } - } - }, - /** - * Section: i3GEO.pluginI3geo.markercluster - * - * Markercluster - * - * Gera um layer que agrupa pontos conforme a distância entre eles e insere um contador adiciona ao mapa - * - * As dependências em javascript sao carregadas via script tag por meio de ferramentas/markercluster - * - * Esse programa também obtém os dados necessários ao plugin - * - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO - * - * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin - * - * Exemplo: - * - * "PLUGINI3GEO" '{"plugin":"markercluster","parametros":{"coluna":"teste","gridSize":"50"}}' - * - * Coluna é a que contém os dados numéricos que definem a quantidade de uma medida em cada ponto e é - * usada para gerar a representação. Se for vazia, considera-se o valor como 1 - * - */ - markercluster : { - linkAjuda : function() { - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=122"; - }, - formAdmin : function(config,onde,tema,salva,remove) { - if(!i3GEO.template.markercluster){ - var t1 = i3GEO.configura.locaplic + "/js/templates/markerclusterForm_mst.html"; - $.get(t1).done(function(r1) { - i3GEO.template.markercluster = r1; + var g, v = true, temp, heatmap, data = heatmap_dados, datalen = heatmap_dados.length, nudata = []; + // para uso com o mashup + if (!objMapa) { + objMapa = i3geoOL; + } + while (datalen--) { + temp = heatmap_dados[datalen].count; + g = new ol.geom.Point([data[datalen].lng * 1,data[datalen].lat * 1]); + g = i3GEO.util.projGeo2OSM(g); + nudata.push(new ol.Feature({ + geometry: g, + weight: temp + }) + ); + } + // create our heatmap layer + if(camada.status === "0"){ + v = false; + } + if(!camada.plugini3geo.parametros.max){ + camada.plugini3geo.parametros.max = 10; + } + heatmap = new ol.layer.Heatmap({ + source: new ol.source.Vector({ + features : nudata + }), + blur: camada.plugini3geo.parametros.max * 1, + title: camada.tema, + opacity: (camada.transparency * 1) / 100, + radius: camada.plugini3geo.parametros.radius * 1, + name : camada.name, + isBaseLayer : false, + visible : v + }); + i3GEO.pluginI3geo.OBJETOS[camada.name] = heatmap; + objMapa.addLayer(heatmap); + heatmap_dados = null; + if (i3GEO.janela) { + i3GEO.janela.fechaAguarde("aguardePlugin"); + } + }; + if (!i3GEO.configura || !i3GEO.configura.sid) { + i3GEO.configura.sid = ""; + } + p += + "?layer=" + + camada.name + + "&coluna=" + + camada.plugini3geo.parametros.coluna + + "&tipoGradiente=" + + camada.plugini3geo.parametros.tipoGradiente + + "&g_sid=" + + i3GEO.configura.sid + + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config"; + i3GEO.util.scriptTag(p, criaLayer, ""); + } + } + }, + /** + * Section: i3GEO.pluginI3geo.markercluster + * + * Markercluster + * + * Gera um layer que agrupa pontos conforme a distância entre eles e insere um contador adiciona ao mapa + * + * As dependências em javascript sao carregadas via script tag por meio de ferramentas/markercluster + * + * Esse programa também obtém os dados necessários ao plugin + * + * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO + * + * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin + * + * Exemplo: + * + * "PLUGINI3GEO" '{"plugin":"markercluster","parametros":{"coluna":"teste","gridSize":"50"}}' + * + * Coluna é a que contém os dados numéricos que definem a quantidade de uma medida em cada ponto e é + * usada para gerar a representação. Se for vazia, considera-se o valor como 1 + * + */ + markercluster : { + linkAjuda : function() { + return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=122"; + }, + formAdmin : function(config,onde,tema,salva,remove) { + if(!i3GEO.template.markercluster){ + var t1 = i3GEO.configura.locaplic + "/js/templates/markerclusterForm_mst.html"; + $.get(t1).done(function(r1) { + i3GEO.template.markercluster = r1; - i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove); - }).fail(function() { - i3GEO.janela.closeMsg($trad("erroTpl")); - return; - }); - return; - } - var mustache,parametros, ins = "", configDefault = - '{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}'; - if (config === "") { - config = configDefault; - } - config = JSON.parse(config); - if (config.plugin != "markercluster") { - config = JSON.parse(configDefault); - } - parametros = config.parametros; - mustache = { - "gridSize": parametros.gridSize, - "tipoEstilos": parametros.tipoEstilos, - "color": i3GEO.util.hex2rgb(parametros.color), - "strokecolor": i3GEO.util.hex2rgb(parametros.strokecolor), - "textcolor": i3GEO.util.hex2rgb(parametros.textcolor), - "linkAjuda": i3GEO.pluginI3geo.linkAjuda("markercluster"), - "tema": tema, - "salvaPlugin": salva, - "removePlugin": remove - }; - ins = Mustache.render( - i3GEO.template.markercluster, - $.extend( - {}, - mustache, - i3GEO.idioma.OBJETOIDIOMA - ) - ); - if($i(onde)){ - $i(onde).innerHTML = ins; - i3GEO.util.aplicaAquarela(onde); - return false; - } else { - return ins; - } - }, - parametrosFormAdmin : function(onde) { - return '{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'; - }, - /** - * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e - * utilizado para reabrir o formulario de parametros - */ - iconeArvoreDeCamadas : function(nomecamada) { - return false; - }, - clickArvoreDeCamadas : function(nomecamada) { - return false; - }, - googlemaps : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.AGUARDALEGENDA = false; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - inicia : function(camada) { - if(document.getElementById("i3GeoClustermapGm")){ - i3GEO.janela.fechaAguarde("aguardePlugin"); - return; - } - var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/googlemaps_js.php", carregaJs = - "nao", criaLayer; - criaLayer = function() { - if (typeof (console) !== 'undefined') - console.info("i3GEO.pluginI3geo.markercluster.googlemaps.inicia()"); + i3GEO.pluginI3geo.markercluster.formAdmin(config,onde,tema,salva,remove); + }).fail(function() { + i3GEO.janela.closeMsg($trad("erroTpl")); + return; + }); + return; + } + var mustache,parametros, ins = "", configDefault = + '{"plugin":"markercluster","parametros":{"tipoEstilos": "default","textcolor":"#fff","strokecolor":"#fff","color":"#3399CC","gridSize":"50"}}'; + if (config === "") { + config = configDefault; + } + config = JSON.parse(config); + if (config.plugin != "markercluster") { + config = JSON.parse(configDefault); + } + parametros = config.parametros; + mustache = { + "gridSize": parametros.gridSize, + "tipoEstilos": parametros.tipoEstilos, + "color": i3GEO.util.hex2rgb(parametros.color), + "strokecolor": i3GEO.util.hex2rgb(parametros.strokecolor), + "textcolor": i3GEO.util.hex2rgb(parametros.textcolor), + "linkAjuda": i3GEO.pluginI3geo.linkAjuda("markercluster"), + "tema": tema, + "salvaPlugin": salva, + "removePlugin": remove + }; + ins = Mustache.render( + i3GEO.template.markercluster, + $.extend( + {}, + mustache, + i3GEO.idioma.OBJETOIDIOMA + ) + ); + if($i(onde)){ + $i(onde).innerHTML = ins; + i3GEO.util.aplicaAquarela(onde); + return false; + } else { + return ins; + } + }, + parametrosFormAdmin : function(onde) { + return '{"plugin":"markercluster","parametros":{"tipoEstilos": "'+$i("MCtipoEstilos").value+'","textcolor":"'+i3GEO.util.rgb2hex($i("MCtextcolor").value)+'","strokecolor":"'+i3GEO.util.rgb2hex($i("MCstrokecolor").value)+'","color":"'+i3GEO.util.rgb2hex($i("MCcolor").value)+'","gridSize":"'+$i("MCgridSize").value+'"}}'; + }, + /** + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e + * utilizado para reabrir o formulario de parametros + */ + iconeArvoreDeCamadas : function(nomecamada) { + return false; + }, + clickArvoreDeCamadas : function(nomecamada) { + return false; + }, + googlemaps : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.AGUARDALEGENDA = false; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + inicia : function(camada) { + if(document.getElementById("i3GeoClustermapGm")){ + i3GEO.janela.fechaAguarde("aguardePlugin"); + return; + } + var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/googlemaps_js.php", carregaJs = + "nao", criaLayer; + criaLayer = function() { + if (typeof (console) !== 'undefined') + console.info("i3GEO.pluginI3geo.markercluster.googlemaps.inicia()"); - var markercluster, marcas, latLng, marker, n, i; - n = markercluster_dados.length; - marcas = []; - for (i = 0; i < n; i++) { - latLng = new google.maps.LatLng(markercluster_dados[i].lat, markercluster_dados[i].lng); - marker = new google.maps.Marker({ - 'position' : latLng, - icon : { - url : markercluster_config.ponto.url, - scaledSize : new google.maps.Size(markercluster_config.ponto.width, markercluster_config.ponto.height) - } - }); - marcas.push(marker); - } - markercluster = new MarkerClusterer(i3GeoMap, marcas, { - "gridSize" : parseInt(camada.plugini3geo.parametros.gridSize, 10), - "visible" : true, - "opacity" : camada.transparency, - "name" : camada.name, - "styles" : markercluster_config.estilos - }); - i3GEO.janela.fechaAguarde("aguardePlugin"); - i3GEO.eventos.cliquePerm.ativo = false; + var markercluster, marcas, latLng, marker, n, i; + n = markercluster_dados.length; + marcas = []; + for (i = 0; i < n; i++) { + latLng = new google.maps.LatLng(markercluster_dados[i].lat, markercluster_dados[i].lng); + marker = new google.maps.Marker({ + 'position' : latLng, + icon : { + url : markercluster_config.ponto.url, + scaledSize : new google.maps.Size(markercluster_config.ponto.width, markercluster_config.ponto.height) + } + }); + marcas.push(marker); + } + markercluster = new MarkerClusterer(i3GeoMap, marcas, { + "gridSize" : parseInt(camada.plugini3geo.parametros.gridSize, 10), + "visible" : true, + "opacity" : camada.transparency, + "name" : camada.name, + "styles" : markercluster_config.estilos + }); + i3GEO.janela.fechaAguarde("aguardePlugin"); + i3GEO.eventos.cliquePerm.ativo = false; - markercluster.ligaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = true; - i3GEO.pluginI3geo.OBJETOS[camada.name].redraw(); - i3GEO.eventos.cliquePerm.ativo = false; - }; - markercluster.desLigaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); - i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = false; - i3GEO.eventos.cliquePerm.ativo = true; - }; - markercluster.removeCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers(); - i3GEO.eventos.cliquePerm.ativo = true; - }; - markercluster.atualizaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = true; - i3GEO.pluginI3geo.OBJETOS[camada.name].redraw(); - i3GEO.eventos.cliquePerm.ativo = false; - }; - i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster; - markercluster_dados = null; - }; - // se o script nao existir carrega o codigo e os dados - // caso contrario, carrega apenas os dados no script - if (!$i(nomeScript)) { - carregaJs = "sim"; - } else { - nomeScript = ""; - } - p += - "?carregajs=" + carregaJs - + "&layer=" - + camada.name - + "&g_sid=" - + i3GEO.configura.sid - + "&tipoEstilos=" - + camada.plugini3geo.parametros.tipoEstilos - + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config"; - i3GEO.util.scriptTag(p, criaLayer, nomeScript); - } - }, - openlayers : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.AGUARDALEGENDA = false; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - layerMashup : function(camada, epsg){ - i3GEO.pluginI3geo.markercluster.openlayers.inicia(camada,i3GEO.editorOL.mapa); - return []; - }, - inicia : function(camada, objMapa) { - if (typeof (console) !== 'undefined') - console.info("i3GEO.pluginI3geo.markercluster.openlayers.inicia()"); + markercluster.ligaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = true; + i3GEO.pluginI3geo.OBJETOS[camada.name].redraw(); + i3GEO.eventos.cliquePerm.ativo = false; + }; + markercluster.desLigaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); + i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = false; + i3GEO.eventos.cliquePerm.ativo = true; + }; + markercluster.removeCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers(); + i3GEO.eventos.cliquePerm.ativo = true; + }; + markercluster.atualizaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].ready_ = true; + i3GEO.pluginI3geo.OBJETOS[camada.name].redraw(); + i3GEO.eventos.cliquePerm.ativo = false; + }; + i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster; + markercluster_dados = null; + }; + // se o script nao existir carrega o codigo e os dados + // caso contrario, carrega apenas os dados no script + if (!$i(nomeScript)) { + carregaJs = "sim"; + } else { + nomeScript = ""; + } + p += + "?carregajs=" + carregaJs + + "&layer=" + + camada.name + + "&g_sid=" + + i3GEO.configura.sid + + "&tipoEstilos=" + + camada.plugini3geo.parametros.tipoEstilos + + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config"; + i3GEO.util.scriptTag(p, criaLayer, nomeScript); + } + }, + openlayers : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.AGUARDALEGENDA = false; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + layerMashup : function(camada, epsg){ + i3GEO.pluginI3geo.markercluster.openlayers.inicia(camada,i3GEO.editorOL.mapa); + return []; + }, + inicia : function(camada, objMapa) { + if (typeof (console) !== 'undefined') + console.info("i3GEO.pluginI3geo.markercluster.openlayers.inicia()"); - // para uso com o mashup - if (!objMapa) { - objMapa = i3geoOL; - } - var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/openlayers_js.php", carregaJs = - "nao", criaLayer; - criaLayer = function() { - if (typeof (console) !== 'undefined') - console.info("criando layer markercluster"); + // para uso com o mashup + if (!objMapa) { + objMapa = i3geoOL; + } + var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/openlayers_js.php", carregaJs = + "nao", criaLayer; + criaLayer = function() { + if (typeof (console) !== 'undefined') + console.info("criando layer markercluster"); - var layerListeners, logMax, logMin, classes, min, max, markercluster = {}, marcas, lonlat, n, i, style, nestilos, intervalo, regra, regras = - []; + var layerListeners, logMax, logMin, classes, min, max, markercluster = {}, marcas, lonlat, n, i, style, nestilos, intervalo, regra, regras = + []; - marcas = []; - n = markercluster_dados.length; - for (i = 0; i < n; i++) { - //console.info([markercluster_dados[i].lng * 1,markercluster_dados[i].lat * 1]) - marcas.push( - new ol.Feature({ - geometry: i3GEO.util.projGeo2OSM(new ol.geom.Point([markercluster_dados[i].lng * 1,markercluster_dados[i].lat * 1])), - weight: markercluster_dados[i].count - }) - ); - } - var source = new ol.source.Vector({ - features: marcas - }); - var clusterSource = new ol.source.Cluster({ - distance: camada.plugini3geo.parametros.gridSize, - source: source - }); - var styleCache = {}; - var v = true; - if(camada.status === "0"){ - v = false; - } - markercluster = new ol.layer.Vector({ - opacity: (camada.transparency * 1) / 100, - title: camada.tema, - name : camada.name, - isBaseLayer : false, - visible : v, - source: clusterSource, - style: function(feature) { - var size = feature.get('features').length; - var r = 10; - if(size > 9){ - r = 7 * (size + "").length; - } - var style = styleCache[size]; - if (!style) { - if(size == 1){ - style = new ol.style.Style({ - image: new ol.style.Circle({ - radius: 6, - stroke: new ol.style.Stroke({ - color: camada.plugini3geo.parametros.strokecolor - }), - fill: new ol.style.Fill({ - color: camada.plugini3geo.parametros.color - }) - }) - }); - styleCache[size] = style; + marcas = []; + n = markercluster_dados.length; + for (i = 0; i < n; i++) { + //console.info([markercluster_dados[i].lng * 1,markercluster_dados[i].lat * 1]) + marcas.push( + new ol.Feature({ + geometry: i3GEO.util.projGeo2OSM(new ol.geom.Point([markercluster_dados[i].lng * 1,markercluster_dados[i].lat * 1])), + weight: markercluster_dados[i].count + }) + ); + } + var source = new ol.source.Vector({ + features: marcas + }); + var clusterSource = new ol.source.Cluster({ + distance: camada.plugini3geo.parametros.gridSize, + source: source + }); + var styleCache = {}; + var v = true; + if(camada.status === "0"){ + v = false; + } + markercluster = new ol.layer.Vector({ + opacity: (camada.transparency * 1) / 100, + title: camada.tema, + name : camada.name, + isBaseLayer : false, + visible : v, + source: clusterSource, + style: function(feature) { + var size = feature.get('features').length; + var r = 10; + if(size > 9){ + r = 7 * (size + "").length; + } + var style = styleCache[size]; + if (!style) { + if(size == 1){ + style = new ol.style.Style({ + image: new ol.style.Circle({ + radius: 6, + stroke: new ol.style.Stroke({ + color: camada.plugini3geo.parametros.strokecolor + }), + fill: new ol.style.Fill({ + color: camada.plugini3geo.parametros.color + }) + }) + }); + styleCache[size] = style; - } else { - style = new ol.style.Style({ - image: new ol.style.Circle({ - radius: r, - stroke: new ol.style.Stroke({ - color: camada.plugini3geo.parametros.strokecolor - }), - fill: new ol.style.Fill({ - color: camada.plugini3geo.parametros.color - }) - }), - text: new ol.style.Text({ - text: size.toString(), - fill: new ol.style.Fill({ - color: camada.plugini3geo.parametros.textcolor - }), - stroke: new ol.style.Stroke({ - color: 'rgba(0, 0, 0, 0.6)', - width: 1 - }) - }) - }); - styleCache[size] = style; - } - } - return style; - } - }); - i3GEO.janela.fechaAguarde("aguardePlugin"); - i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster; - markercluster_dados = null; - objMapa.addLayer(markercluster); - }; - // se o script nao existir carrega o codigo e os dados - // caso contrario, carrega apenas os dados no script - if (!$i(nomeScript)) { - carregaJs = "sim"; - } else { - nomeScript = ""; - } - p += - "?carregajs=" + carregaJs - + "&layer=" - + camada.name - + "&g_sid=" - + i3GEO.configura.sid - + "&tipoEstilos=" - + camada.plugini3geo.parametros.tipoEstilos; - i3GEO.util.scriptTag(p, criaLayer, nomeScript); - } - } - }, - /** - * Section: i3GEO.pluginI3geo.layerkml - * - * Adiciona ao mapa uma camada vetorial baseada em um arquivo Kml - * - * As dependências em javascript sao carregadas via script tag por meio de ferramentas/markercluster - * - * Esse programa também obtém os dados necessários ao plugin - * - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO - * - * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin - * - * Exemplo: - * - * "PLUGINI3GEO" '{"plugin":"layerkml","parametros":{"url":"teste"}}' - * - */ - layerkml : { - linkAjuda : function() { - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=126"; - // http://localhost/i3geo/aplicmap/dados/sundials.kml - // http://dev.openlayers.org/examples/kml/sundials.kml - }, - formAdmin : function(config,onde,tema,salva,remove) { - if(!i3GEO.template.layerkml){ - var t1 = i3GEO.configura.locaplic + "/js/templates/layerkmlForm_mst.html"; - $.get(t1).done(function(r1) { - i3GEO.template.layerkml = r1; - i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove); - }).fail(function() { - i3GEO.janela.closeMsg($trad("erroTpl")); - return; - }); - return; - } - var mustache,parametros, ins = "", configDefault = '{"plugin":"layerkml","parametros":{"url": ""}}'; - if (config === "") { - config = configDefault; - } - config = JSON.parse(config); - if (config.plugin != "layerkml") { - config = JSON.parse(configDefault); - } - parametros = config.parametros; - mustache = { - "url": parametros.url, - "linkAjuda": i3GEO.pluginI3geo.linkAjuda("layerkml"), - "tema": tema, - "salvaPlugin": salva, - "removePlugin": remove - }; - ins = Mustache.render( - i3GEO.template.layerkml, - $.extend( - {}, - mustache, - i3GEO.idioma.OBJETOIDIOMA - ) - ); - if($i(onde)){ - $i(onde).innerHTML = ins; - return false; - } else { - return ins; - } - }, - /** - * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e - * utilizado para reabrir o formulario de parametros - */ - iconeArvoreDeCamadas : function(nomecamada) { - return false; - }, - clickArvoreDeCamadas : function(nomecamada) { - return false; - }, - googlemaps : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.AGUARDALEGENDA = false; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - inicia : function(camada) { - var layerkml = new google.maps.KmlLayer(camada.plugini3geo.parametros.url, { - map : i3GeoMap, - preserveViewport : true, - name : camada.name - }); - i3GEO.janela.fechaAguarde("aguardePlugin"); - layerkml.ligaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap); - }; - layerkml.desLigaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); - }; - layerkml.removeCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); - i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); - }; - layerkml.atualizaCamada = function() { - i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); - i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); - i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap); - }; - i3GEO.pluginI3geo.OBJETOS[camada.name] = layerkml; - } - }, - openlayers : { - aplicaPropriedades : function(camada) { - camada.sel = "nao"; - camada.download = "nao"; - camada.AGUARDALEGENDA = false; - camada.temporizador = ""; - camada.copia = false; - camada.procurar = false; - camada.toponimia = false; - camada.etiquetas = false; - camada.tabela = false; - camada.grafico = false; - camada.destacar = false; - camada.wms = false; - camada.classe = "NAO"; - return camada; - }, - layerMashup : function(camada, epsg){ - i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa); - return []; - }, - inicia : function(camada, objMapa) { - var layerkml, url, temp; - //url = i3GEO.configura.locaplic + "/classesphp/proxy.php?url=" + camada.plugini3geo.parametros.url; - url = i3GEO.configura.locaplic + "/ferramentas/layerkml/getkml.php?sid=" + i3GEO.configura.sid + "&tema=" + camada.nomeoriginal; - layerkml = new ol.layer.Vector({ - name : camada.name, - isBaseLayer : false, - source : new ol.source.Vector({ - url : url, - format : new ol.format.KML({ - extractStyles : true - }), - tipoServico : "kml" - }) - }); - i3geoOL.addLayer(layerkml); - if (!objMapa) { - objMapa = i3geoOL; - } - temp = function(pixel) { - var feature, chaves, c, i = 0, html = "", prop, g; - feature = i3geoOL.forEachFeatureAtPixel(pixel, function(feature, layer) { - return feature; - }); - if (feature) { - i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar = false; - i3GEO.Interface.openlayers.BALAOPROP.classeCadeado = "i3GEOiconeFechado"; - chaves = feature.getKeys(); - prop = feature.getProperties(); - c = chaves.length; - for (i = 0; i < c; i++) { - if (chaves[i] != "geometry" && chaves[i] != "styleUrl") { - html += chaves[i] + ": " + prop[chaves[i]]; - } - } - g = feature.getGeometry().getCoordinates(); - i3GEO.Interface.openlayers.balao(html, "", g[0], g[1], "kml"); - } - }; - i3geoOL.on('click', function(evt) { - evt.stopPropagation(); - evt.preventDefault(); - if (evt.dragging) { - return; - } - temp(i3geoOL.getEventPixel(evt.originalEvent)); - }); + } else { + style = new ol.style.Style({ + image: new ol.style.Circle({ + radius: r, + stroke: new ol.style.Stroke({ + color: camada.plugini3geo.parametros.strokecolor + }), + fill: new ol.style.Fill({ + color: camada.plugini3geo.parametros.color + }) + }), + text: new ol.style.Text({ + text: size.toString(), + fill: new ol.style.Fill({ + color: camada.plugini3geo.parametros.textcolor + }), + stroke: new ol.style.Stroke({ + color: 'rgba(0, 0, 0, 0.6)', + width: 1 + }) + }) + }); + styleCache[size] = style; + } + } + return style; + } + }); + i3GEO.janela.fechaAguarde("aguardePlugin"); + i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster; + markercluster_dados = null; + objMapa.addLayer(markercluster); + }; + // se o script nao existir carrega o codigo e os dados + // caso contrario, carrega apenas os dados no script + if (!$i(nomeScript)) { + carregaJs = "sim"; + } else { + nomeScript = ""; + } + p += + "?carregajs=" + carregaJs + + "&layer=" + + camada.name + + "&g_sid=" + + i3GEO.configura.sid + + "&tipoEstilos=" + + camada.plugini3geo.parametros.tipoEstilos; + i3GEO.util.scriptTag(p, criaLayer, nomeScript); + } + } + }, + /** + * Section: i3GEO.pluginI3geo.layerkml + * + * Adiciona ao mapa uma camada vetorial baseada em um arquivo Kml + * + * As dependências em javascript sao carregadas via script tag por meio de ferramentas/markercluster + * + * Esse programa também obtém os dados necessários ao plugin + * + * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO + * + * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin + * + * Exemplo: + * + * "PLUGINI3GEO" '{"plugin":"layerkml","parametros":{"url":"teste"}}' + * + */ + layerkml : { + linkAjuda : function() { + return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=126"; + // http://localhost/i3geo/aplicmap/dados/sundials.kml + // http://dev.openlayers.org/examples/kml/sundials.kml + }, + formAdmin : function(config,onde,tema,salva,remove) { + if(!i3GEO.template.layerkml){ + var t1 = i3GEO.configura.locaplic + "/js/templates/layerkmlForm_mst.html"; + $.get(t1).done(function(r1) { + i3GEO.template.layerkml = r1; + i3GEO.pluginI3geo.layerkml.formAdmin(config,onde,tema,salva,remove); + }).fail(function() { + i3GEO.janela.closeMsg($trad("erroTpl")); + return; + }); + return; + } + var mustache,parametros, ins = "", configDefault = '{"plugin":"layerkml","parametros":{"url": ""}}'; + if (config === "") { + config = configDefault; + } + config = JSON.parse(config); + if (config.plugin != "layerkml") { + config = JSON.parse(configDefault); + } + parametros = config.parametros; + mustache = { + "url": parametros.url, + "linkAjuda": i3GEO.pluginI3geo.linkAjuda("layerkml"), + "tema": tema, + "salvaPlugin": salva, + "removePlugin": remove + }; + ins = Mustache.render( + i3GEO.template.layerkml, + $.extend( + {}, + mustache, + i3GEO.idioma.OBJETOIDIOMA + ) + ); + if($i(onde)){ + $i(onde).innerHTML = ins; + return false; + } else { + return ins; + } + }, + /** + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e + * utilizado para reabrir o formulario de parametros + */ + iconeArvoreDeCamadas : function(nomecamada) { + return false; + }, + clickArvoreDeCamadas : function(nomecamada) { + return false; + }, + googlemaps : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.AGUARDALEGENDA = false; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + inicia : function(camada) { + var layerkml = new google.maps.KmlLayer(camada.plugini3geo.parametros.url, { + map : i3GeoMap, + preserveViewport : true, + name : camada.name + }); + i3GEO.janela.fechaAguarde("aguardePlugin"); + layerkml.ligaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap); + }; + layerkml.desLigaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); + }; + layerkml.removeCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); + i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); + }; + layerkml.atualizaCamada = function() { + i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null); + i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true); + i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap); + }; + i3GEO.pluginI3geo.OBJETOS[camada.name] = layerkml; + } + }, + openlayers : { + aplicaPropriedades : function(camada) { + camada.sel = "nao"; + camada.download = "nao"; + camada.AGUARDALEGENDA = false; + camada.temporizador = ""; + camada.copia = false; + camada.procurar = false; + camada.toponimia = false; + camada.etiquetas = false; + camada.tabela = false; + camada.grafico = false; + camada.destacar = false; + camada.wms = false; + camada.classe = "NAO"; + return camada; + }, + layerMashup : function(camada, epsg){ + i3GEO.pluginI3geo.layerkml.openlayers.inicia(camada,i3GEO.editorOL.mapa); + return []; + }, + inicia : function(camada, objMapa) { + var layerkml, url, temp; + //url = i3GEO.configura.locaplic + "/classesphp/proxy.php?url=" + camada.plugini3geo.parametros.url; + url = i3GEO.configura.locaplic + "/ferramentas/layerkml/getkml.php?sid=" + i3GEO.configura.sid + "&tema=" + camada.nomeoriginal; + layerkml = new ol.layer.Vector({ + name : camada.name, + isBaseLayer : false, + source : new ol.source.Vector({ + url : url, + format : new ol.format.KML({ + extractStyles : true + }), + tipoServico : "kml" + }) + }); + i3geoOL.addLayer(layerkml); + if (!objMapa) { + objMapa = i3geoOL; + } + temp = function(pixel) { + var feature, chaves, c, i = 0, html = "", prop, g; + feature = i3geoOL.forEachFeatureAtPixel(pixel, function(feature, layer) { + return feature; + }); + if (feature) { + i3GEO.Interface.openlayers.BALAOPROP.removeAoAdicionar = false; + i3GEO.Interface.openlayers.BALAOPROP.classeCadeado = "i3GEOiconeFechado"; + chaves = feature.getKeys(); + prop = feature.getProperties(); + c = chaves.length; + for (i = 0; i < c; i++) { + if (chaves[i] != "geometry" && chaves[i] != "styleUrl") { + html += chaves[i] + ": " + prop[chaves[i]]; + } + } + g = feature.getGeometry().getCoordinates(); + i3GEO.Interface.openlayers.balao(html, "", g[0], g[1], "kml"); + } + }; + i3geoOL.on('click', function(evt) { + evt.stopPropagation(); + evt.preventDefault(); + if (evt.dragging) { + return; + } + temp(i3geoOL.getEventPixel(evt.originalEvent)); + }); - i3GEO.janela.fechaAguarde("aguardePlugin"); - i3GEO.eventos.cliquePerm.ativo = false; + i3GEO.janela.fechaAguarde("aguardePlugin"); + i3GEO.eventos.cliquePerm.ativo = false; - layerkml.ligaCamada = function() { - i3GEO.eventos.cliquePerm.ativo = false; - }; - layerkml.desLigaCamada = function() { - i3GEO.eventos.cliquePerm.ativo = true; - }; - layerkml.removeCamada = function() { - i3GEO.eventos.cliquePerm.ativo = true; - }; - layerkml.atualizaCamada = function() { - i3GEO.eventos.cliquePerm.ativo = false; - }; - i3GEO.pluginI3geo.OBJETOS[camada.name] = layerkml; - } - } - }, - /** - * Section: i3GEO.pluginI3geo.parametrossql - * - * Adiciona ao mapa uma camada vetorial baseada em um arquivo mapfile normal porém permite substituir parâmetros no - * item DATA do LAYER - * - * Com o plugin, o i3GEO irá mostrar um formulário com parâmetros quando o usuário adicionar uma camada - * ao mapa - * - * O formulário colhe os valores que serão utilizados para substituir chaves inseridas no SQL - * - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO - * - * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin - * - * Ver ferramentas/parametrossql - * - * Exemplo: - * - * "PLUGINI3GEO" - * '{"plugin":"parametrossql","parametros":{[{"titulo":"","tipo":"input|select","valores":[],"chave":"","prog":"","ativo":sim|nao}]}}' - * - * A opção "ativo" indica se o formulário será aberto ou não quando a camada for - * adicionada ao mapa - */ - parametrossql : { - linkAjuda : function() { - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=127"; - }, - formAdmin : function(config,onde,tema,salva,remove) { - if (typeof (console) !== 'undefined') - console.info("i3GEO.pluginI3geo.parametrossql.formAdmin()"); + layerkml.ligaCamada = function() { + i3GEO.eventos.cliquePerm.ativo = false; + }; + layerkml.desLigaCamada = function() { + i3GEO.eventos.cliquePerm.ativo = true; + }; + layerkml.removeCamada = function() { + i3GEO.eventos.cliquePerm.ativo = true; + }; + layerkml.atualizaCamada = function() { + i3GEO.eventos.cliquePerm.ativo = false; + }; + i3GEO.pluginI3geo.OBJETOS[camada.name] = layerkml; + } + } + }, + /** + * Section: i3GEO.pluginI3geo.parametrossql + * + * Adiciona ao mapa uma camada vetorial baseada em um arquivo mapfile normal porém permite substituir parâmetros no + * item DATA do LAYER + * + * Com o plugin, o i3GEO irá mostrar um formulário com parâmetros quando o usuário adicionar uma camada + * ao mapa + * + * O formulário colhe os valores que serão utilizados para substituir chaves inseridas no SQL + * + * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO + * + * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin + * + * Ver ferramentas/parametrossql + * + * Exemplo: + * + * "PLUGINI3GEO" + * '{"plugin":"parametrossql","parametros":{[{"titulo":"","tipo":"input|select","valores":[],"chave":"","prog":"","ativo":sim|nao}]}}' + * + * A opção "ativo" indica se o formulário será aberto ou não quando a camada for + * adicionada ao mapa + */ + parametrossql : { + linkAjuda : function() { + return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=127"; + }, + formAdmin : function(config,onde,tema,salva,remove) { + if (typeof (console) !== 'undefined') + console.info("i3GEO.pluginI3geo.parametrossql.formAdmin()"); - if(!i3GEO.template.parametrossql){ - var t1 = i3GEO.configura.locaplic + "/js/templates/parametrossqlForm_mst.html"; - $.get(t1).done(function(r1) { - i3GEO.template.parametrossql = r1; - i3GEO.pluginI3geo.parametrossql.formAdmin(config,onde,tema,salva,remove); - }).fail(function() { - i3GEO.janela.closeMsg($trad("erroTpl")); - return; - }); - return; - } - var linhas=[],temp,mustache, n, i, parametros, ins = "", configDefault = - '{"plugin":"parametrossql","ativo":"sim","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""}]}'; - if (config === "") { - config = configDefault; - } - config = JSON.parse(config); - if (config.plugin != "parametrossql") { - config = JSON.parse(configDefault); - } - parametros = config.parametros; - n = parametros.length; - if (config.ativo == undefined) { - config.ativoSim = "selected"; - config.ativoNao = ""; - } else { - config.ativoSim = ""; - config.ativoNao = "selected"; - } - for (i = 0; i < n; i++) { - temp = {}; - temp.titulo = parametros[i].titulo; - temp.chave = parametros[i].chave; - temp.tipo = parametros[i].tipo; - temp.valores = parametros[i].valores; - temp.prog = parametros[i].prog; - linhas.push(temp); - } - mustache = { - "ativo": config.ativo, - "tema": tema, - "linhas": linhas, - "sim": config.sim, - "nao": config.nao, - "salvaPlugin": salva, - "removePlugin": remove - }; - ins = Mustache.render( - i3GEO.template.parametrossql, - $.extend( - {}, - mustache, - i3GEO.idioma.OBJETOIDIOMA - ) - ); - if($i(onde)){ - $i(onde).innerHTML = ins; - return false; - } else { - return ins; - } - }, - // pega os valores do formulario quando e aberto no sistema de - // administracao + if(!i3GEO.template.parametrossql){ + var t1 = i3GEO.configura.locaplic + "/js/templates/parametrossqlForm_mst.html"; + $.get(t1).done(function(r1) { + i3GEO.template.parametrossql = r1; + i3GEO.pluginI3geo.parametrossql.formAdmin(config,onde,tema,salva,remove); + }).fail(function() { + i3GEO.janela.closeMsg($trad("erroTpl")); + return; + }); + return; + } + var linhas=[],temp,mustache, n, i, parametros, ins = "", configDefault = + '{"plugin":"parametrossql","ativo":"sim","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""},{"titulo":"","tipo":"input","valores":[],"chave":"","prog":""}]}'; + if (config === "") { + config = configDefault; + } + config = JSON.parse(config); + if (config.plugin != "parametrossql") { + config = JSON.parse(configDefault); + } + parametros = config.parametros; + n = parametros.length; + if (config.ativo == undefined) { + config.ativoSim = "selected"; + config.ativoNao = ""; + } else { + config.ativoSim = ""; + config.ativoNao = "selected"; + } + for (i = 0; i < n; i++) { + temp = {}; + temp.titulo = parametros[i].titulo; + temp.chave = parametros[i].chave; + temp.tipo = parametros[i].tipo; + temp.valores = parametros[i].valores; + temp.prog = parametros[i].prog; + linhas.push(temp); + } + mustache = { + "ativo": config.ativo, + "tema": tema, + "linhas": linhas, + "sim": config.sim, + "nao": config.nao, + "salvaPlugin": salva, + "removePlugin": remove + }; + ins = Mustache.render( + i3GEO.template.parametrossql, + $.extend( + {}, + mustache, + i3GEO.idioma.OBJETOIDIOMA + ) + ); + if($i(onde)){ + $i(onde).innerHTML = ins; + return false; + } else { + return ins; + } + }, + // pega os valores do formulario quando e aberto no sistema de + // administracao - parametrosFormAdmin : function(onde) { - var campo = 0, nlinhas = 4, ncampos = 5, campos = onde.getElementsByTagName("input"), par = [], temp = [], i, j; - for (j = 0; j < nlinhas; j++) { - temp = []; - for (i = 0; i < ncampos; i++) { - if (campos[campo] && campos[campo].name != "") { - temp.push('"' + campos[campo].name + '" : "' + campos[campo].value + '"'); - } - campo++; - } - par.push("{" + temp.join(",") + "}"); - } - return '{"plugin":"parametrossql","ativo":"' + $i("parametrosSqlAtivo").value + '","parametros":[' + par.join(",") + ']}'; - }, - /** - * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e - * utilizado para reabrir o formulario de parametros - */ - iconeArvoreDeCamadas : function(nomecamada) { - var icone = - ""; - return icone; - }, - //link na forma de texto para incluir no menu de contexto - clickArvoreDeCamadas : function(nomecamada) { - var icone = - "

Parâmetros"; - return icone; - }, - buscaParForm : function(nomecamada) { - var p, cp, temp, s; - temp = function(retorno) { - var camada; - retorno.data.ativo = "sim"; - // pega o objeto camada - if (i3GEO.arvoreDeCamadas) { - camada = i3GEO.arvoreDeCamadas.pegaTema(nomecamada); - camada.plugini3geo = retorno.data; - } else { - camada = { - plugini3geo : retorno.data, - name : nomecamada - }; - } - i3GEO.pluginI3geo.parametrossql.inicia(camada); - }; - s = i3GEO.configura.sid; - if (s === undefined) { - s = ""; - } - // aqui e necessario buscar os parametros do plugin para poder abrir o formulario - p = - i3GEO.configura.locaplic + "/ferramentas/parametrossql/exec.php?g_sid=" - + s - + "&funcao=PARAMETROSPLUGIN&tema=" - + nomecamada; - cp = new cpaint(); - cp.set_response_type("JSON"); - cp.call(p, "foo", temp); - }, - inicia : function(camada) { - i3GEO.janela.fechaAguarde("aguardePlugin"); - var iniciaform = function() { - i3GEOF.parametrossql.iniciaJanelaFlutuante(camada); - }; - i3GEO.util.scriptTag( - (i3GEO.configura.locaplic + "/ferramentas/parametrossql/dependencias.php"), - iniciaform, - "parametrossql_script"); - }, - // @TODO permitir que os parametros sejam modificados mesmo depois de terem sido definidos - googlemaps : { - inicia : function(camada) { - i3GEO.pluginI3geo.parametrossql.inicia(camada); - }, - aplicaPropriedades : function(camada) { - return camada; - } - }, - openlayers : { - inicia : function(camada) { - i3GEO.pluginI3geo.parametrossql.inicia(camada); - }, - aplicaPropriedades : function(camada) { - return camada; - }, - /** - * parametros (opcional) - {} - */ - layerMashup : function(camada, epsg, funcao, parametros) { - var p = [], tile, url; - if (!camada.cache) { - camada["cache"] = "NAO"; - } - if (!camada.transitioneffect) { - camada["transitioneffect"] = "SIM"; - } - if(camada["transitioneffect"] === "SIM"){ - camada["transitioneffect"] = "resize"; - } - else{ - camada["transitioneffect"] = null; - } - if(camada["tiles"] === "NAO"){ - tile = false; - } - else{ - tile = true; - } - // o gerador de OGC e especifico desse plugin, pois aceita parametros diferentes do original i3geo/ogc.php - url = i3GEO.configura.locaplic + "ferramentas/parametrossql/ogc.php?tema=" + camada.name; - if (camada.cache === "NAO") { - p.push(new OpenLayers.Layer.WMS(camada.tema, url + "&DESLIGACACHE=sim&", { - layers : camada.name, - SRS : 'EPSG:' + epsg, - FORMAT : 'image/png' - }, { - singleTile : tile, - isBaseLayer : false, - visibility : true, - transitionEffect : camada["transitioneffect"], - layername : camada.name, - plugini3geo : "parametrossql", - "pluginparametros" : camada.plugini3geo.parametros, - ferramentas : camada.ferramentas - })); - } else { - p.push(new OpenLayers.Layer.TMS(camada.tema, url + "&", { - singleTile : false, - isBaseLayer : false, - layers : camada.name, - visibility : true, - serviceVersion : "&tms=", - tileOrigin : new OpenLayers.LonLat(-180, -90), - layername : camada.name, - type : "png", - transitionEffect : camada["transitioneffect"], - plugini3geo : "parametrossql", - "pluginparametros" : camada.plugini3geo.parametros, - ferramentas : camada.ferramentas - })); - p.push(new OpenLayers.Layer.WMS(camada.tema, url + "&", { - layers : camada.name, - SRS : 'EPSG:' + epsg, - FORMAT : 'image/png' - }, { - singleTile : true, - isBaseLayer : false, - visibility : false, - //displayInLayerSwitcher:false, - transitionEffect : null, - layername : camada.name, - plugini3geo : "parametrossql", - "pluginparametros" : camada.plugini3geo.parametros, - ferramentas : camada.ferramentas - })); - } - if(funcao){ - funcao.call("", p); - } - else{ - return p; - } - } - } - } + parametrosFormAdmin : function(onde) { + var campo = 0, nlinhas = 4, ncampos = 5, campos = onde.getElementsByTagName("input"), par = [], temp = [], i, j; + for (j = 0; j < nlinhas; j++) { + temp = []; + for (i = 0; i < ncampos; i++) { + if (campos[campo] && campos[campo].name != "") { + temp.push('"' + campos[campo].name + '" : "' + campos[campo].value + '"'); + } + campo++; + } + par.push("{" + temp.join(",") + "}"); + } + return '{"plugin":"parametrossql","ativo":"' + $i("parametrosSqlAtivo").value + '","parametros":[' + par.join(",") + ']}'; + }, + /** + * Constroi um icone que sera adicionado na barra de icones do tema quando for adicionado na arvore de camadas Esse icone e + * utilizado para reabrir o formulario de parametros + */ + iconeArvoreDeCamadas : function(nomecamada) { + var icone = + ""; + return icone; + }, + //link na forma de texto para incluir no menu de contexto + clickArvoreDeCamadas : function(nomecamada) { + var icone = + "

Parâmetros"; + return icone; + }, + buscaParForm : function(nomecamada,novaCamada) { + var p, cp, temp, s; + temp = function(retorno) { + var camada; + retorno.data.ativo = "sim"; + // pega o objeto camada + if (i3GEO.arvoreDeCamadas) { + camada = i3GEO.arvoreDeCamadas.pegaTema(nomecamada); + camada.plugini3geo = retorno.data; + } else { + camada = { + plugini3geo : retorno.data, + name : nomecamada + }; + } + if(!novaCamada){ + camada.novaCamada = "hidden"; + } else { + camada.novaCamada = ""; + } + i3GEO.pluginI3geo.parametrossql.inicia(camada); + }; + s = i3GEO.configura.sid; + if (s === undefined) { + s = ""; + } + // aqui e necessario buscar os parametros do plugin para poder abrir o formulario + p = + i3GEO.configura.locaplic + "/ferramentas/parametrossql/exec.php?g_sid=" + + s + + "&funcao=PARAMETROSPLUGIN&tema=" + + nomecamada; + cp = new cpaint(); + cp.set_response_type("JSON"); + cp.call(p, "foo", temp); + }, + inicia : function(camada) { + + i3GEO.janela.fechaAguarde("aguardePlugin"); + var iniciaform = function() { + i3GEOF.parametrossql.iniciaJanelaFlutuante(camada); + }; + i3GEO.util.scriptTag( + (i3GEO.configura.locaplic + "/ferramentas/parametrossql/dependencias.php"), + iniciaform, + "parametrossql_script"); + }, + // @TODO permitir que os parametros sejam modificados mesmo depois de terem sido definidos + googlemaps : { + inicia : function(camada) { + i3GEO.pluginI3geo.parametrossql.inicia(camada); + }, + aplicaPropriedades : function(camada) { + return camada; + } + }, + openlayers : { + inicia : function(camada) { + i3GEO.pluginI3geo.parametrossql.inicia(camada); + }, + aplicaPropriedades : function(camada) { + return camada; + }, + /** + * parametros (opcional) - {} + */ + layerMashup : function(camada, epsg, funcao, parametros) { + var p = [], tile, url; + if (!camada.cache) { + camada["cache"] = "NAO"; + } + if (!camada.transitioneffect) { + camada["transitioneffect"] = "SIM"; + } + if(camada["transitioneffect"] === "SIM"){ + camada["transitioneffect"] = "resize"; + } + else{ + camada["transitioneffect"] = null; + } + if(camada["tiles"] === "NAO"){ + tile = false; + } + else{ + tile = true; + } + // o gerador de OGC e especifico desse plugin, pois aceita parametros diferentes do original i3geo/ogc.php + url = i3GEO.configura.locaplic + "ferramentas/parametrossql/ogc.php?tema=" + camada.name; + if (camada.cache === "NAO") { + p.push(new OpenLayers.Layer.WMS(camada.tema, url + "&DESLIGACACHE=sim&", { + layers : camada.name, + SRS : 'EPSG:' + epsg, + FORMAT : 'image/png' + }, { + singleTile : tile, + isBaseLayer : false, + visibility : true, + transitionEffect : camada["transitioneffect"], + layername : camada.name, + plugini3geo : "parametrossql", + "pluginparametros" : camada.plugini3geo.parametros, + ferramentas : camada.ferramentas + })); + } else { + p.push(new OpenLayers.Layer.TMS(camada.tema, url + "&", { + singleTile : false, + isBaseLayer : false, + layers : camada.name, + visibility : true, + serviceVersion : "&tms=", + tileOrigin : new OpenLayers.LonLat(-180, -90), + layername : camada.name, + type : "png", + transitionEffect : camada["transitioneffect"], + plugini3geo : "parametrossql", + "pluginparametros" : camada.plugini3geo.parametros, + ferramentas : camada.ferramentas + })); + p.push(new OpenLayers.Layer.WMS(camada.tema, url + "&", { + layers : camada.name, + SRS : 'EPSG:' + epsg, + FORMAT : 'image/png' + }, { + singleTile : true, + isBaseLayer : false, + visibility : false, + //displayInLayerSwitcher:false, + transitionEffect : null, + layername : camada.name, + plugini3geo : "parametrossql", + "pluginparametros" : camada.plugini3geo.parametros, + ferramentas : camada.ferramentas + })); + } + if(funcao){ + funcao.call("", p); + } + else{ + return p; + } + } + } + } }; -- libgit2 0.21.2