Commit 4b0b8cb5a4084bc6f745202289f128797e28b525

Authored by Edmar Moretti
1 parent add48a4f

Documentacao do codigo

Showing 1 changed file with 84 additions and 14 deletions   Show diff stats
ferramentas/metaestat/locregiao.js
1 /* 1 /*
2 - Title: Ferramenta que permite localizar uma região baseada no cadastro do módulo METAESTAT 2 +Title: Ferramenta que permite localizar uma região baseada no cadastro do módulo METAESTAT
3 3
4 - Arquivo: 4 +Arquivo:
5 5
6 - i3geo/ferramentas/metaestat/locregiao.js 6 +i3geo/ferramentas/metaestat/locregiao.js
7 7
8 Licenca: 8 Licenca:
9 9
10 GPL2 10 GPL2
11 11
12 - i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet 12 +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
13 13
14 - Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil  
15 - Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com 14 +Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil
  15 +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
16 16
17 Esse programa utiliza parcialmente os codigos da aplicacao calculadora de carbono desenvolvido pelo 17 Esse programa utiliza parcialmente os codigos da aplicacao calculadora de carbono desenvolvido pelo
18 IPAM - Instituto de Pesquisa Ambiental da Amazonia 18 IPAM - Instituto de Pesquisa Ambiental da Amazonia
@@ -34,17 +34,34 @@ if(typeof(i3GEOF) === 'undefined'){ @@ -34,17 +34,34 @@ if(typeof(i3GEOF) === 'undefined'){
34 var i3GEOF = {}; 34 var i3GEOF = {};
35 } 35 }
36 /* 36 /*
37 - Classe: i3GEOF.locregiao 37 +Classe: i3GEOF.locregiao
38 38
39 - Permite que o usuário escolha uma região para alterar o zoom ou aplicar um filtro 39 +Permite que o usuário escolha uma região para alterar o zoom ou aplicar um filtro
40 */ 40 */
41 i3GEOF.locregiao = { 41 i3GEOF.locregiao = {
42 - //CODIGOREGIAOPAI: "", //guarda o valor da regiao pai que originou o ultimo combo  
43 - ULTIMO_CODIGO_TIPO_REGIAO: "", //ultimo tipo de regiao escolhido  
44 - ULTIMO_CODIGO_REGIAO: "",//ultima regiao escolhida 42 + /**
  43 + * Guarda o ultimo codigo de tipo de regiao escolhido
  44 + */
  45 + ULTIMO_CODIGO_TIPO_REGIAO: "",
  46 + /**
  47 + * Guarda o ultimo codigo de regiao escolhido
  48 + */
  49 + ULTIMO_CODIGO_REGIAO: "",
  50 + /**
  51 + * Guarda o penultimo codigo de tipo de regiao escolhido
  52 + */
45 PENULTIMO_CODIGO_TIPO_REGIAO: "", 53 PENULTIMO_CODIGO_TIPO_REGIAO: "",
  54 + /**
  55 + * Guarda o penultimo codigo de regiao escolhido
  56 + */
46 PENULTIMO_CODIGO_REGIAO: "", 57 PENULTIMO_CODIGO_REGIAO: "",
47 - ATIVAFILTRO: false, //ativa ou nao os botoes que permitem filtrar a regiao. Usado quando a ferramenta e aberta com opcao de filtragem. 58 + /**
  59 + * Ativa ou nao os botoes que permitem filtrar a regiao. Usado quando a ferramenta e aberta com opcao de filtragem.
  60 + */
  61 + ATIVAFILTRO: false,
  62 + /**
  63 + * Ativa/desativa o indicador de aguarde
  64 + */
48 aguarde: function(obj){ 65 aguarde: function(obj){
49 if(!obj){ 66 if(!obj){
50 return "<img style='display:block;z-index:2' src=\'"+i3GEO.configura.locaplic+"/imagens/aguarde.gif\' />"; 67 return "<img style='display:block;z-index:2' src=\'"+i3GEO.configura.locaplic+"/imagens/aguarde.gif\' />";
@@ -66,7 +83,11 @@ i3GEOF.locregiao = { @@ -66,7 +83,11 @@ i3GEOF.locregiao = {
66 criaJanelaFlutuante: function(){ 83 criaJanelaFlutuante: function(){
67 i3GEOF.locregiao.iniciaDicionario(); 84 i3GEOF.locregiao.iniciaDicionario();
68 }, 85 },
69 - //abre a ferramenta com a opcao de filtro ativada 86 + /**
  87 + * Abre a ferramenta com a opcao de filtro ativada
  88 + * Com o filtro ativado, apenas a regiao escolhida e mostrada no mapa
  89 + * Executa i3GEOF.locregiao.comboHierarquiaRegioes
  90 + */
70 abreComFiltro: function(){ 91 abreComFiltro: function(){
71 i3GEOF.locregiao.ATIVAFILTRO = true; 92 i3GEOF.locregiao.ATIVAFILTRO = true;
72 var divbotoes = $i("i3geoLocregiaoBotoesFiltro"); 93 var divbotoes = $i("i3geoLocregiaoBotoesFiltro");
@@ -81,6 +102,10 @@ i3GEOF.locregiao = { @@ -81,6 +102,10 @@ i3GEOF.locregiao = {
81 i3GEOF.locregiao.comboHierarquiaRegioes($i("i3geoLocregiaoTipoRegiao")); 102 i3GEOF.locregiao.comboHierarquiaRegioes($i("i3geoLocregiaoTipoRegiao"));
82 } 103 }
83 }, 104 },
  105 + /**
  106 + * Inicia a ferramenta ativando as opcoes
  107 + * Executa i3GEOF.locregiao.comboHierarquiaRegioes
  108 + */
84 inicia: function(divid){ 109 inicia: function(divid){
85 $i(divid).innerHTML = i3GEOF.locregiao.html(); 110 $i(divid).innerHTML = i3GEOF.locregiao.html();
86 i3GEOF.locregiao.comboHierarquiaRegioes($i("i3geoLocregiaoTipoRegiao")); 111 i3GEOF.locregiao.comboHierarquiaRegioes($i("i3geoLocregiaoTipoRegiao"));
@@ -93,7 +118,10 @@ i3GEOF.locregiao = { @@ -93,7 +118,10 @@ i3GEOF.locregiao = {
93 $i("i3geoLocregiaoBotoesFiltro").style.display = "block"; 118 $i("i3geoLocregiaoBotoesFiltro").style.display = "block";
94 } 119 }
95 }, 120 },
96 - //utiliza o dicionario compartilhado 121 + /**
  122 + * Carrega o dicionario com a traducao
  123 + * Executa i3GEOF.locregiao.iniciaJanelaFlutuante();
  124 + */
97 iniciaDicionario: function(){ 125 iniciaDicionario: function(){
98 if(!i3GEOF.metaestat || typeof(i3GEOF.metaestat.dicionario) === 'undefined'){ 126 if(!i3GEOF.metaestat || typeof(i3GEOF.metaestat.dicionario) === 'undefined'){
99 i3GEO.util.scriptTag( 127 i3GEO.util.scriptTag(
@@ -106,6 +134,10 @@ i3GEOF.locregiao = { @@ -106,6 +134,10 @@ i3GEOF.locregiao = {
106 i3GEOF.locregiao.iniciaJanelaFlutuante(); 134 i3GEOF.locregiao.iniciaJanelaFlutuante();
107 } 135 }
108 }, 136 },
  137 + /**
  138 + * Abre a janela flutuante com o conteudo da ferramenta
  139 + * Executa i3GEOF.locregiao.inicia
  140 + */
109 iniciaJanelaFlutuante: function(){ 141 iniciaJanelaFlutuante: function(){
110 if($i("i3GEOF.locregiao_corpo")){ 142 if($i("i3GEOF.locregiao_corpo")){
111 return; 143 return;
@@ -141,6 +173,11 @@ i3GEOF.locregiao = { @@ -141,6 +173,11 @@ i3GEOF.locregiao = {
141 $i("i3GEOF.locregiao_corpo").style.backgroundColor = "white"; 173 $i("i3GEOF.locregiao_corpo").style.backgroundColor = "white";
142 i3GEOF.locregiao.inicia(divid); 174 i3GEOF.locregiao.inicia(divid);
143 }, 175 },
  176 + /**
  177 + * HTML com o conteudo da ferramenta
  178 + *
  179 + * @return HTML
  180 + */
144 html: function(){ 181 html: function(){
145 var ins = "" + 182 var ins = "" +
146 '<div id="i3geoLocregiaoBotoesFiltro" style="display:none" >' + 183 '<div id="i3geoLocregiaoBotoesFiltro" style="display:none" >' +
@@ -153,6 +190,10 @@ i3GEOF.locregiao = { @@ -153,6 +190,10 @@ i3GEOF.locregiao = {
153 '</div>'; 190 '</div>';
154 return ins; 191 return ins;
155 }, 192 },
  193 + /**
  194 + * Altera a extensao geografica do mapa para enquadrar uma regiao
  195 + * @param string contendo a extensao geografica. Essa string e composta, sendo necessario converter em array e obter o segundo valor
  196 + */
156 zoom: function(valorregiaopai){ 197 zoom: function(valorregiaopai){
157 var temp = valorregiaopai.split(";"); 198 var temp = valorregiaopai.split(";");
158 if(temp.length > 1 && temp[1] != ""){ 199 if(temp.length > 1 && temp[1] != ""){
@@ -160,6 +201,16 @@ i3GEOF.locregiao = { @@ -160,6 +201,16 @@ i3GEOF.locregiao = {
160 } 201 }
161 return temp[0]; 202 return temp[0];
162 }, 203 },
  204 + /**
  205 + * Executado quando o usuario escolhe uma regiao
  206 + * Atualiza as variaveis que guardam as selecoes anteriores
  207 + * Aplica o zoom se for necessario
  208 + * Executa i3GEOF.locregiao.comboHierarquiaRegioes que ira montar a lista de regioes ou tipos de regioes de nivel inferior
  209 + * @param objeto DOM do combo de selecao de regioes
  210 + * @param codigo do tipo de regiao que e pai da atualmente selecionada
  211 + * @param codigo do tipo de regiao selecionada
  212 + * @param codigo da regiao pai da regiao selecionada
  213 + */
163 comboHierarquiaRegioesOnChange: function(combo,codigoregiaopai,codigo_tipo_regiao,valorregiaopai){ 214 comboHierarquiaRegioesOnChange: function(combo,codigoregiaopai,codigo_tipo_regiao,valorregiaopai){
164 var onde = combo.parentNode.getElementsByTagName("div")[0]; 215 var onde = combo.parentNode.getElementsByTagName("div")[0];
165 i3GEOF.locregiao.PENULTIMO_CODIGO_REGIAO = i3GEOF.locregiao.ULTIMO_CODIGO_REGIAO; 216 i3GEOF.locregiao.PENULTIMO_CODIGO_REGIAO = i3GEOF.locregiao.ULTIMO_CODIGO_REGIAO;
@@ -188,6 +239,14 @@ i3GEOF.locregiao = { @@ -188,6 +239,14 @@ i3GEOF.locregiao = {
188 } 239 }
189 i3GEOF.locregiao.comboHierarquiaRegioes(onde,codigoregiaopai,codigo_tipo_regiao,valorregiaopai); 240 i3GEOF.locregiao.comboHierarquiaRegioes(onde,codigoregiaopai,codigo_tipo_regiao,valorregiaopai);
190 }, 241 },
  242 + /**
  243 + * Monta o combo de regioes para escolha do usuario
  244 + * A funcao onchange podera reexecutar essa funcao para montar o combo de hierarquia inferior
  245 + * @param objeto DOM onde o combo sera inserido
  246 + * @param codigo do tipo da regiao pai da atual
  247 + * @param codigo do tipo de regiao atual
  248 + * @param codigo da regiao pai
  249 + */
191 comboHierarquiaRegioes: function(objonde,codigoregiaopai,codigo_tipo_regiao,valorregiaopai){ 250 comboHierarquiaRegioes: function(objonde,codigoregiaopai,codigo_tipo_regiao,valorregiaopai){
192 if(objonde){ 251 if(objonde){
193 i3GEOF.locregiao.aguarde(objonde); 252 i3GEOF.locregiao.aguarde(objonde);
@@ -232,6 +291,13 @@ i3GEOF.locregiao = { @@ -232,6 +291,13 @@ i3GEOF.locregiao = {
232 }; 291 };
233 i3GEO.php.listaHierarquiaRegioes(temp,codigo_tipo_regiao,codigoregiaopai,valorregiaopai); 292 i3GEO.php.listaHierarquiaRegioes(temp,codigo_tipo_regiao,codigoregiaopai,valorregiaopai);
234 }, 293 },
  294 + /**
  295 + * Aplica um filtro nas camadas do mapa oriundas do banco de metadados
  296 + * O mapa ira mostrar apenas o que passar pelo filtro
  297 + * Executa i3GEO.php.aplicaFiltroRegiao
  298 + * @param codigo da regiao
  299 + * @param codigo do tipo de regiao
  300 + */
235 aplicaFiltro: function(codigo_regiao,codigo_tipo_regiao){ 301 aplicaFiltro: function(codigo_regiao,codigo_tipo_regiao){
236 if(codigo_regiao === "" || codigo_tipo_regiao === ""){ 302 if(codigo_regiao === "" || codigo_tipo_regiao === ""){
237 return; 303 return;
@@ -247,6 +313,10 @@ i3GEOF.locregiao = { @@ -247,6 +313,10 @@ i3GEOF.locregiao = {
247 i3GEO.php.aplicaFiltroRegiao(temp,codigo_tipo_regiao,codigo_regiao); 313 i3GEO.php.aplicaFiltroRegiao(temp,codigo_tipo_regiao,codigo_regiao);
248 i3GEO.janela.tempoMsg("O filtro &eacute; aplicado a todas as camadas oriundas do sistema de metadados estat&iacute;cos."); 314 i3GEO.janela.tempoMsg("O filtro &eacute; aplicado a todas as camadas oriundas do sistema de metadados estat&iacute;cos.");
249 }, 315 },
  316 + /**
  317 + * Remove os filtros aplicados com aplicaFiltro
  318 + * Executa i3GEO.php.aplicaFiltroRegiao
  319 + */
250 removeFiltro: function(){ 320 removeFiltro: function(){
251 var tipo = "", 321 var tipo = "",
252 temp = function(){ 322 temp = function(){