From 0945aee7c30fe2fc3a999049a9dfa6bb80695a7e Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 1 Oct 2012 12:53:19 +0000 Subject: [PATCH] --- admin/admin.db | Bin 138240 -> 0 bytes admin/html/estat_uploaddados.html | 114 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin/js/core.js | 12 +++++++----- admin/js/estat_uploaddados.js | 100 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin/php/classe_metaestat.php | 12 ++++++++---- admin/php/menutemas.php | 4 ++-- admin/php/metaestat.php | 7 +++++-- admin/php/metaestat_uploaddados_submit.php | 32 ++++++++++++++++++++++++++++++++ classesjs/classe_php.js | 7 +++++-- ferramentas/metaestat/index.js | 3 ++- interface/carto_ol.htm | 1 + 11 files changed, 276 insertions(+), 16 deletions(-) create mode 100644 admin/html/estat_uploaddados.html create mode 100644 admin/js/estat_uploaddados.js create mode 100644 admin/php/metaestat_uploaddados_submit.php diff --git a/admin/admin.db b/admin/admin.db index 1afba19..00f0ee2 100644 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin/html/estat_uploaddados.html b/admin/html/estat_uploaddados.html new file mode 100644 index 0000000..34d0f8c --- /dev/null +++ b/admin/html/estat_uploaddados.html @@ -0,0 +1,114 @@ + + + + +Upload de dados + + + + + + + + + +
 
+
+
+

+ Metadados estatísticos - upload de dados +

+ + +
+
+ + \ No newline at end of file diff --git a/admin/js/core.js b/admin/js/core.js index c5a726a..5e4a40e 100644 --- a/admin/js/core.js +++ b/admin/js/core.js @@ -67,7 +67,7 @@ Armazena o objeto com a lista de perfis $perfis = ""; function cabecalhoMetaestat(id,excluir){ var i,n,temp, - ins = "
Opções principais", + ins = "
Opções principais", u = i3GEO.util.pegaCookie("i3geousuarionome"), botoes = [ {id:"principal",titulo:"Início",link:"../index.html"}, @@ -78,6 +78,7 @@ function cabecalhoMetaestat(id,excluir){ {id:"tipo_regiao",titulo:"Regiões",link:"estat_tipo_regiao.html"}, {id:"fonteinfo",titulo:"Fonte",link:"estat_fonteinfo.html"}, {id:"editor",titulo:"Editor",link:"estat_editor.html"}, + {id:"uploaddados",titulo:"Upload",link:"estat_uploaddados.html"}, {id:"login",titulo:"Login",js:"i3GEO.login.dialogo.abreLogin()"} ]; n = botoes.length; @@ -332,16 +333,17 @@ postpar - parametros quando o tipo for post */ function core_makeRequest(sUrl,callback,tipo,postpar) { - /* sUrl = escape(sUrl); - var re = new RegExp("%3F", "g"); + re = new RegExp("%3F", "g"); sUrl = sUrl.replace(re,'?'); re = new RegExp("%3D", "g"); sUrl = sUrl.replace(re,'='); re = new RegExp("%26", "g"); sUrl = sUrl.replace(re,'&'); - */ - //alert(sUrl) + + re = new RegExp("%3A", "g"); + sUrl = sUrl.replace(re,':'); + if(arguments.length == 2) {tipo = "GET";} if(postpar){ diff --git a/admin/js/estat_uploaddados.js b/admin/js/estat_uploaddados.js new file mode 100644 index 0000000..ad23608 --- /dev/null +++ b/admin/js/estat_uploaddados.js @@ -0,0 +1,100 @@ +if(typeof(i3GEOadmin) === 'undefined'){ + var i3GEOadmin = {}; +} +i3GEOadmin.uploaddados = { + COLUNASARQUIVO: "", + NOMEARQUIVOSERV: "", + /* + * Inicializa o sistema + */ + inicia: function(){ + YAHOO.namespace("editor"); + YAHOO.namespace("admin.container"); + i3GEOadmin.uploaddados.variaveis.lista(); + i3GEOadmin.uploaddados.conexao.lista(); + }, + upload:{ + submit: function(){ + core_carregando("enviando..."); + }, + comboColunas: function(id){ + var i=0, + c = i3GEOadmin.uploaddados.COLUNASARQUIVO, + n = c.length, + ins = ""; + return ins; + }, + fimsubmit: function(){ + //TODO escolher a tabela + core_carregando("desativa"); + var ins = ""; + ins += "

Abaixo vocˆ deve definir quais colunas do arquivo que foi enviado corresponde às colunas do banco de dados de destino

" + + "

Contém os códigos que identificam a região, como o código do município ou bairro

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_codigoregiao") + + "

Contém os valores da medida

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_valor") + + "

Contém o ano (opcional)

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_ano") + + "

Contém o mês (opcional)

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_mes") + + "

Contém o dia (opcional)

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_dia") + + "

Contém a hora (opcional)

" + + i3GEOadmin.uploaddados.upload.comboColunas("i3geoupload_hora") + + "

Tipo de valores

"; + } + }, + conexao:{ + onde: "i3GEOadminUploaddadosConexao", + lista: function(){ + var callback = { + success:function(o){ + try { + var dados = YAHOO.lang.JSON.parse(o.responseText), + temp = "

Escolha a conexão com o banco:

"; + temp += ""; + $i(i3GEOadmin.uploaddados.conexao.onde).innerHTML = temp; + core_carregando("desativa"); + } + catch(e){core_handleFailure(e,o.responseText);} + }, + failure:core_handleFailure, + argument: { foo:"foo", bar:"bar" } + }; + core_carregando("buscando dados..."); + core_makeRequest("../php/metaestat.php?funcao=listaConexao",callback); + } + }, + variaveis:{ + onde: "i3GEOadminUploaddadosVariaveis", + lista: function(){ + i3GEOF.metaestat.comum.aguarde($i(i3GEOadmin.uploaddados.variaveis.onde)); + i3GEO.php.listaVariavel(i3GEOadmin.uploaddados.variaveis.combo,"i3geo_metaestat"); + }, + combo: function(dados){ + $i(i3GEOadmin.uploaddados.variaveis.onde).innerHTML = "

Escolha a variável que receberá os dados

" + + i3GEOF.metaestat.principal.comboVariaveis(dados,"i3GEOadminEditorVariaveis_combo","i3GEOadmin.uploaddados.medidas.lista()"); + } + }, + medidas:{ + onde: "i3GEOadminUploaddadosMedidas", + lista: function(){ + if($i("i3GEOadminEditorVariaveis_combo").value == ""){ + $i(i3GEOadmin.uploaddados.medidas.onde).innerHTML = ""; + return ; + } + i3GEOF.metaestat.comum.aguarde($i(i3GEOadmin.uploaddados.medidas.onde)); + i3GEO.php.listaMedidaVariavel($i("i3GEOadminEditorVariaveis_combo").value,i3GEOadmin.uploaddados.medidas.combo); + }, + combo: function(dados){ + $i(i3GEOadmin.uploaddados.medidas.onde).innerHTML = "

Escolha a medida da variável

" + + i3GEOF.metaestat.principal.comboMedidasVariavel(dados,"i3GEOadminEditorMedidas_combo",""); + } + } +}; \ No newline at end of file diff --git a/admin/php/classe_metaestat.php b/admin/php/classe_metaestat.php index 600c4b8..47c1f99 100755 --- a/admin/php/classe_metaestat.php +++ b/admin/php/classe_metaestat.php @@ -909,12 +909,16 @@ class Metaestat{ $codigo_variavel - opcional */ - function listaVariavel($codigo_variavel=""){ - $sql = "select * from ".$this->esquemaadmin."i3geoestat_variavel "; + function listaVariavel($codigo_variavel="",$filtro_esquema=""){ + $sql = "select a.* from ".$this->esquemaadmin."i3geoestat_variavel as a "; if($codigo_variavel != ""){ - $sql .= "WHERE codigo_variavel = $codigo_variavel "; + $sql .= "WHERE a.codigo_variavel = $codigo_variavel "; } - $sql .= "ORDER BY nome"; + if($filtro_esquema != ""){ + $sql .= ", ".$this->esquemaadmin."i3geoestat_medida_variavel as b WHERE a.codigo_variavel = b.codigo_variavel and b.esquemadb = '$filtro_esquema' "; + } + $sql .= "ORDER BY a.nome"; + //echo $sql;exit; return $this->execSQL($sql,$codigo_variavel); } /* diff --git a/admin/php/menutemas.php b/admin/php/menutemas.php index a873ef0..d20c69f 100644 --- a/admin/php/menutemas.php +++ b/admin/php/menutemas.php @@ -25,7 +25,7 @@ Este programa é distribuído na expectativa de que seja útil porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do GNU para mais detalhes. -Você deve ter recebido uma c�pia da Licença Pública Geral do +Você deve ter recebido uma da Licença Pública Geral do GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. @@ -38,7 +38,7 @@ Parametros: O parâmetro principal é "funcao", que define qual operação será executada, por exemplo, menutemas.php?funcao=pegaMenus -Cada operação possuí seus pr�prios parâmetros, que devem ser enviados também na requisição da operação. +Cada operação possuí seus proprios parâmetros, que devem ser enviados também na requisição da operação. */ include_once("admin.php"); diff --git a/admin/php/metaestat.php b/admin/php/metaestat.php index b1901fa..ccc6c65 100644 --- a/admin/php/metaestat.php +++ b/admin/php/metaestat.php @@ -87,7 +87,10 @@ switch (strtoupper($funcao)) */ case "LISTAVARIAVEL": $m = new Metaestat(); - retornaJSON($m->listaVariavel($codigo_variavel)); + if(empty($filtro_esquema)){ + $filtro_esquema = ""; + } + retornaJSON($m->listaVariavel($codigo_variavel,$filtro_esquema)); exit; break; /* @@ -254,7 +257,7 @@ switch (strtoupper($funcao)) $m = new Metaestat(); $default = false; //verifica se a criacao da medida esta sendo feita na tabela default - if($codigo_tipo_periodo < 5 && $codigo_estat_conexao == 0 && $esquemadb == "public" && $colunaidgeo == "codigoregiao"){ + if($codigo_tipo_periodo < 5 && $esquemadb == "i3geo_metaestat" && $colunaidgeo == "codigoregiao"){ $default = true; } if(empty($id_medida_variavel)){ diff --git a/admin/php/metaestat_uploaddados_submit.php b/admin/php/metaestat_uploaddados_submit.php new file mode 100644 index 0000000..c1f6c34 --- /dev/null +++ b/admin/php/metaestat_uploaddados_submit.php @@ -0,0 +1,32 @@ + + \ No newline at end of file diff --git a/classesjs/classe_php.js b/classesjs/classe_php.js index c4c7d4e..9de4e0d 100644 --- a/classesjs/classe_php.js +++ b/classesjs/classe_php.js @@ -1425,8 +1425,11 @@ i3GEO.php = { Obtém a lista de variáveis do sistema de metadados estatísticos */ - listaVariavel: function(funcao){ - var p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaVariavel&g_sid="+i3GEO.configura.sid; + listaVariavel: function(funcao,filtro_esquema){ + if(!filtro_esquema){ + filtro_esquema = ""; + } + var p = i3GEO.configura.locaplic+"/admin/php/metaestat.php?funcao=listaVariavel&g_sid="+i3GEO.configura.sid+"&filtro_esquema="+filtro_esquema; i3GEO.util.ajaxGet(p,funcao); }, /* diff --git a/ferramentas/metaestat/index.js b/ferramentas/metaestat/index.js index d2455d3..1e49d97 100644 --- a/ferramentas/metaestat/index.js +++ b/ferramentas/metaestat/index.js @@ -40,6 +40,7 @@ i3GEOF.metaestat = { * Tipo de interface utilizada para construcao dos parametros */ INTERFACE: "flutuante", + CONEXAODEFAULT: 0, TOP: 50, LEFT: 100, LARGURA: 270, @@ -515,7 +516,7 @@ i3GEOF.metaestat = { $i("Ecodigo_variavel").value = $i("i3geoCartoComboVariavelEditor").value; //define os valores que sao padrao //a conexao e com o default - $i("Ecodigo_estat_conexao").value = 0; + $i("Ecodigo_estat_conexao").value = i3GEOF.metaestat.CONEXAODEFAULT; //o esquema e o public $i("Eesquemadb").value = "public"; //a tabela onde ficarao os dados diff --git a/interface/carto_ol.htm b/interface/carto_ol.htm index d8b3068..e50cf46 100644 --- a/interface/carto_ol.htm +++ b/interface/carto_ol.htm @@ -172,6 +172,7 @@ i3GEO.inicia(); //parametros especificos dos cartogramas //ver i3geo/ferramentas/metaestat i3GEOF.metaestat.INTERFACE = "flutuante"; +i3GEOF.metaestat.CONEXAODEFAULT = 0; i3GEOF.metaestat.TOP = 50; i3GEOF.metaestat.LEFT = 100; i3GEOF.metaestat.LARGURA = 270; -- libgit2 0.21.2