From 53f60421869294d86afe4a8432597beba80da1b4 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Tue, 15 Jan 2013 19:41:47 +0000 Subject: [PATCH] Opção de upload de imagem para o publicador de mapas do sistema METAESTAT --- admin/admin.db | Bin 172032 -> 0 bytes admin/html/estat_mapa.html | 7 ++++--- admin/js/estat_mapa.js | 42 ++++++++++++++++++++++++++++++++---------- admin/php/classe_metaestat.php | 44 +++++++++++++++++++++++--------------------- admin/php/estat_mapa_upload.php | 58 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ admin/php/metaestat.php | 5 ++++- admin/php/uploadgvp.php | 9 ++++++--- 7 files changed, 127 insertions(+), 38 deletions(-) create mode 100755 admin/php/estat_mapa_upload.php diff --git a/admin/admin.db b/admin/admin.db index 66503e2..90c48b8 100644 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin/html/estat_mapa.html b/admin/html/estat_mapa.html index 4503378..a2c93f3 100755 --- a/admin/html/estat_mapa.html +++ b/admin/html/estat_mapa.html @@ -49,13 +49,14 @@ body {
Ajuda

Nesse formulário são definidos os parâmetros para a publicação de mapas que irão conter cartogramas estatísticos. - Os mapas são baseados em templates que definem como será a interface do mapa. Observação: a pasta onde ficam + Os mapas são baseados em templates que definem como será a interface do mapa. Utilizer a opção de upload + para enviar as imagens que serão utilizadas no cabeçalho do mapa. Observação: a pasta onde ficam os templates é definida como uma variável no arquivo i3geo/ms_configura.php

- + +

Mapas cadastrados:

diff --git a/admin/js/estat_mapa.js b/admin/js/estat_mapa.js index 369dde7..064c5f2 100755 --- a/admin/js/estat_mapa.js +++ b/admin/js/estat_mapa.js @@ -7,6 +7,10 @@ Inicializa o editor de mapas function initMenu() { ativaBotaoAdiciona("../php/metaestat.php?funcao=alteraMapa","adiciona"); + new YAHOO.widget.Button("upload",{ onclick: { fn: function(){ + core_montaEditor(); + $i("editor_bd").innerHTML = formUploadImagem(); + } } }); core_carregando("ativa"); core_ativaPainelAjuda("ajuda","botaoAjuda"); core_pegaDados("buscando mapas...","../php/metaestat.php?funcao=listaMapas","montaArvore"); @@ -36,6 +40,16 @@ function ativaBotaoAdiciona(sUrl,idBotao) }; new YAHOO.widget.Button(idBotao,{ onclick: { fn: adiciona } }); } +function formUploadImagem(){ + var ins = '' + + '
' + + '

Imagem (jpg ou png) se o arquivo já existir, será substituído:

' + + '

' + + '' + + '

' + + ''; + return ins; +} /* Function: montaArvore @@ -223,7 +237,7 @@ function editar(tipo,id) { var dados = YAHOO.lang.JSON.parse(o.responseText); core_montaEditor("gravaDados('tema','"+id+"')"); - $i("editor_bd").innerHTML = montaDivTema(dados); + montaDivTema(dados); core_carregando("desativa"); } core_carregando("desativa"); @@ -244,16 +258,24 @@ function editar(tipo,id) } function montaDivTema(i) { - var param = - { - "linhas":[ - {titulo:"Título:",id:"Etitulo",size:"50",value:i.titulo,tipo:"text",div:""}, - {titulo:"ID da medida de uma variável:",id:"Eid_medida_variavel",size:"50",value:i.id_medida_variavel,tipo:"text",div:""} - ] - }; - var ins = ""; + var sUrl = "../php/metaestat.php?funcao=relatorioCompleto&dadosGerenciais=nao&detalhes=nao", + ins = "", + callback = { + success:function(o){ + ins += "
"+YAHOO.lang.JSON.parse(o.responseText)+"
"; + $i("editor_bd").innerHTML = ins; + }, + failure: function(){return ins;}, + argument: { foo:"foo", bar:"bar" } + }, + param = { + "linhas":[ + {titulo:"Título:",id:"Etitulo",size:"50",value:i.titulo,tipo:"text",div:""}, + {titulo:"ID da medida de uma variável (veja em ID no relatório abaixo):",id:"Eid_medida_variavel",size:"50",value:i.id_medida_variavel,tipo:"text",div:""} + ] + }; ins += core_geraLinhas(param); - return(ins); + core_makeRequest(sUrl,callback); } function montaDivGrupo(i) { diff --git a/admin/php/classe_metaestat.php b/admin/php/classe_metaestat.php index 2fb8974..ca9da7a 100755 --- a/admin/php/classe_metaestat.php +++ b/admin/php/classe_metaestat.php @@ -1645,35 +1645,37 @@ class Metaestat{ return $dados; } //$dados vem de relatorioCompleto - function formataRelatorioHtml($dados){ + function formataRelatorioHtml($dados,$detalhes="sim"){ $html[] = "
"; $var_cor = "var_cor1"; foreach($dados as $variavel){ $html[] = "
"; - $html[] = "

".$variavel["titulo"]."

"; - $html[] = "

".$variavel["descricao"]."

"; + $html[] = "

".$variavel["titulo"]; + $html[] = " (".$variavel["descricao"].")

"; $filhos = $variavel["filhos"]; foreach($filhos as $f){ - $html[] = "

".$f["titulo"]."

"; + $html[] = "

ID: ".$f["id"]." - ".$f["titulo"]."

"; $html[] = "
"; $html[] = "

".$f["descricao"]."

"; - $html[] = "

Fontes:

"; - foreach($f["fontes"] as $fonte){ - $html[] = "

".$fonte["titulo"]."

"; - } - $html[] = "

Links:

"; - foreach($f["links"] as $link){ - $html[] = "

".$link["nome"]."

"; - } - if($f["dadosgerenciais"] != ""){ - $html[] = ""; - $html[] = "esquemadb = ".$f["dadosgerenciais"][esquemadb].", "; - $html[] = "tabela = ".$f["dadosgerenciais"][tabela].", "; - $html[] = "colunavalor = ".$f["dadosgerenciais"][colunavalor].", "; - $html[] = "colunaidgeo = ".$f["dadosgerenciais"][colunaidgeo].", "; - $html[] = "filtro = ".$f["dadosgerenciais"][filtro].", "; - $html[] = "colunaidunico = ".$f["dadosgerenciais"][colunaidunico]; - $html[] = ""; + if($detalhes == "sim"){ + $html[] = "

Fontes:

"; + foreach($f["fontes"] as $fonte){ + $html[] = "

".$fonte["titulo"]."

"; + } + $html[] = "

Links:

"; + foreach($f["links"] as $link){ + $html[] = "

".$link["nome"]."

"; + } + if($f["dadosgerenciais"] != ""){ + $html[] = ""; + $html[] = "esquemadb = ".$f["dadosgerenciais"][esquemadb].", "; + $html[] = "tabela = ".$f["dadosgerenciais"][tabela].", "; + $html[] = "colunavalor = ".$f["dadosgerenciais"][colunavalor].", "; + $html[] = "colunaidgeo = ".$f["dadosgerenciais"][colunaidgeo].", "; + $html[] = "filtro = ".$f["dadosgerenciais"][filtro].", "; + $html[] = "colunaidunico = ".$f["dadosgerenciais"][colunaidunico]; + $html[] = ""; + } } $html[] = "
"; } diff --git a/admin/php/estat_mapa_upload.php b/admin/php/estat_mapa_upload.php new file mode 100755 index 0000000..71525de --- /dev/null +++ b/admin/php/estat_mapa_upload.php @@ -0,0 +1,58 @@ + + + + + + + +

+Carregando o arquivo...

"; + $arq = $metaestatTemplates."/logos/".$_FILES['uploadimagem']['name']; + //verifica nomes + verificaNome($_FILES['uploadimagem']['name']); + //chmod($metaestatTemplates."/logos",777); + if(file_exists($arq)){ + unlink($arq); + } + //sobe arquivo + $Arquivo = $_FILES['uploadimagem']['tmp_name']; + //echo $Arquivo; + $status = move_uploaded_file($Arquivo,$arq); + if($status != 1) + {echo "

Ocorreu um erro no envio do arquivo. Verifique as permissoes de escrita";exit;} + if($status == 1){ + echo "

Arquivo enviado.

"; + chmod($arq,0777); + } + else{ + echo "

Erro ao enviar o arquivo.

"; + exit; + } +} +else{ + echo "

Erro ao enviar o arquivo. Talvez o tamanho do arquivo seja maior do que o permitido.

"; +} +function verificaNome($nome) +{ + $nome = strtolower($nome); + $lista = explode(".",$nome); + $extensao = $lista[count($lista) - 1]; + if($extensao != "png" && $extensao != "jpg") + { + echo "Nome de arquivo inválido."; + exit; + } +} +?> + + \ No newline at end of file diff --git a/admin/php/metaestat.php b/admin/php/metaestat.php index d6316cd..6eb4968 100644 --- a/admin/php/metaestat.php +++ b/admin/php/metaestat.php @@ -1346,7 +1346,10 @@ switch (strtoupper($funcao)) $codigo_variavel = ""; } $dados = $m->relatorioCompleto($codigo_variavel,$dadosGerenciais); - $dados = $m->formataRelatorioHtml($dados); + if(empty($detalhes)){ + $detalhes = "sim"; + } + $dados = $m->formataRelatorioHtml($dados,$detalhes); retornaJSON($dados); exit; break; diff --git a/admin/php/uploadgvp.php b/admin/php/uploadgvp.php index 2db413f..a8b4938 100755 --- a/admin/php/uploadgvp.php +++ b/admin/php/uploadgvp.php @@ -1,7 +1,9 @@ @@ -12,6 +14,7 @@ error_reporting(E_ALL);

Carregando o arquivo...

"; -- libgit2 0.21.2