Commit dbffb28b47bb9ca9c6d6715b2429e65e801b630c

Authored by Edmar Moretti
1 parent 1a965084

Cria ção da opção Junção de Tabelas, mostrada na lista de funções que operam sob…

…re camadas. Essa opção afeta apenas os temas que são advindos do sistema Metaestat e permite a junção de tabelas e criação dinâmica de colunas calculadas
admin/admin.db
No preview for this file type
classesphp/classe_mapa.php
@@ -275,7 +275,8 @@ class Mapa @@ -275,7 +275,8 @@ class Mapa
275 "ferramentas", 275 "ferramentas",
276 "legendaimg", 276 "legendaimg",
277 "offsite", 277 "offsite",
278 - "numclasses" 278 + "numclasses",
  279 + "id_medida_variavel"
279 ); 280 );
280 foreach ($this->layers as $oLayer){ 281 foreach ($this->layers as $oLayer){
281 $sel = "nao"; 282 $sel = "nao";
@@ -510,7 +511,8 @@ class Mapa @@ -510,7 +511,8 @@ class Mapa
510 $ferramentas, 511 $ferramentas,
511 $oLayer->getmetadata("legendaimg"), 512 $oLayer->getmetadata("legendaimg"),
512 $oLayer->offsite->red.",".$oLayer->offsite->green.",".$oLayer->offsite->blue, 513 $oLayer->offsite->red.",".$oLayer->offsite->green.",".$oLayer->offsite->blue,
513 - $oLayer->numclasses 514 + $oLayer->numclasses,
  515 + $oLayer->getmetadata("METAESTAT_ID_MEDIDA_VARIAVEL")
514 ); 516 );
515 } 517 }
516 } 518 }
ferramentas/atalhoscamada/dicionario.js
@@ -54,5 +54,13 @@ i3GEOF.atalhoscamada.dicionario = { @@ -54,5 +54,13 @@ i3GEOF.atalhoscamada.dicionario = {
54 es : "", 54 es : "",
55 it : "" 55 it : ""
56 } 56 }
57 - ] 57 + ],
  58 + "juncao" : [
  59 + {
  60 + pt : "Junção de camadas",
  61 + en : "",
  62 + es : "",
  63 + it : ""
  64 + }
  65 + ]
58 }; 66 };
ferramentas/atalhoscamada/index.js
@@ -72,6 +72,7 @@ i3GEOF.atalhoscamada = @@ -72,6 +72,7 @@ i3GEOF.atalhoscamada =
72 dicionario["noPolygonHidden"] = (ltema.type === 2) ? "":"hidden"; 72 dicionario["noPolygonHidden"] = (ltema.type === 2) ? "":"hidden";
73 dicionario["destacaHidden"] = (i3GEO.Interface.ATUAL == "openlayers") ? "":"hidden"; 73 dicionario["destacaHidden"] = (i3GEO.Interface.ATUAL == "openlayers") ? "":"hidden";
74 dicionario["wmsHidden"] = (ltema.permiteogc.toLowerCase() !== "nao") ? "":"hidden"; 74 dicionario["wmsHidden"] = (ltema.permiteogc.toLowerCase() !== "nao") ? "":"hidden";
  75 + dicionario["metaestatHidden"] = (parseInt(ltema.id_medida_variavel,10) > 0) ? "":"hidden";
75 76
76 return dicionario; 77 return dicionario;
77 }, 78 },
@@ -228,5 +229,9 @@ i3GEOF.atalhoscamada = @@ -228,5 +229,9 @@ i3GEOF.atalhoscamada =
228 cp.set_response_type("JSON"); 229 cp.set_response_type("JSON");
229 cp.call(p, "foo", temp, "cores=" + cores); 230 cp.call(p, "foo", temp, "cores=" + cores);
230 } 231 }
  232 + },
  233 + //juncao de tabelas advindas do sistema de metadados
  234 + juncao: function(idjanela){
  235 + i3GEO.analise.dialogo.juntamedidasvariavel(i3GEOF.atalhoscamada.propJanelas[idjanela].tema);
231 } 236 }
232 }; 237 };
233 \ No newline at end of file 238 \ No newline at end of file
ferramentas/atalhoscamada/template_mst.html
@@ -34,6 +34,7 @@ @@ -34,6 +34,7 @@
34 <a href='javascript:void(0)' onclick="i3GEO.navega.destacaTema.inicia('{{tema}}')" class='{{destacaHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{destaca}}}</a> 34 <a href='javascript:void(0)' onclick="i3GEO.navega.destacaTema.inicia('{{tema}}')" class='{{destacaHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{destaca}}}</a>
35 <a href='javascript:void(0)' onclick="i3GEO.tema.contorno('{{tema}}')" class='{{noPolygonHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{contorno}}}</a> 35 <a href='javascript:void(0)' onclick="i3GEO.tema.contorno('{{tema}}')" class='{{noPolygonHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{contorno}}}</a>
36 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.mostraWms('{{tema}}')" class='{{wmsHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{wms}}}</a> 36 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.mostraWms('{{tema}}')" class='{{wmsHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{wms}}}</a>
  37 + <a href='javascript:void(0)' onclick="i3GEOF.atalhoscamada.juncao('{{{idjanela}}}')" class='{{metaestatHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{juncao}}}</a>
37 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.tme('{{tema}}')" class='{{tmeHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{tme}}}</a> 38 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.tme('{{tema}}')" class='{{tmeHidden}} btn btn-primary btn-lg btn-block btn-raised'>{{{tme}}}</a>
38 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.storymap('{{tema}}')" class='{{StoryMapHidden}} btn btn-primary btn-lg btn-block btn-raised'>StoryMap</a> 39 <a href='javascript:void(0)' onclick="i3GEO.tema.dialogo.storymap('{{tema}}')" class='{{StoryMapHidden}} btn btn-primary btn-lg btn-block btn-raised'>StoryMap</a>
39 </div> 40 </div>
ferramentas/juntamedidasvariavel/dependencias.php 0 → 100755
@@ -0,0 +1,24 @@ @@ -0,0 +1,24 @@
  1 +<?php
  2 +include(dirname(__FILE__)."/../blacklist.php");
  3 +verificaBlFerramentas(basename(dirname(__FILE__)));
  4 +
  5 +
  6 +/**
  7 + * Carrega os programas javascript necessarios para a ferramenta
  8 + * Esse programa e usado na tag <script> ou com a funcao scripttag do i3Geo
  9 + * Alem de carregar os scripts, carrega tambem o template no formato MUSTACHE, definindo a variavel
  10 + * javascript i3GEOF.mmscale.MUSTACHE
  11 + * O template e substituido pelos valores definidos em index.js no momento da inicializacao da ferramenta
  12 + */
  13 +if(extension_loaded('zlib')){
  14 + ob_start('ob_gzhandler');
  15 +}
  16 +header("Content-type: text/javascript");
  17 +include("index.js");
  18 +include("dicionario.js");
  19 +echo "\n";
  20 +
  21 +if(extension_loaded('zlib')){
  22 + ob_end_flush();
  23 +}
  24 +?>
0 \ No newline at end of file 25 \ No newline at end of file
ferramentas/juntamedidasvariavel/dicionario.js 0 → 100755
@@ -0,0 +1,47 @@ @@ -0,0 +1,47 @@
  1 +i3GEOF.juntamedidasvariavel.dicionario = {
  2 + 'titulo' : [ {
  3 + pt : "Jun&ccedil;&atilde;o de tabelas",
  4 + en : "",
  5 + es : ""
  6 + } ],
  7 + 'ajuda' : [ {
  8 + pt : "Os c&aacute;lculos s&atilde;o f&oacute;rmulas que utilizam as colunas que forem juntadas e que ser&atilde;o inclu&iacute;das na nova camada. Cada uma dessas colunas receber&aacute; um nome sequencial, por exemplo <i>valortema0,valortema1, valortema2...</i><br><br>As colunas calculadas podem utilizar esses nomes como entrada em f&oacute;rmulas. Cada f&oacute;rmula ir&aacute; gerar uma nova coluna na tabela e deve utilizar a sintaxe SQL (<a href='http://www.postgresql.org/docs/9.3/static/functions-math.html' target=_blank >SQL no Postgres</a>)<br><br>Exemplos de uso:<br><br>coluna de nome: <b>soma</b><br>valortema0 + valortema1 <br><br>coluna de nome: <b>taxa</b><br>(valortema0 * 100) / valortema1",
  9 + en : "",
  10 + es : ""
  11 + } ],
  12 + 'escolha' : [ {
  13 + pt : "Escolha as camadas de mesmo tipo e regi&atilde;o",
  14 + en : "",
  15 + es : ""
  16 + } ],
  17 + 'nome' : [ {
  18 + pt : "Nome da nova camada",
  19 + en : "",
  20 + es : ""
  21 + } ],
  22 + 'aplicar' : [ {
  23 + pt : "Aplicar",
  24 + en : "",
  25 + es : ""
  26 + } ],
  27 + 'colunas' : [ {
  28 + pt : "Colunas calculadas (opcional)",
  29 + en : "",
  30 + es : ""
  31 + } ],
  32 + 'addno' : [ {
  33 + pt : "Adiciona entrada de formulario",
  34 + en : "",
  35 + es : ""
  36 + } ],
  37 + 'tituloform' : [ {
  38 + pt : "Nome (apenas letras e n&uacute;meros)",
  39 + en : "",
  40 + es : ""
  41 + } ],
  42 + 'titulosql' : [ {
  43 + pt : "Digite a f&oacute;rmula (padr&atilde;o sql)",
  44 + en : "",
  45 + es : ""
  46 + } ]
  47 +};
ferramentas/juntamedidasvariavel/index.js 0 → 100755
@@ -0,0 +1,168 @@ @@ -0,0 +1,168 @@
  1 +if(typeof(i3GEOF) === 'undefined'){
  2 + var i3GEOF = {};
  3 +}
  4 +
  5 +i3GEOF.juntamedidasvariavel = {
  6 + tema : "",
  7 + /*
  8 + Variavel: aguarde
  9 +
  10 + Estilo do objeto DOM com a imagem de aguarde existente no cabe&ccedil;alho da janela.
  11 + */
  12 + aguarde: "",
  13 + /**
  14 + * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php
  15 + */
  16 + MUSTACHE : "",
  17 + /**
  18 + * Susbtitutos para o template
  19 + */
  20 + mustacheHash : function() {
  21 + var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.juntamedidasvariavel.dicionario);
  22 + return dicionario;
  23 + },
  24 + /*
  25 + Function: inicia
  26 +
  27 + Inicia a ferramenta. &Eacute; chamado por criaJanelaFlutuante
  28 +
  29 + Parametro:
  30 +
  31 + iddiv {String} - id do div que receber&aacute; o conteudo HTML da ferramenta
  32 + */
  33 + inicia: function(iddiv){
  34 + if(i3GEOF.juntamedidasvariavel.MUSTACHE == ""){
  35 + $.get(i3GEO.configura.locaplic + "/ferramentas/juntamedidasvariavel/template_mst.html", function(template) {
  36 + i3GEOF.juntamedidasvariavel.MUSTACHE = template;
  37 + i3GEOF.juntamedidasvariavel.inicia(iddiv);
  38 + });
  39 + return;
  40 + }
  41 + $i(iddiv).innerHTML = i3GEOF.juntamedidasvariavel.html();
  42 + var temp = function(retorno){
  43 + i3GEOF.juntamedidasvariavel.aguarde.visibility = "hidden";
  44 +
  45 + var n = retorno.length, i, lista = "";
  46 +
  47 + for(i=0;i<n;i++){
  48 + lista += '<div class="checkbox text-left"><label>'
  49 + + '<input checked value="' + retorno[i].layer + '" type="checkbox" >'
  50 + + '<span class="checkbox-material noprint"><span class="check"></span></span>'
  51 + + retorno[i].tema + '</label></div>';
  52 + }
  53 + $i("i3GEOFjuntaLista").innerHTML = lista;
  54 + i3GEOF.juntamedidasvariavel.noNovoCalculo();
  55 + };
  56 + var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +
  57 + "&funcao=listaLayersAgrupados";
  58 + i3GEOF.juntamedidasvariavel.aguarde.visibility = "visible";
  59 + i3GEO.util.ajaxGet(p,temp);
  60 + },
  61 + /*
  62 + Function: html
  63 +
  64 + Gera o c&oacute;digo html para apresenta&ccedil;&atilde;o das op&ccedil;&otilde;es da ferramenta
  65 +
  66 + Retorno:
  67 +
  68 + String com o c&oacute;digo html
  69 + */
  70 + html:function() {
  71 + var ins = Mustache.render(i3GEOF.juntamedidasvariavel.MUSTACHE, i3GEOF.juntamedidasvariavel.mustacheHash());
  72 + return ins;
  73 + },
  74 + /*
  75 + Function: iniciaJanelaFlutuante
  76 +
  77 + Cria a janela flutuante para controle da ferramenta.
  78 + */
  79 + iniciaJanelaFlutuante: function(tema){
  80 + var janela,divid,titulo;
  81 + if($i("i3GEOF.juntamedidasvariavel")){
  82 + i3GEOF.juntamedidasvariavel.tema = tema;
  83 + i3GEOF.juntamedidasvariavel.inicia("i3GEOF.juntamedidasvariavel_corpo");
  84 + return;
  85 + }
  86 + //cria a janela flutuante
  87 + titulo = "<span class='i3GeoTituloJanelaBsNolink' >"+$trad("titulo",i3GEOF.juntamedidasvariavel.dicionario)+"</span></div>";
  88 +
  89 + janela = i3GEO.janela.cria(
  90 + "330px",
  91 + "260px",
  92 + "",
  93 + "",
  94 + "",
  95 + titulo,
  96 + "i3GEOF.juntamedidasvariavel",
  97 + false,
  98 + "hd",
  99 + "",
  100 + "",
  101 + "",
  102 + true,
  103 + "",
  104 + "",
  105 + "",
  106 + ""
  107 + );
  108 + divid = janela[2].id;
  109 + i3GEOF.juntamedidasvariavel.aguarde = $i("i3GEOF.juntamedidasvariavel_imagemCabecalho").style;
  110 + i3GEOF.juntamedidasvariavel.inicia(divid);
  111 + },
  112 + noNovoCalculo: function(){
  113 + var no = document.createElement("div");
  114 + no.innerHTML = '<div class="form-group label-fixed condensed" >'
  115 + + '<label class="control-label" for="">' + $trad("tituloform",i3GEOF.juntamedidasvariavel.dicionario) + '</label>'
  116 + + '<input class="form-control input-lg" type="text" value="" /></div>'
  117 + + '<h5>' + $trad("titulosql",i3GEOF.juntamedidasvariavel.dicionario) + '</h5>'
  118 + + '<div class="form-group label-fixed condensed"><textarea class="form-control input-lg" rows="4"></textarea></div>';
  119 +
  120 + $i("i3GEOFjuntaColunasCalculadas").appendChild(no);
  121 + },
  122 + pegaCalculos: function(){
  123 + var div = $i("i3GEOFjuntaColunasCalculadas"),
  124 + nomes = div.getElementsByTagName("input"),
  125 + formulas = div.getElementsByTagName("textarea"),
  126 + n = nomes.length,
  127 + parnomes = [],
  128 + parformulas = [],
  129 + i;
  130 + for(i=0;i<n;i++){
  131 + if(nomes[i].value != "" && formulas[i].value != ""){
  132 + parnomes.push(nomes[i].value);
  133 + parformulas.push(formulas[i].value);
  134 + }
  135 + }
  136 + return "&colunascalc="+parnomes.join(",")+"&formulas="+parformulas.join(",");
  137 + },
  138 + aplica: function(){
  139 + if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){
  140 + return;
  141 + };
  142 + i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");
  143 + var ps,atualiza,p,i,
  144 + lista = [],
  145 + ics = $i("i3GEOF.junta_corpo").getElementsByTagName("input"),
  146 + n = ics.length;
  147 + for(i=0;i<n;i++){
  148 + if(ics[i].type == "checkbox" && ics[i].checked === true){
  149 + lista.push(ics[i].value);
  150 + }
  151 + }
  152 + if(lista.length == 0){
  153 + alert("selecionaCamada");
  154 + return;
  155 + }
  156 + i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");
  157 + p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +
  158 + "&funcao=juntaMedidasVariaveis&layerNames="+lista.join(",")+"&nome="+$i("i3GEOFjuntaNovoNome").value;
  159 + ps = i3GEOF.juntaMedidasVariaveis.pegaCalculos();
  160 + atualiza = function(retorno){
  161 + i3GEO.janela.fechaAguarde("aguardeAnalise");
  162 + i3GEO.atualiza();
  163 + i3GEO.temaAtivo = retorno.data;
  164 + };
  165 + //i3GEO.util.ajaxGet(p,atualiza);
  166 + cpJSON.call(p,"foo",atualiza,ps);
  167 + }
  168 +};
0 \ No newline at end of file 169 \ No newline at end of file
ferramentas/juntamedidasvariavel/template_mst.html 0 → 100755
@@ -0,0 +1,17 @@ @@ -0,0 +1,17 @@
  1 +<div class='container-fluid'>
  2 + <h5>{{{escolha}}}</h5>
  3 + <div id="i3GEOFjuntaLista"></div>
  4 + <div class='form-group label-fixed condensed'>
  5 + <label class="control-label" for="i3GEOFjuntaNovoNome">{{nome}}}</label>
  6 + <input class="form-control input-lg" type='text' id='i3GEOFjuntaNovoNome' value='' />
  7 + </div>
  8 + <button onclick="i3GEOF.juntamedidasvariavel.aplica()" class='btn btn-primary btn-sm btn-raised'>{{{aplicar}}}</button>
  9 + <div id=i3GEOFjuntaColunasCalculadas>
  10 + <h5>{{{colunas}}}</h5>
  11 + <button onclick="i3GEOF.metaestat.analise.juntaMedidasVariaveis.noNovoCalculo()" class='btn btn-primary btn-sm btn-raised'>{{{addno}}}</button>
  12 + </div>
  13 +
  14 + <h5 class="alert alert-info">
  15 + {{{ajuda}}}
  16 + </h5>
  17 +</div>
0 \ No newline at end of file 18 \ No newline at end of file
ferramentas/metaestat/index.js
@@ -252,433 +252,6 @@ i3GEOF.metaestat = { @@ -252,433 +252,6 @@ i3GEOF.metaestat = {
252 i3GEOF.metaestat.comum.aguarde("hidden"); 252 i3GEOF.metaestat.comum.aguarde("hidden");
253 }; 253 };
254 i3GEO.php.listaCamadasMetaestat(temp); 254 i3GEO.php.listaCamadasMetaestat(temp);
255 - },  
256 - /**  
257 - * Abre a janela da ferramenta que permite adicionar labels  
258 - * Executa i3GEO.util.dialogoFerramenta() mas com a funcao i3GEOF.metaestat.analise.abreToponimia()  
259 - * isso permite a obtencao dos parametros necessarios, como a lista de itens que o usuario podera escolher  
260 - */  
261 - toponimia: function(){  
262 - if($i("i3geoCartoAnaliseCamadasCombo").value == ""){  
263 - i3GEO.janela.tempoMsg("Ative uma camada primeiro");  
264 - return;  
265 - }  
266 - i3GEO.mapa.ativaTema($i("i3geoCartoAnaliseCamadasCombo").value);  
267 - i3GEO.util.dialogoFerramenta("i3GEO.tema.dialogo.toponimia()","toponimia","toponimia","dependencias.php","i3GEOF.metaestat.analise.abreToponimia()");  
268 - },  
269 - /**  
270 - * Obtem os parametros necessarios ao funcionamento de i3GEOF.metaestat.analise.toponimia()  
271 - * Abre a janela de opcoes de i3GEOF.toponimia.iniciaJanelaFlutuante()  
272 - */  
273 - abreToponimia: function(){  
274 - if(typeof(i3GEOF.toponimia.dicionario) === 'undefined'){  
275 - i3GEO.util.scriptTag(  
276 - i3GEO.configura.locaplic+"/ferramentas/toponimia/dicionario.js",  
277 - "i3GEOF.metaestat.analise.janelaToponimia()",  
278 - "i3GEOF.toponimia.dicionario_script"  
279 - );  
280 - }  
281 - else{  
282 - i3GEOF.metaestat.analise.janelaToponimia();  
283 - }  
284 - },  
285 - janelaToponimia: function(){  
286 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
287 - "&funcao=pegaDadosTME&tema="+i3GEO.temaAtivo,  
288 - temp = function(retorno){  
289 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
290 - i3GEOF.toponimia.ATIVAITEM = retorno.data.itemDados;  
291 - i3GEOF.toponimia.iniciaJanelaFlutuante();  
292 - };  
293 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
294 - i3GEO.util.ajaxGet(p,temp);  
295 - },  
296 - /**  
297 - * Junta camadas em uma nova, contendo as colunas das medidas  
298 - */  
299 - juntaMedidasVariaveis: {  
300 - inicia: function(){  
301 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
302 - return;  
303 - };  
304 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
305 - "&funcao=listaLayersAgrupados";  
306 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
307 - i3GEO.util.ajaxGet(p,i3GEOF.metaestat.analise.juntaMedidasVariaveis.janelaFlutuante);  
308 - },  
309 - janelaFlutuante: function(retorno){  
310 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
311 - if($i("i3GEOF.junta_corpo")){  
312 - return;  
313 - }  
314 - var minimiza,cabecalho,titulo,ins,n,i,lista = "<table class=lista4 >";  
315 - cabecalho = function(){  
316 - };  
317 - minimiza = function(){  
318 - i3GEO.janela.minimiza("i3GEOF.junta");  
319 - };  
320 - //cria a janela flutuante  
321 - titulo = "</div><div class='i3GeoTituloJanelaBs'>Jun&ccedil;&atilde;o de medidas</div>";  
322 - i3GEO.janela.cria(  
323 - "260px",  
324 - "300px",  
325 - "",  
326 - "",  
327 - "",  
328 - titulo,  
329 - "i3GEOF.junta",  
330 - false,  
331 - "hd",  
332 - cabecalho,  
333 - minimiza,  
334 - "",  
335 - false  
336 - );  
337 - $i("i3GEOF.junta_corpo").style.backgroundColor = "white";  
338 - n = retorno.data.length;  
339 - for(i=0;i<n;i++){  
340 - lista += "<tr><td><input style=cursor:pointer type=checkbox value='"+retorno.data[i].layer+"' ></td><td>"+retorno.data[i].tema+"</td></tr>";  
341 - }  
342 - lista += "</table>";  
343 - ins = "" +  
344 - '<p class=paragrafo ><b>Escolha as camadas de mesmo tipo e regi&atilde;o:</b></p>' +  
345 - lista +  
346 - '<br><p class=paragrafo >Nome da nova camada</p>' +  
347 - $inputText("","","i3GEOFjuntaNovoNome","",30,'') +  
348 - '<br><br><input id=i3geojuntaAplica type="button" value="Aplicar" />' +  
349 - '<div id=i3GEOFjuntaColunasCalculadas >' +  
350 - '<br><p class=paragrafo ><b>Colunas calculadas (opcional)</b>&nbsp;<img title="Adiciona entrada de formulario" onclick="i3GEOF.metaestat.analise.juntaMedidasVariaveis.noNovoCalculo()" src="'+i3GEO.configura.locaplic+'/imagens/plus.gif" style="cursor: pointer;"></p></div>' +  
351 - '<div id=i3GEOFjuntaColunasCalculadasMensagemAjuda ></div>' ;  
352 - $i("i3GEOF.junta_corpo").innerHTML = ins;  
353 - new YAHOO.widget.Button(  
354 - "i3geojuntaAplica",  
355 - {onclick:{fn: i3GEOF.metaestat.analise.juntaMedidasVariaveis.aplica}}  
356 - );  
357 - i3GEOF.metaestat.analise.juntaMedidasVariaveis.noNovoCalculo();  
358 - //ajuda para o calculo  
359 - i3GEO.util.mensagemAjuda("i3GEOFjuntaColunasCalculadasMensagemAjuda",  
360 - "Os c&aacute;lculos s&atilde;o f&oacute;rmulas que utilizam as colunas que forem juntadas e que ser&atilde;o inclu&iacute;das "+  
361 - "na nova camada. Cada uma dessas colunas receber&aacute; um nome sequencial, por exemplo <i>valortema0,valortema1,"+  
362 - "valortema2...</i><br><br>As colunas calculadas podem utilizar esses nomes como entrada em f&oacute;rmulas. "+  
363 - "Cada f&oacute;rmula ir&aacute; gerar uma nova coluna na tabela e deve utilizar a sintaxe SQL (<a href='http://www.postgresql.org/docs/9.3/static/functions-math.html' target=_blank >SQL no Postgres</a>)"+  
364 - "<br><br>Exemplos de uso:<br><br>" +  
365 - "coluna de nome: <b>soma</b><br>" +  
366 - "valortema0 + valortema1 <br><br>" +  
367 - "coluna de nome: <b>taxa</b><br>" +  
368 - "(valortema0 * 100) / valortema1"  
369 - );  
370 - },  
371 - noNovoCalculo: function(){  
372 - var no = document.createElement("div");  
373 - no.style.margin = "10px";  
374 - no.style.padding = "5px";  
375 - no.style.backgroundColor = "beige";  
376 - no.style.width = "210px";  
377 - no.innerHTML = '<p class=paragrafo >Nome (apenas letras e n&uacute;meros)<br>' +  
378 - '<input type=text value="" style=width:205px />' +  
379 - '<br>F&oacute;rmula (padr&atilde;o sql)<br>' +  
380 - '<textarea style=width:205px ></textarea></p>';  
381 - $i("i3GEOFjuntaColunasCalculadas").appendChild(no);  
382 - },  
383 - pegaCalculos: function(){  
384 - var div = $i("i3GEOFjuntaColunasCalculadas"),  
385 - nomes = div.getElementsByTagName("input"),  
386 - formulas = div.getElementsByTagName("textarea"),  
387 - n = nomes.length,  
388 - parnomes = [],  
389 - parformulas = [],  
390 - i;  
391 - for(i=0;i<n;i++){  
392 - if(nomes[i].value != "" && formulas[i].value != ""){  
393 - parnomes.push(nomes[i].value);  
394 - parformulas.push(formulas[i].value);  
395 - }  
396 - }  
397 - return "&colunascalc="+parnomes.join(",")+"&formulas="+parformulas.join(",");  
398 - },  
399 - aplica: function(){  
400 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
401 - return;  
402 - };  
403 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
404 - var ps,atualiza,p,i,  
405 - lista = [],  
406 - ics = $i("i3GEOF.junta_corpo").getElementsByTagName("input"),  
407 - n = ics.length;  
408 - for(i=0;i<n;i++){  
409 - if(ics[i].type == "checkbox" && ics[i].checked === true){  
410 - lista.push(ics[i].value);  
411 - }  
412 - }  
413 - if(lista.length == 0){  
414 - alert("selecionaCamada");  
415 - return;  
416 - }  
417 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
418 - p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
419 - "&funcao=juntaMedidasVariaveis&layerNames="+lista.join(",")+"&nome="+$i("i3GEOFjuntaNovoNome").value;  
420 - ps = i3GEOF.metaestat.analise.juntaMedidasVariaveis.pegaCalculos();  
421 - atualiza = function(retorno){  
422 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
423 - i3GEO.atualiza();  
424 - i3GEO.temaAtivo = retorno.data;  
425 - i3GEOF.metaestat.analise.comboCamadas();  
426 - };  
427 - //i3GEO.util.ajaxGet(p,atualiza);  
428 - cpJSON.call(p,"foo",atualiza,ps);  
429 - }  
430 - },  
431 -  
432 - /**  
433 - * Ativa a ferramenta que permite a modificacao do tipo de representacao da camada  
434 - * Executa i3GEOF.alterarep.iniciaJanelaFlutuante();  
435 - */  
436 - alteraRep: function(){  
437 - if(typeof(i3GEOF.alterarep) === 'undefined'){  
438 - i3GEO.util.scriptTag(  
439 - i3GEO.configura.locaplic+"/ferramentas/metaestat/alterarep.js",  
440 - "i3GEOF.alterarep.iniciaJanelaFlutuante()",  
441 - "i3GEOF.alterarep_script"  
442 - );  
443 - }  
444 - else{  
445 - i3GEOF.alterarep.iniciaJanelaFlutuante();  
446 - }  
447 - },  
448 - /**  
449 - * Ativa a ferramenta que permite a criacao de mapa de calor  
450 - * Executa ferramentas/metaestat/analise.php?funcao=calor;  
451 - */  
452 - calor: function(){  
453 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
454 - return;  
455 - };  
456 -  
457 - if($i("i3geoCartoAnaliseCamadasCombo").value == ""){  
458 - i3GEO.janela.tempoMsg("Ative uma camada primeiro");  
459 - return;  
460 - }  
461 - if(!window.confirm("Gera o mapa de calor? Isso pode demorar...")){  
462 - return;  
463 - }  
464 - i3GEO.janela.tempoMsg("Ser&aacute; considerada apenas a regi&atilde;o mostrada no mapa");  
465 - i3GEO.mapa.ativaTema($i("i3geoCartoAnaliseCamadasCombo").value);  
466 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
467 - "&funcao=calor&tema="+$i("i3geoCartoAnaliseCamadasCombo").value+"&ext="+i3GEO.parametros.mapexten,  
468 - temp = function(retorno){  
469 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
470 - i3GEO.atualiza();  
471 - };  
472 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
473 - i3GEO.util.ajaxGet(p,temp);  
474 - },  
475 - /**  
476 - * Ativa a ferramenta que permite ativar a visualizacao de determinada regiao cadastrada  
477 - * Executa i3GEOF.mostraregiao.iniciaJanelaFlutuante();  
478 - */  
479 - mostraRegiao: function(){  
480 - i3GEO.util.dialogoFerramenta(  
481 - "i3GEOF.metaestat.analise.mostraRegiao()",  
482 - "mostraregiao",  
483 - "mostraregiao",  
484 - "dependencias.php",  
485 - "i3GEOF.mostraregiao.iniciaJanelaFlutuante()"  
486 - );  
487 - },  
488 - /**  
489 - * Ativa a ferramenta que permite ativar/desativar o contorno dos limites utilizados em uma camada  
490 - * Executa ferramentas/metaestat/analise.php?funcao=alteraContorno;  
491 - */  
492 - contorno: function(){  
493 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
494 - return;  
495 - };  
496 -  
497 - if($i("i3geoCartoAnaliseCamadasCombo").value == ""){  
498 - i3GEO.janela.tempoMsg("Ative uma camada primeiro");  
499 - return;  
500 - }  
501 - i3GEO.mapa.ativaTema($i("i3geoCartoAnaliseCamadasCombo").value);  
502 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
503 - "&funcao=alteraContorno&tema="+$i("i3geoCartoAnaliseCamadasCombo").value,  
504 - temp = function(retorno){  
505 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
506 - i3GEO.atualiza();  
507 - i3GEO.Interface.atualizaTema("",i3GEO.temaAtivo);  
508 - i3GEO.arvoreDeCamadas.atualizaLegenda(i3GEO.temaAtivo);  
509 - };  
510 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
511 - i3GEO.util.ajaxGet(p,temp);  
512 - },  
513 - /**  
514 - * Ativa a ferramenta que permite obter e visualizar os dados em KMZ no Google Earth  
515 - * Primeiro obtem os parametros necesarios, como a lista de itens da camada  
516 - * Executa i3GEO.tema.dialogo.tme() com a funcao i3GEOF.metaestat.analise.abreTme()  
517 - */  
518 - ativaTme: function(){  
519 - i3GEO.util.dialogoFerramenta("i3GEO.tema.dialogo.tme()","tme","tme","dependencias.php","i3GEOF.metaestat.analise.abreTme()");  
520 - },  
521 - /**  
522 - * Abre a ferramenta de visualização em 3d  
523 - * Executa i3GEOF.tme.iniciaJanelaFlutuante();  
524 - */  
525 - abreTme: function(){  
526 - if($i("i3geoCartoAnaliseCamadasCombo").value == ""){  
527 - i3GEO.janela.tempoMsg("Ative uma camada primeiro");  
528 - return;  
529 - }  
530 - i3GEO.mapa.ativaTema($i("i3geoCartoAnaliseCamadasCombo").value);  
531 - if(typeof(i3GEOF.tme.dicionario) === 'undefined'){  
532 - i3GEO.util.scriptTag(  
533 - i3GEO.configura.locaplic+"/ferramentas/tme/dicionario.js",  
534 - "i3GEOF.metaestat.analise.janelaTme()",  
535 - "i3GEOF.tme.dicionario_script"  
536 - );  
537 - }  
538 - else{  
539 - i3GEOF.metaestat.analise.janelaTme();  
540 - }  
541 - },  
542 - janelaTme: function(){  
543 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
544 - "&funcao=pegaDadosTME&tema="+i3GEO.temaAtivo,  
545 - temp = function(retorno){  
546 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
547 - i3GEOF.tme.ITEMNOMEREGIOES = retorno.data.itemNomeRegioes;  
548 - i3GEOF.tme.ITEMDADOS = retorno.data.itemDados;  
549 - i3GEOF.tme.iniciaJanelaFlutuante();  
550 - };  
551 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
552 - i3GEO.util.ajaxGet(p,temp);  
553 - },  
554 - /**  
555 - * Abre a ferramenta que mostra um relatorio com sumario estatistico dos dados  
556 - * Executa ferramentas/tabela/exec.php?funcao=estatistica  
557 - */  
558 - estatistica: function(){  
559 - if($i("i3geoCartoAnaliseCamadasCombo").value == ""){  
560 - i3GEO.janela.tempoMsg("Ative uma camada primeiro");  
561 - return;  
562 - }  
563 - i3GEO.mapa.ativaTema($i("i3geoCartoAnaliseCamadasCombo").value);  
564 - //primeiro pega o nome da coluna que contem os dados  
565 - //depois busca as estatisticas  
566 - var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid +  
567 - "&funcao=pegaDadosTME&tema="+i3GEO.temaAtivo,  
568 - temp = function(retorno){  
569 - if(retorno && retorno.data && retorno.data.itemDados != ""){  
570 - var item = retorno.data.itemDados,  
571 - p = i3GEO.configura.locaplic+"/ferramentas/tabela/exec.php?g_sid=" +  
572 - i3GEO.configura.sid+"&funcao=estatistica&item="+item+  
573 - "&tema="+i3GEO.temaAtivo+"&exclui=&ext="+i3GEO.parametros.extentTotal,  
574 - monta = function(retorno){  
575 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
576 - var ins = "",  
577 - nometema,  
578 - nome,  
579 - valor,  
580 - i,  
581 - n;  
582 - nometema = i3GEO.arvoreDeCamadas.pegaTema(i3GEO.temaAtivo);  
583 - if(nometema && nometema.tema){  
584 - ins = "<p style='text-align:left'> <span style='color:gray'><b>Camada: </b></span>"+nometema.tema+"</p>" +  
585 - "<p style='text-align:left'> <span style='color:gray'><b>Coluna: </b></span>"+item+"</p>";  
586 - }  
587 - if(retorno.data.indices !== undefined){  
588 - if (retorno.data.indices){  
589 - n = retorno.data.indices.length;  
590 - for (i=0;i<n;i++){  
591 - nome = eval("retorno.data.variaveis."+retorno.data.indices[i]);  
592 - valor = eval("retorno.data.valores."+retorno.data.indices[i]);  
593 - ins += "<p style='text-align:left'> <span style='color:gray'>"+nome+": </span>"+valor+"</p>";  
594 - }  
595 - }  
596 - }  
597 - else{  
598 - ins = retorno.data;  
599 - }  
600 - i3GEO.janela.mensagemSimples(ins,"Estat&iacute;sticas");  
601 - };  
602 - i3GEO.util.ajaxGet(p,monta);  
603 - }  
604 - else{  
605 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
606 - i3GEO.janela.tempoMsg("Ocorreu algum erro");  
607 - }  
608 - };  
609 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
610 - return;  
611 - };  
612 - i3GEO.janela.abreAguarde("aguardeAnalise","Aguarde...");  
613 - i3GEO.util.ajaxGet(p,temp);  
614 - },  
615 - /**  
616 - * Abre a ferramenta que permite realizar uma animacao baseada nas camadas existentes no mapa  
617 - * executa i3GEO.mapa.dialogo.animacao() com a funcao i3GEOF.metaestat.analise.listaCamadasAnimacao()  
618 - */  
619 - ativaAnimacao: function(){  
620 - i3GEO.util.dialogoFerramenta("i3GEO.mapa.dialogo.animacao()","animacao","animacao","dependencias.php","i3GEOF.metaestat.analise.listaCamadasAnimacao()");  
621 - },  
622 - /**  
623 - * Lista as camadas que podem ser usadas na ferramenta de animacao  
624 - * Preenche o div com a lista usando i3GEOF.animacao.listaDeCamadas()  
625 - * Marca os checkbox das camadas que sao oriundas do sistema metaestat e que estao no mapa  
626 - */  
627 - listaCamadasAnimacao: function(){  
628 - i3GEOF.animacao.iniciaJanelaFlutuante();  
629 - i3GEOF.animacao.listaDeCamadas();  
630 - var temp = function(retorno){  
631 - var temas = retorno.data,  
632 - n = temas.length,  
633 - cs = $i("i3GEOFanimacaoLista").getElementsByTagName("input"),  
634 - ns = cs.length,  
635 - i,j;  
636 - for(i=0;i<n;i++){  
637 - for(j=0;j<ns;j++){  
638 - if(cs[j].value == temas[i]){  
639 - cs[j].checked = true;  
640 - }  
641 - }  
642 - }  
643 - i3GEOF.metaestat.comum.aguarde("hidden");  
644 - };  
645 - i3GEO.php.listaCamadasMetaestat(temp);  
646 - },  
647 - /**  
648 - * Ativa a ferramenta que permite modificar o degrade de cores utilizado  
649 - */  
650 - alteraCores: function(){  
651 - //listaColourRampAnaliseMetaestat e o id do elemento input que recebera a lista de cores  
652 - i3GEO.util.abreColourRamp("","listaColourRampAnaliseMetaestat",10);  
653 - },  
654 - /**  
655 - * Aplica o novo degrade de cores  
656 - * Disparado no evento onchange do input que guarda o numero de cores  
657 - */  
658 - aplicaColourRamp: function(){  
659 - var i = $i("listaColourRampAnaliseMetaestat");  
660 - if(i.value != ""){  
661 - var p,temp,cores = i.value;  
662 - temp = function(){  
663 - i3GEO.janela.fechaAguarde("aguardeAnalise");  
664 - i3GEO.atualiza();  
665 - i3GEO.Interface.atualizaTema("",i3GEO.temaAtivo);  
666 - i3GEO.arvoreDeCamadas.atualizaLegenda(i3GEO.temaAtivo);  
667 - };  
668 - p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid +  
669 - "&funcao=alteraclasse&opcao=aplicacoresrgb&ext=" +  
670 - i3GEO.parametros.mapexten +  
671 - "&tema="+i3GEO.temaAtivo +  
672 - "&cores=" + cores;  
673 - i3GEO.janela.AGUARDEMODAL = true;  
674 - if($i("aguardeAnalise_c") && $i("aguardeAnalise_c").style.visibility == "visible"){  
675 - return;  
676 - };  
677 -  
678 - i3GEO.janela.abreAguarde("aguardeAnalise","Aplicando...");  
679 - i3GEO.janela.AGUARDEMODAL = false;  
680 - i3GEO.util.ajaxGet(p,temp);  
681 - }  
682 } 255 }
683 }, 256 },
684 /** 257 /**
@@ -753,8 +326,6 @@ i3GEOF.metaestat = { @@ -753,8 +326,6 @@ i3GEOF.metaestat = {
753 } 326 }
754 janela.show(); 327 janela.show();
755 i3GEOF.metaestat.classes.botaoAplicar(); 328 i3GEOF.metaestat.classes.botaoAplicar();
756 - //imagemxy = i3GEO.util.pegaPosicaoObjeto($i(i3GEO.Interface.IDCORPO));  
757 - //janela.moveTo(imagemxy[0]+i3GEOF.metaestat.LEFT+i3GEOF.metaestat.LARGURA+20,i3GEOF.metaestat.TOP);  
758 }, 329 },
759 /** 330 /**
760 * Ativa o botao que aplica e guarda os parametros escolhidos 331 * Ativa o botao que aplica e guarda os parametros escolhidos
ferramentas/metaestat/template_analise_mst.html
@@ -58,23 +58,26 @@ @@ -58,23 +58,26 @@
58 {{{t49}}} 58 {{{t49}}}
59 </a> 59 </a>
60 --> 60 -->
  61 + <!--
61 <a onclick="i3GEOF.metaestat.analise.estatistica()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 62 <a onclick="i3GEOF.metaestat.analise.estatistica()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
62 Estat&iacute;stica b&aacute;sica 63 Estat&iacute;stica b&aacute;sica
63 </a> 64 </a>
  65 + -->
  66 + <!--
64 <a onclick="i3GEOF.metaestat.analise.alteraRep()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 67 <a onclick="i3GEOF.metaestat.analise.alteraRep()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
65 Tipo de representa&ccedil;&atilde;o 68 Tipo de representa&ccedil;&atilde;o
66 </a> 69 </a>
67 <a onclick="i3GEOF.metaestat.analise.calor()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 70 <a onclick="i3GEOF.metaestat.analise.calor()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
68 Mapa de calor 71 Mapa de calor
69 </a> 72 </a>
70 - <!--  
71 <a onclick="i3GEO.mapa.dialogo.congelaMapa()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 73 <a onclick="i3GEO.mapa.dialogo.congelaMapa()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
72 Congela o mapa 74 Congela o mapa
73 </a> 75 </a>
74 - --> 76 +
75 <a onclick="i3GEOF.metaestat.analise.toponimia()" title="Mostra os valores como textos no mapa" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 77 <a onclick="i3GEOF.metaestat.analise.toponimia()" title="Mostra os valores como textos no mapa" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
76 Valores 78 Valores
77 </a> 79 </a>
  80 + -->
78 <a onclick="i3GEOF.metaestat.analise.juntaMedidasVariaveis.inicia()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' > 81 <a onclick="i3GEOF.metaestat.analise.juntaMedidasVariaveis.inicia()" title="" class='btn btn-primary btn-lg btn-block btn-raised' href='javascript:void(0)' >
79 Jun&ccedil;&atilde;o de dados 82 Jun&ccedil;&atilde;o de dados
80 </a> 83 </a>
ferramentas/metaestat/template_mst.html
@@ -10,7 +10,7 @@ @@ -10,7 +10,7 @@
10 <span class="form-group condensed botoes"> 10 <span class="form-group condensed botoes">
11 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.comum.adicionaCamada()" class='btn btn-primary btn-sm btn-raised'>{{{10}}}</a> 11 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.comum.adicionaCamada()" class='btn btn-primary btn-sm btn-raised'>{{{10}}}</a>
12 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.editor.inicia()" class='btn btn-primary btn-sm btn-raised'>{{{edicao}}}</a> 12 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.editor.inicia()" class='btn btn-primary btn-sm btn-raised'>{{{edicao}}}</a>
13 - <a href='javascript:void(0)' onclick="i3GEOF.metaestat.analise.inicia()" class='btn btn-primary btn-sm btn-raised'>{{{analise}}}</a> 13 + <!--<a href='javascript:void(0)' onclick="i3GEOF.metaestat.analise.inicia()" class='btn btn-primary btn-sm btn-raised'>{{{analise}}}</a>-->
14 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.principal.atualiza()" class='btn btn-primary btn-fab btn-fab-mini'><span class="material-icons md-18">refresh</span></a> 14 <a href='javascript:void(0)' onclick="i3GEOF.metaestat.principal.atualiza()" class='btn btn-primary btn-fab btn-fab-mini'><span class="material-icons md-18">refresh</span></a>
15 </span> 15 </span>
16 16
@@ -435,6 +435,21 @@ i3GEO.analise = @@ -435,6 +435,21 @@ i3GEO.analise =
435 "area", 435 "area",
436 "dependencias.php", 436 "dependencias.php",
437 "i3GEOF.area.iniciaJanelaFlutuante()"); 437 "i3GEOF.area.iniciaJanelaFlutuante()");
  438 + },
  439 + juntamedidasvariavel : function(tema) {
  440 + if(!tema){
  441 + tema = i3GEO.temaAtivo;
  442 + }
  443 + var temp = function(){
  444 + i3GEOF.juntamedidasvariavel.iniciaJanelaFlutuante(tema);
  445 + };
  446 + i3GEO.util.dialogoFerramenta(
  447 + "i3GEO.analise.dialogo.juntamedidasvariavel()",
  448 + "juntamedidasvariavel",
  449 + "juntamedidasvariavel",
  450 + "dependencias.php",
  451 + temp
  452 + );
438 } 453 }
439 } 454 }
440 }; 455 };
441 \ No newline at end of file 456 \ No newline at end of file