Commit 4b0b8cb5a4084bc6f745202289f128797e28b525
1 parent
add48a4f
Exists in
master
and in
7 other branches
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 é aplicado a todas as camadas oriundas do sistema de metadados estatícos."); | 314 | i3GEO.janela.tempoMsg("O filtro é aplicado a todas as camadas oriundas do sistema de metadados estatí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(){ |