diff --git a/admin/admin.db b/admin/admin.db index ba862c4..8859e93 100755 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/admin1/dicionario/core.js b/admin1/dicionario/core.js index dfe5151..94cf45b 100755 --- a/admin1/dicionario/core.js +++ b/admin1/dicionario/core.js @@ -11,7 +11,7 @@ i3GEOadmin.core.dicionario = { en : "", es : "" } ], - 'tabela' : [ { + 'tabelaTxt' : [ { pt : "Tabela", en : "", es : "" diff --git a/admin1/dicionario/estat_tipo_regiao.js b/admin1/dicionario/estat_tipo_regiao.js index 48a09b2..f7ae93f 100755 --- a/admin1/dicionario/estat_tipo_regiao.js +++ b/admin1/dicionario/estat_tipo_regiao.js @@ -1,44 +1,113 @@ -//+$trad(1,i3GEOadmin.editormapfile.dicionario)+ -i3GEOadmin.estat_tipo_regiao = {}; -i3GEOadmin.estat_tipo_regiao.dicionario = { - 'estatTipoRegiao' : [ { - pt : "Metadados estatísticos - cadastro de tabelas de regiões geográficas", +i3GEOadmin.regioes.dicionario = { + 'txtTitulo' : [ { + pt : "Cadastro de regiões geográficas", en : "", es : "" } ], - 'ajuda' : [ { - pt : "Ajuda", + 'txtHierarquiaTitulo' : [ { + pt : "Hierarquia entre regiões", en : "", es : "" } ], 'txtAjuda' : [ { - pt : "

Este formulário permite editar a lista de conexões que são mostradas nos formulários do sistema de metadados estatísticos", + pt : "As regiões são utilizadas para espacializar os dados estatísticos. Ao definir uma medida de variável, deve-se escolher qual a região que será utilizada para a representação dos dados, ou seja, qual a unidade geográfica correspondente aos dados. Regiões podem ter também uma hierarquia, que permite agregar dados, por exemplo, uma região denominada 'municípios' pode ser agregada por outra região denominada 'estados'. Na prática, uma região é uma tabela no banco de dados que contém uma coluna com a geometria correspondente.", en : "", es : "" } ], - 'cadastraRegiao' : [ { - pt : "Cadastrar uma nova região", + 'txtHierarquiaAjuda' : [ { + pt : "Regiões podem ser agregadas em função de outra região de hierarquia superior. Municípios, por exemplo, podem ser agregados em unidades da federação.", en : "", es : "" } ], - 'txtCadastro' : [ { - pt : "Para criar uma nova tabela contendo os limites geográficos (regiões) utilize a opção "Editor" do menu superior e faça o upload de um arquivo no formato "shape file". Os limites são necessários para o georreferenciamento dos dados. Após o upload, registre no cadastro abaixo a nova tabela

", + 'txtDesc' : [ { + pt : "Unidades geográficas utilizadas para espacializar os dados estatísticos. Regiões podem compor hierarquias que permitem agregações.", en : "", es : "" } ], - '' : [ { - pt : "", + 'txtHierarquiaDesc' : [ { + pt : "Cadastro das relações de hierarquia entre tipos de região. A região em foco pode ter diferentes regiões de nível superior (pai)", en : "", es : "" } ], - '' : [ { - pt : "", + 'nome_tipo_regiaoTxt' : [ { + pt : "Nome do tipo de região", en : "", es : "" } ], - '' : [ { - pt : "", + 'descricao_tipo_regiaoTxt' : [ { + pt : "Descrição", + en : "", + es : "" + } ], + 'codigo_estat_conexaoTxt' : [ { + pt : "Código da conexão com o banco de dados", + en : "", + es : "" + } ], + 'esquemadbTxt' : [ { + pt : "Esquema do banco de dados onde está a tabela com as regiões", + en : "", + es : "" + } ], + 'tabelaTxt' : [ { + pt : "Nome da tabela com as regiões", + en : "", + es : "" + } ], + 'colunageoTxt' : [ { + pt : "Coluna que contém as geometrias", + en : "", + es : "" + } ], + 'dataTxt' : [ { + pt : "Data dos dados", + en : "", + es : "" + } ], + 'identificadorTxt' : [ { + pt : "Coluna que contém os identificadores únicos de cada região", + en : "", + es : "" + } ], + 'colunanomeregiaoTxt' : [ { + pt : "Coluna com os nomes de cada região", + en : "", + es : "" + } ], + 'sridTxt' : [ { + pt : "Código SRID da projeção cartográfica referente à coluna com a geometria", + en : "", + es : "" + } ], + 'colunacentroideTxt' : [ { + pt : "Coluna do tipo geometria que contém os centróides de cada região (pode ser a mesma coluna anterior)", + en : "", + es : "" + } ], + 'colunasvisiveisTxt' : [ { + pt : "Colunas visíveis, que serão mostradas aos usuários finais", + en : "", + es : "" + } ], + 'apelidosTxt' : [ { + pt : "Apelidos (alias) das colunas visíveis (separe com vírglas)", + en : "", + es : "" + } ], + 'hierarquia' : [ { + pt : "hierarquia", + en : "", + es : "" + } ], + 'nome_tipo_regiaoPaiTxt' : [ { + pt : "Região que é superior a atual (região pai)", + en : "", + es : "" + } ], + 'coluna_ligacaoTxt' : [ { + pt : "Coluna da região atual que contém os códigos da região pai (coluna de ligação)", en : "", es : "" } ] + }; diff --git a/admin1/metaestat/fontes/funcoes.php b/admin1/metaestat/fontes/funcoes.php index 432348f..4bfdbd6 100755 --- a/admin1/metaestat/fontes/funcoes.php +++ b/admin1/metaestat/fontes/funcoes.php @@ -33,6 +33,12 @@ function adicionar($titulo, $link, $dbhw) { } function alterar($id_fonteinfo, $titulo, $link, $dbhw) { $esquemaadmin = $_SESSION ["esquemaadmin"]; + + $convUTF = $_SESSION["convUTF"]; + if ($convUTF != true){ + $titulo = utf8_decode($titulo); + } + $dataCol = array ( "titulo" => $titulo, "link" => $link diff --git a/admin1/metaestat/periodos/funcoes.php b/admin1/metaestat/periodos/funcoes.php index 1cbaa43..5a3e2a0 100755 --- a/admin1/metaestat/periodos/funcoes.php +++ b/admin1/metaestat/periodos/funcoes.php @@ -32,6 +32,11 @@ function adicionar($nome, $descricao, $dbhw) { } function alterar($codigo_tipo_periodo, $nome, $descricao, $dbhw) { $esquemaadmin = $_SESSION ["esquemaadmin"]; + $convUTF = $_SESSION["convUTF"]; + if ($convUTF != true){ + $nome = utf8_decode($nome); + $descricao = utf8_decode($descricao); + } $dataCol = array ( "nome" => $nome, "descricao" => $descricao diff --git a/admin1/metaestat/periodos/templates/templateLista.php b/admin1/metaestat/periodos/templates/templateLista.php index 22a214f..214c847 100755 --- a/admin1/metaestat/periodos/templates/templateLista.php +++ b/admin1/metaestat/periodos/templates/templateLista.php @@ -9,7 +9,7 @@ delete_forever - {{{nome}}} +  {{{nome}}}
diff --git a/admin1/metaestat/regioes/exec.php b/admin1/metaestat/regioes/exec.php new file mode 100755 index 0000000..4844ce7 --- /dev/null +++ b/admin1/metaestat/regioes/exec.php @@ -0,0 +1,87 @@ + \ No newline at end of file diff --git a/admin1/metaestat/regioes/funcoes.php b/admin1/metaestat/regioes/funcoes.php new file mode 100755 index 0000000..9b3b7b0 --- /dev/null +++ b/admin1/metaestat/regioes/funcoes.php @@ -0,0 +1,123 @@ +'', + "descricao_tipo_regiao"=>'', + "codigo_estat_conexao"=>'', + "esquemadb"=>'', + "tabela"=>'', + "colunageo"=>'', + "data"=>'', + "identificador"=>'', + "colunanomeregiao"=>'', + "srid"=>'', + "colunacentroide"=>'', + "colunasvisiveis"=>'', + "apelidos"=>'' + ); + $codigo_tipo_regiao = \admin\php\funcoesAdmin\i3GeoAdminInsertUnico ( $dbhw, "i3geoestat_tipo_regiao", $dataCol, "nome_tipo_regiao", "codigo_tipo_regiao" ); + $retorna = \admin\metaestat\regioes\alterar ( $codigo_tipo_regiao, $nome, $descricao, $dbhw ); + + return $retorna; + } catch ( PDOException $e ) { + return false; + } +} +function alterar($codigo_tipo_regiao, $nome_tipo_regiao,$descricao_tipo_regiao,$codigo_estat_conexao,$esquemadb,$tabela,$colunageo,$data,$identificador,$colunanomeregiao,$srid,$colunacentroide,$colunasvisiveis,$apelidos,$dbhw) { + $esquemaadmin = $_SESSION ["esquemaadmin"]; + $convUTF = $_SESSION["convUTF"]; + if ($convUTF != true){ + $nome_tipo_regiao = utf8_decode($nome_tipo_regiao); + $descricao_tipo_regiao = utf8_decode($descricao_tipo_regiao); + $apelidos = utf8_decode($apelidos); + } + $dataCol = array ( + "nome_tipo_regiao"=>$nome_tipo_regiao, + "descricao_tipo_regiao"=>$descricao_tipo_regiao, + "codigo_estat_conexao"=>$codigo_estat_conexao, + "esquemadb"=>$esquemadb, + "tabela"=>$tabela, + "colunageo"=>$colunageo, + "data"=>$data, + "identificador"=>$identificador, + "colunanomeregiao"=>$colunanomeregiao, + "srid"=>$srid, + "colunacentroide"=>$colunacentroide, + "colunasvisiveis"=>$colunasvisiveis, + "apelidos"=>$apelidos + ); + $resultado = \admin\php\funcoesAdmin\i3GeoAdminUpdate ( $dbhw, "i3geoestat_tipo_regiao", $dataCol, "WHERE codigo_tipo_regiao = $codigo_tipo_regiao" ); + if ($resultado === false) { + return false; + } + return $codigo_tipo_regiao; +} +function excluir($codigo_tipo_regiao, $dbhw) { + $esquemaadmin = $_SESSION ["esquemaadmin"]; + + $r = \admin\php\funcoesAdmin\pegaDados("select * from ".$esquemaadmin."i3geoestat_medida_variavel where codigo_tipo_regiao=$codigo_tipo_regiao"); + if(count($r) > 0){ + header ( "HTTP/1.1 500 erro ao excluir. Periodo esta em uso por i3geoestat_medida_variavel" ); + exit (); + } + + $resultado = \admin\php\funcoesAdmin\i3GeoAdminExclui ( $esquemaadmin . "i3geoestat_tipo_regiao", "codigo_tipo_regiao", $codigo_tipo_regiao, $dbhw, false ); + if ($resultado === false) { + return false; + } + return $resultado; +} +function colunasRegiao($dbh,$codigo_tipo_regiao){ + $esquemaadmin = $_SESSION ["esquemaadmin"]; + $colunas = array(); + //parametros da regiao + $regiao = \admin\metaestat\regioes\listar($dbh, $codigo_tipo_regiao); + //parametros de conexao + $c = \admin\php\funcoesAdmin\pegaDados ( "SELECT * from " . $esquemaadmin . "i3geoestat_conexao WHERE codigo_estat_conexao = " . $regiao["codigo_estat_conexao"], $dbh, false ); + $c = $c[0]; + $dbhBD = new PDO('pgsql:dbname='.$c["bancodedados"].';user='.$c["usuario"].';password='.$c["senha"].';host='.$c["host"].';port='.$c["porta"]); + + $sql = "SELECT a.attnum,a.attname AS field,t.typname AS type,a.attlen AS length,a.atttypmod AS lengthvar,a.attnotnull AS notnull,p.nspname as esquema FROM pg_class c,pg_attribute a,pg_type t,pg_namespace p WHERE c.relname = '" . $regiao["tabela"] . "' and p.nspname = '" . $regiao["esquemadb"] . "' and a.attnum > 0 and a.attrelid = c.oid and a.atttypid = t.oid and c.relnamespace = p.oid ORDER BY a.attname"; + + try { + $q = $dbhBD->query($sql,PDO::FETCH_ASSOC); + $colunas = $q->fetchAll(); + } + catch (PDOException $e) { + $colunas = false; + } + $dbhBD = null; + return $colunas; +} +function nomesColunasRegiao($dbh,$codigo_tipo_regiao){ + $colunas = \admin\metaestat\regioes\colunasRegiao($dbh,$codigo_tipo_regiao); + $nomesColunas = \admin\metaestat\regioes\nomesColunas($colunas); + return $nomesColunas; +} +function nomesColunas($colunas){ + $nomes = array(); + foreach ($colunas AS $c){ + $nomes[] = array("nome" => $c["field"]); + } + return $nomes; +} +?> \ No newline at end of file diff --git a/admin1/metaestat/regioes/hierarquia/exec.php b/admin1/metaestat/regioes/hierarquia/exec.php new file mode 100755 index 0000000..e03ad51 --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/exec.php @@ -0,0 +1,102 @@ + $dados, + "regioes" => $regioes, + "colunas" => $colunas + ) ); + } + break; + case "EXCLUIR" : + $retorna = \admin\metaestat\regioes\hierarquia\excluir ( $id_agregaregiao, $dbhw ); + $dbhw = null; + $dbh = null; + if ($retorna === false) { + header ( "HTTP/1.1 500 erro ao consultar banco de dados" ); + } + break; + default : + if (! empty ( $funcao )) + header ( "HTTP/1.1 500 erro funcao nao existe" ); + break; +} +?> diff --git a/admin1/metaestat/regioes/hierarquia/funcoes.php b/admin1/metaestat/regioes/hierarquia/funcoes.php new file mode 100755 index 0000000..06f17a3 --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/funcoes.php @@ -0,0 +1,55 @@ + '', + "colunaligacao_regiaopai" => '', + "codigo_tipo_regiao_pai" => '' + ); + $id_agregaregiao = \admin\php\funcoesAdmin\i3GeoAdminInsertUnico ( $dbhw, "i3geoestat_agregaregiao", $dataCol, "colunaligacao_regiaopai", "id_agregaregiao" ); + $retorna = \admin\metaestat\regioes\hierarquia\alterar ( $id_agregaregiao, $codigo_tipo_regiao, $colunaligacao_regiaopai, $codigo_tipo_regiao_pai,$dbhw ); + return $retorna; + } catch ( PDOException $e ) { + return false; + } +} +function alterar($id_agregaregiao, $codigo_tipo_regiao, $colunaligacao_regiaopai, $codigo_tipo_regiao_pai,$dbhw) { + $esquemaadmin = $_SESSION ["esquemaadmin"]; + $dataCol = array ( + "codigo_tipo_regiao" => $codigo_tipo_regiao, + "colunaligacao_regiaopai" => $colunaligacao_regiaopai, + "codigo_tipo_regiao_pai" => $codigo_tipo_regiao_pai + ); + $resultado = \admin\php\funcoesAdmin\i3GeoAdminUpdate ( $dbhw, "i3geoestat_agregaregiao", $dataCol, "WHERE id_agregaregiao = $id_agregaregiao" ); + if ($resultado === false) { + return false; + } + return $id_agregaregiao; +} +function excluir($id_agregaregiao, $dbhw) { + $esquemaadmin = $_SESSION ["esquemaadmin"]; + $resultado = \admin\php\funcoesAdmin\i3GeoAdminExclui ( $esquemaadmin . "i3geoestat_agregaregiao", "id_agregaregiao", $id_agregaregiao, $dbhw, false ); + if ($resultado === false) { + return false; + } + return $resultado; +} +?> \ No newline at end of file diff --git a/admin1/metaestat/regioes/hierarquia/index.js b/admin1/metaestat/regioes/hierarquia/index.js new file mode 100755 index 0000000..559245e --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/index.js @@ -0,0 +1,283 @@ +/* +Licenca: + +GPL2 + +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet + +Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com + +Este programa é software livre; você pode redistribuí-lo +e/ou modificá-lo sob os termos da Licença Pública Geral +GNU conforme publicada pela Free Software Foundation; + +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 +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. + + */ +i3GEOadmin.hierarquia = { + //variavel global indicando o elemento que recebera a lista de hierarquia + ondeLista: "", + //conteudo html do formulario de adicao de operacao + formAdiciona: "", + //parametros obtidos do formulario de edicao antes de abrir o modal de confirmacao + parametrosSalvar: "", + codigo_tipo_regiao: "", + listaDeRegioes: "", + listaDeColunas: "", + init: function(onde){ + i3GEOadmin.hierarquia.ondeLista = onde; + i3GEOadmin.hierarquia.lista(); + }, + /* +Function: lista + +Obtém a lista de hierarquia + */ + lista: function(){ + i3GEOadmin.core.iconeAguarde(i3GEOadmin.hierarquia.ondeLista); + $.post( + "exec.php?funcao=lista", + "codigo_tipo_regiao=" + i3GEOadmin.hierarquia.codigo_tipo_regiao + ) + .done( + function(data, status){ + //objeto json com os dados viondos do banco + var json = jQuery.parseJSON(data); + i3GEOadmin.hierarquia.listaDeRegioes = json.regioes; + i3GEOadmin.hierarquia.listaDeColunas = json.colunas; + //template do form de cada operacao + var templateLista = $("#templateLista").html(); + //lista todas as hierarquia + var html = Mustache.to_html( + "{{#data}}" + templateLista + "{{/data}}", + $.extend( + {}, + i3GEOadmin.hierarquia.dicionario, + { + "data": json.dados, + "onExcluir": "i3GEOadmin.hierarquia.excluirDialogo",//funcao + "onEditar": "i3GEOadmin.hierarquia.editarDialogo" + } + ) + ); + i3GEOadmin.hierarquia.ondeLista.html(html); + //monta um template para o modal de inclusao + if(i3GEOadmin.hierarquia.formAdiciona == ""){ + html = Mustache.to_html( + $("#templateFormLista").html(), + $.extend( + {}, + i3GEOadmin.hierarquia.dicionario, + { + "id_agregaregiao": "modal", + "escondido": "hidden", + "excluir": i3GEOadmin.hierarquia.dicionario.cancelar, + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao + "onSalvar": "i3GEOadmin.hierarquia.adiciona", + "opcoesRegiao": function(){ + var l = i3GEOadmin.hierarquia.listaDeRegioes; + var html = Mustache.to_html( + "{{#data}}" + $("#templateOpcoesRegioes").html() + "{{/data}}", + {"data":l} + ); + return html; + }, + "opcoesColuna": function(){ + var l = i3GEOadmin.hierarquia.listaDeColunas; + var html = Mustache.to_html( + "{{#data}}" + $("#templateOpcoesColunas").html() + "{{/data}}", + {"data":l} + ); + return html; + } + } + ) + ); + i3GEOadmin.hierarquia.formAdiciona = html; + } + $.material.init(); + } + ) + .fail(function(data){ + i3GEOadmin.hierarquia.ondeLista.html(""); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + }); + }, + editarDialogo: function(id){ + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=listaunico", + "id_agregaregiao=" + id + ) + .done( + function(data, status){ + var json = jQuery.parseJSON(data); + //lista todas as hierarquia + var html = Mustache.to_html( + "{{#data}}" + $("#templateFormLista").html() + "{{/data}}", + $.extend( + {}, + i3GEOadmin.hierarquia.dicionario, + { + "data": json, + "onExcluir": "i3GEOadmin.hierarquia.excluirDialogo",//funcao + "onSalvar": "i3GEOadmin.hierarquia.salvarDialogo", + "opcoesRegiao": function(){ + var p = this.codigo_tipo_regiao_pai; + var id = ""; + //marca o selecionado + var l = i3GEOadmin.hierarquia.listaDeRegioes; + $(l).each( + function(i,el){ + if(el.codigo_tipo_regiao == p){ + l[i]["selected"] = "selected"; + id = i; + } + else{ + l[i]["selected"] = ""; + } + } + ); + var html = Mustache.to_html( + "{{#data}}" + $("#templateOpcoesRegioes").html() + "{{/data}}", + {"data":l} + ); + l[id]["selected"] = ""; + return html; + }, + "opcoesColuna": function(){ + var p = this.colunaligacao_regiaopai; + var id = ""; + //marca o selecionado + var l = i3GEOadmin.hierarquia.listaDeColunas; + $(l).each( + function(i,el){ + if(el.nome == p){ + l[i]["selected"] = "selected"; + id = i; + } + else{ + l[i]["selected"] = ""; + } + } + ); + var html = Mustache.to_html( + "{{#data}}" + $("#templateOpcoesColunas").html() + "{{/data}}", + {"data":l} + ); + l[id]["selected"] = ""; + return html; + } + } + ) + ); + i3GEOadmin.core.abreModalGeral(html); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + adicionaDialogo: function(){ + i3GEOadmin.core.abreModalGeral(i3GEOadmin.hierarquia.formAdiciona); + }, +// os parametros sao obtidos do formulario aberto do modal + adiciona: function(){ + var parametros = $("#modalGeral form").serialize(); + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=adicionar", + parametros + "&codigo_tipo_regiao=" + i3GEOadmin.hierarquia.codigo_tipo_regiao + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.hierarquia.ondeLista); + i3GEOadmin.hierarquia.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + excluirDialogo: function(id){ + var hash = { + "mensagem": i3GEOadmin.hierarquia.dicionario.confirma, + "onBotao1": "i3GEOadmin.hierarquia.excluir('"+id+"')", + "botao1": i3GEOadmin.hierarquia.dicionario.sim, + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.hierarquia.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + excluir: function(id){ + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=excluir", + "id_agregaregiao="+id + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.hierarquia.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + salvarDialogo: function(id){ + i3GEOadmin.hierarquia.parametrosSalvar = $("#form-edicao-" + id).serialize(); + var hash = { + "mensagem": i3GEOadmin.hierarquia.dicionario.confirma, + "onBotao1": "i3GEOadmin.hierarquia.salvar('"+id+"')", + "botao1": i3GEOadmin.hierarquia.dicionario.sim, + "onBotao2": "i3GEOadmin.hierarquia.parametrosSalvar = '';i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.hierarquia.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + salvar: function(id){ + var parametros = i3GEOadmin.hierarquia.parametrosSalvar; + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=alterar", + parametros + "&id_agregaregiao="+ id + "&codigo_tipo_regiao=" + i3GEOadmin.hierarquia.codigo_tipo_regiao + ) + .done( + function(data, status){ + i3GEOadmin.hierarquia.parametrosSalvar = ""; + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.hierarquia.ondeLista); + i3GEOadmin.hierarquia.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.hierarquia.parametrosSalvar = ""; + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + } +}; \ No newline at end of file diff --git a/admin1/metaestat/regioes/hierarquia/index.php b/admin1/metaestat/regioes/hierarquia/index.php new file mode 100755 index 0000000..5e61286 --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/index.php @@ -0,0 +1,113 @@ + +
+
+ +
+
+ +
+
+
+ + +
+
+
+ + + + + + + diff --git a/admin1/metaestat/regioes/hierarquia/templates/templateFormLista.php b/admin1/metaestat/regioes/hierarquia/templates/templateFormLista.php new file mode 100755 index 0000000..7bbb29e --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/templates/templateFormLista.php @@ -0,0 +1,32 @@ + diff --git a/admin1/metaestat/regioes/hierarquia/templates/templateLista.php b/admin1/metaestat/regioes/hierarquia/templates/templateLista.php new file mode 100755 index 0000000..40f4577 --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/templates/templateLista.php @@ -0,0 +1,18 @@ + diff --git a/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesColunas.php b/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesColunas.php new file mode 100755 index 0000000..cc8936b --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesColunas.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesRegioes.php b/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesRegioes.php new file mode 100755 index 0000000..a8ba0ec --- /dev/null +++ b/admin1/metaestat/regioes/hierarquia/templates/templateOpcoesRegioes.php @@ -0,0 +1,3 @@ + \ No newline at end of file diff --git a/admin1/metaestat/regioes/index.js b/admin1/metaestat/regioes/index.js new file mode 100755 index 0000000..088773b --- /dev/null +++ b/admin1/metaestat/regioes/index.js @@ -0,0 +1,260 @@ +/* +Licenca: + +GPL2 + +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet + +Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com + +Este programa é software livre; você pode redistribuí-lo +e/ou modificá-lo sob os termos da Licença Pública Geral +GNU conforme publicada pela Free Software Foundation; + +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 +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. + + */ +i3GEOadmin.regioes = { + //variavel global indicando o elemento que recebera a lista de regioes + ondeLista: "", + //conteudo html do formulario de adicao de operacao + formAdiciona: "", + //parametros obtidos do formulario de edicao antes de abrir o modal de confirmacao + parametrosSalvar: "", + init: function(onde){ + i3GEOadmin.regioes.ondeLista = onde; + i3GEOadmin.regioes.lista(); + }, + /* +Function: lista + +Obtém a lista de regioes + */ + lista: function(){ + i3GEOadmin.core.iconeAguarde(i3GEOadmin.regioes.ondeLista); + $.post( + "exec.php?funcao=lista" + ) + .done( + function(data, status){ + //objeto json com os dados viondos do banco + var json = jQuery.parseJSON(data); + //template do form de cada operacao + var templateLista = $("#templateLista").html(); + //lista todas as regioes + var html = Mustache.to_html( + "{{#data}}" + templateLista + "{{/data}}", + $.extend( + {}, + i3GEOadmin.regioes.dicionario, + { + "data": json, + "onExcluir": "i3GEOadmin.regioes.excluirDialogo",//funcao + "onEditar": "i3GEOadmin.regioes.editarDialogo" + } + ) + ); + i3GEOadmin.regioes.ondeLista.html(html); + //monta um template para o modal de inclusao + if(i3GEOadmin.regioes.formAdiciona == ""){ + html = Mustache.to_html( + $("#templateFormLista").html(), + $.extend( + {}, + i3GEOadmin.regioes.dicionario, + { + "codigo_tipo_regiao": "modal", + "escondido": "hidden", + "excluir": i3GEOadmin.regioes.dicionario.cancelar, + "onExcluir": "i3GEOadmin.core.fechaModalGeral",//funcao + "onSalvar": "i3GEOadmin.regioes.adiciona", + "opcoesMedia": function(){ + var hash = {}; + hash["sim"] = i3GEOadmin.regioes.dicionario.sim; + hash["nao"] = i3GEOadmin.regioes.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesSimNao").html(), + hash + ); + }, + "opcoesSoma": function(){ + var hash = {}; + hash["sim"] = i3GEOadmin.regioes.dicionario.sim; + hash["nao"] = i3GEOadmin.regioes.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesSimNao").html(), + hash + ); + } + } + ) + ); + i3GEOadmin.regioes.formAdiciona = html; + } + $.material.init(); + } + ) + .fail(function(data){ + i3GEOadmin.regioes.ondeLista.html(""); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + }); + }, + editarDialogo: function(id){ + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=listaunico", + "codigo_tipo_regiao=" + id + ) + .done( + function(data, status){ + var json = jQuery.parseJSON(data); + //lista todas as regioes + var html = Mustache.to_html( + "{{#data}}" + $("#templateFormLista").html() + "{{/data}}", + $.extend( + {}, + i3GEOadmin.regioes.dicionario, + { + "data": json, + "onExcluir": "i3GEOadmin.regioes.excluirDialogo",//funcao + "onSalvar": "i3GEOadmin.regioes.salvarDialogo", + "opcoesMedia": function(){ + var hash = {}; + hash[this.permitemedia + "-sel"] = "selected"; + hash["sim"] = i3GEOadmin.regioes.dicionario.sim; + hash["nao"] = i3GEOadmin.regioes.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesSimNao").html(), + hash + ); + }, + "opcoesSoma": function(){ + var hash = {}; + hash[this.permitesoma + "-sel"] = "selected"; + hash["sim"] = i3GEOadmin.regioes.dicionario.sim; + hash["nao"] = i3GEOadmin.regioes.dicionario.nao; + return Mustache.to_html( + $("#templateOpcoesSimNao").html(), + hash + ); + } + } + ) + ); + i3GEOadmin.core.abreModalGeral(html); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + adicionaDialogo: function(){ + i3GEOadmin.core.abreModalGeral(i3GEOadmin.regioes.formAdiciona); + }, +// os parametros sao obtidos do formulario aberto do modal + adiciona: function(){ + var parametros = $("#modalGeral form").serialize(); + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=adicionar", + parametros + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.regioes.ondeLista); + i3GEOadmin.regioes.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + excluirDialogo: function(id){ + var hash = { + "mensagem": i3GEOadmin.regioes.dicionario.confirma, + "onBotao1": "i3GEOadmin.regioes.excluir('"+id+"')", + "botao1": i3GEOadmin.regioes.dicionario.sim, + "onBotao2": "i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.regioes.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + excluir: function(id){ + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=excluir", + "codigo_tipo_regiao="+id + ) + .done( + function(data, status){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.regioes.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + salvarDialogo: function(id){ + i3GEOadmin.regioes.parametrosSalvar = $("#form-edicao-" + id).serialize(); + var hash = { + "mensagem": i3GEOadmin.regioes.dicionario.confirma, + "onBotao1": "i3GEOadmin.regioes.salvar('"+id+"')", + "botao1": i3GEOadmin.regioes.dicionario.sim, + "onBotao2": "i3GEOadmin.regioes.parametrosSalvar = '';i3GEOadmin.core.fechaModalConfirma();", + "botao2": i3GEOadmin.regioes.dicionario.nao + }; + i3GEOadmin.core.abreModalConfirma(hash); + }, + salvar: function(id){ + var parametros = i3GEOadmin.regioes.parametrosSalvar; + i3GEOadmin.core.fechaModalGeral(); + i3GEOadmin.core.modalAguarde(true); + $.post( + "exec.php?funcao=alterar", + "codigo_tipo_regiao="+ id+"&"+parametros + ) + .done( + function(data, status){ + i3GEOadmin.regioes.parametrosSalvar = ""; + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.iconeAguarde(i3GEOadmin.regioes.ondeLista); + i3GEOadmin.regioes.lista(); + } + ) + .fail( + function(data){ + i3GEOadmin.regioes.parametrosSalvar = ""; + i3GEOadmin.core.modalAguarde(false); + i3GEOadmin.core.mostraErro(data.status + " " +data.statusText); + } + ); + }, + editarHierarquia: function(codigo_tipo_regiao){ + //muda a url para que o usuario possa voltar pelo botao do navegador + //var u = window.location.origin + window.location.pathname + "?id_filtro=" + codigo_tipo_regiao; + //window.history.replaceState(null,null,u); + //abre a pagina de edicao + window.location.href = "hierarquia/index.php?codigo_tipo_regiao=" + codigo_tipo_regiao; + } +}; \ No newline at end of file diff --git a/admin1/metaestat/regioes/index.php b/admin1/metaestat/regioes/index.php index b421004..ac7fb67 100755 --- a/admin1/metaestat/regioes/index.php +++ b/admin1/metaestat/regioes/index.php @@ -4,23 +4,61 @@ include ("exec.php"); include "../../head.php"; ?> -
+
- +
-
-
-
- +
+
+
+ + +
+ + + diff --git a/admin1/metaestat/regioes/templates/templateFormLista.php b/admin1/metaestat/regioes/templates/templateFormLista.php new file mode 100755 index 0000000..9901f9b --- /dev/null +++ b/admin1/metaestat/regioes/templates/templateFormLista.php @@ -0,0 +1,138 @@ + diff --git a/admin1/metaestat/regioes/templates/templateLista.php b/admin1/metaestat/regioes/templates/templateLista.php new file mode 100755 index 0000000..debc3dd --- /dev/null +++ b/admin1/metaestat/regioes/templates/templateLista.php @@ -0,0 +1,24 @@ + diff --git a/admin1/metaestat/unidades/funcoes.php b/admin1/metaestat/unidades/funcoes.php index 437c0b9..8cbe60d 100755 --- a/admin1/metaestat/unidades/funcoes.php +++ b/admin1/metaestat/unidades/funcoes.php @@ -34,12 +34,16 @@ function adicionar($nome,$sigla,$permitesoma,$permitemedia, $dbhw) { } function alterar($codigo_unidade_medida, $nome, $sigla,$permitesoma,$permitemedia, $dbhw) { $esquemaadmin = $_SESSION ["esquemaadmin"]; - $dataCol = array ( - "nome" => $nome, - "sigla" => $sigla, - "permitesoma" => $permitesoma, - "permitemedia" => $permitemedia - ); + $convUTF = $_SESSION["convUTF"]; + if ($convUTF != true){ + $nome = utf8_decode($nome); + } + $dataCol = array ( + "nome" => $nome, + "sigla" => $sigla, + "permitesoma" => $permitesoma, + "permitemedia" => $permitemedia + ); $resultado = \admin\php\funcoesAdmin\i3GeoAdminUpdate ( $dbhw, "i3geoestat_unidade_medida", $dataCol, "WHERE codigo_unidade_medida = $codigo_unidade_medida" ); if ($resultado === false) { return false; diff --git a/admin1/metaestat/unidades/templates/templateLista.php b/admin1/metaestat/unidades/templates/templateLista.php index a06e896..435ddc5 100755 --- a/admin1/metaestat/unidades/templates/templateLista.php +++ b/admin1/metaestat/unidades/templates/templateLista.php @@ -9,7 +9,7 @@ delete_forever - {{{nome}}} +  {{{nome}}}
-- libgit2 0.21.2