Commit 20aed09b31bf98afe9ae4ef02a8d59d4b504d94d
1 parent
a560b6c9
Exists in
master
and in
7 other branches
Reformulação da interface do geradordelinks e dos javascripts que agora utiliza …
…o diretório classesjs. O javascript foi transformado em uma API
Showing
1 changed file
with
20 additions
and
377 deletions
Show diff stats
geradordelinks.htm
... | ... | @@ -11,10 +11,7 @@ |
11 | 11 | P |
12 | 12 | {COLOR: #2F4632;text-align: justify;font-size: 12px;font-family: Verdana, Arial, Helvetica, sans-serif;} |
13 | 13 | </style> |
14 | -<script src="pacotes/cpaint/cpaint2.inc.compressed.js" type="text/javascript"></script> | |
15 | -<script type="text/javascript" src="pacotes/openlayers/OpenLayers.js"></script> | |
16 | -<script type="text/javascript" src="classesjs/compactados/funcoes_compacto.js"></script> | |
17 | - | |
14 | +<script type="text/javascript" src="classesjs/geradordelinks.js"></script> | |
18 | 15 | </head> |
19 | 16 | <body style="background-color:white;text-align:left;left:0px;"> |
20 | 17 | <!--<div id=banner style=position:relative;top:0px;left:0px;text-align:left > |
... | ... | @@ -85,36 +82,14 @@ dos pontos em décimos de grau (exemplo: -54 -12 -54 1 -51 -15) (opcional):</b></ |
85 | 82 | </select> |
86 | 83 | </div> |
87 | 84 | </div> |
88 | -<div style='width:550px;top:35px;left:10px;text-align:left;border:1px gray solid;' > | |
89 | - <div style=margin:10px;text-align:left; > | |
90 | - <p><b>Utilize o mapa para definir as coordenadas geográficas do mapa, ou digite os valores desejados (opcional):</b></p> | |
91 | - <div id=mapa1 style="width:250px;height:250px;border:1px solid blue;display:none"></div> | |
92 | - <div style=position:absolute;top:40px;left:270px;text-align:left; > | |
93 | - Coordenadas geográficas em décimos de grau:<br><br> | |
94 | - Longitude mínima:<br> | |
95 | - <div style=padding:5px;width:80px; id=paiXmin > | |
96 | - <input onchange="crialink()" type=text size=10 value="" id=xmin /> | |
97 | - </div><br> | |
98 | - Longitude máxima:<br> | |
99 | - <div style=padding:5px;width:80px; id=paiXmax > | |
100 | - <input onchange="crialink()" type=text size=10 value="" id=xmax /> | |
101 | - </div><br> | |
102 | - Latitude mínima:<br> | |
103 | - <div style=padding:5px;width:80px; id=paiYmin > | |
104 | - <input onchange="crialink()" type=text size=10 value="" id=ymin /> | |
105 | - </div><br> | |
106 | - Latitude máxima:<br> | |
107 | - <div style=padding:5px;width:80px; id=paiYmax > | |
108 | - <input onchange="crialink()" type=text size=10 value="" id=ymax /> | |
109 | - </div><br> | |
110 | - <input class=executar type=button value="capturar" onclick="capturageo()" /> | |
111 | - </div> | |
112 | - </div> | |
85 | +<div id=buscageo style='width:550px;top:35px;left:10px;text-align:left;border:1px gray solid;' > | |
113 | 86 | </div> |
114 | 87 | </body> |
115 | 88 | <script> |
116 | 89 | /* |
117 | -Title: Aplicativo para geração de links | |
90 | +Title: i3geo/geradordelinks.htm | |
91 | + | |
92 | +Aplicativo para geração de links | |
118 | 93 | |
119 | 94 | Esse aplicativo permite ao usuário gerar links para abertura do i3geo. |
120 | 95 | |
... | ... | @@ -138,356 +113,24 @@ GNU junto com este programa; se não, escreva para a |
138 | 113 | Free Software Foundation, Inc., no endereço |
139 | 114 | 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. |
140 | 115 | |
141 | -File: i3geo/geradordelinks.htm | |
142 | - | |
143 | -*/ | |
144 | -navm = false | |
145 | -navn = false | |
146 | -var app = navigator.appName.substring(0,1); | |
147 | -if (app=='N') navn=true; else navm=true; | |
148 | - | |
149 | -$inputText("paiPontos","","pontos","","","") | |
150 | -$inputText("paiNometemapontos","","nometemapontos","","","") | |
151 | -$inputText("paiPerfil","","perfil","","","") | |
152 | -$inputText("paiXmin","","xmin","","","") | |
153 | -$inputText("paiXmax","","xmax","","","") | |
154 | -$inputText("paiYmin","","ymin","","","") | |
155 | -$inputText("paiYmax","","ymax","","","") | |
156 | - | |
157 | -/* | |
158 | -Variable: g_locaplic | |
159 | - | |
160 | -Localização da instalação do i3geo. | |
161 | -*/ | |
162 | -g_locaplic = "http://"+window.location.host+"/i3geo"; | |
163 | -i3geo_gl_seltema("estadosl") | |
164 | -i3geo_gl_crialink() | |
165 | -i3geo_gl_pegagrupos() | |
166 | -i3geo_gl_init() | |
167 | - | |
168 | -/* | |
169 | -Function: i3geo_gl_crialink | |
170 | - | |
171 | -Cria o link e mostra na tela. | |
172 | - | |
173 | -*/ | |
174 | -function i3geo_gl_crialink() | |
175 | -{ | |
176 | - var ins = g_locaplic+"/ms_criamapa.php?"; | |
177 | - var iguias = $i("temasa").getElementsByTagName("input"); | |
178 | - var tsl = new Array(); //temas ligados | |
179 | - var tsd = new Array(); //temas | |
180 | - for (i=0;i<iguias.length; i++) | |
181 | - { | |
182 | - if (iguias[i].type == "checkbox") | |
183 | - { | |
184 | - tsd.push(iguias[i].value); | |
185 | - if (iguias[i].checked == true) | |
186 | - {tsl.push(iguias[i].value);} | |
187 | - } | |
188 | - } | |
189 | - if(tsd.length > 0) | |
190 | - {ins += "&temasa="+tsd.join(" ")} | |
191 | - if(tsl.length > 0) | |
192 | - {ins += "&layers="+tsl.join(" ")} | |
193 | - if($i("pontos").value != "") | |
194 | - { | |
195 | - ins += "&pontos="+$i("pontos").value | |
196 | - ins += "&nometemapontos="+$i("nometemapontos").value | |
197 | - } | |
198 | - if($i("perfil").value != "") | |
199 | - { | |
200 | - ins += "&perfil="+$i("perfil").value | |
201 | - } | |
202 | - if($i("interface").value != "") | |
203 | - { | |
204 | - ins += "&interface="+$i("interface").value | |
205 | - } | |
206 | - if($i("xmin").value != "") | |
207 | - { | |
208 | - ins += "&mapext="+$i("xmin").value+" " | |
209 | - ins += $i("ymin").value+" " | |
210 | - ins += $i("xmax").value+" " | |
211 | - ins += $i("ymax").value | |
212 | - } | |
213 | - $i("link").href = ins | |
214 | - $i("link").innerHTML = ins | |
215 | -} | |
216 | -/* | |
217 | -Function: i3geo_gl_pegagrupos | |
218 | - | |
219 | -Pega a lista de grupos existentes no menu de temas do i3geo. | |
220 | -*/ | |
221 | -function i3geo_gl_pegagrupos() | |
222 | -{ | |
223 | - var p = "classesphp/mapa_controle.php?funcao=pegalistadegrupos&map_file=''"; | |
224 | - var cp = new cpaint(); | |
225 | - //cp.set_debug(2) | |
226 | - cp.set_response_type("JSON"); | |
227 | - cp.call(p,"pegalistadegrupos",combogrupos); | |
228 | -} | |
229 | -/* | |
230 | -Function: combogrupos | |
231 | - | |
232 | -Monta um combo com a lista de grupos. | |
233 | -*/ | |
234 | -function combogrupos(retorno) | |
235 | -{ | |
236 | - obGrupos = retorno.data | |
237 | - var ins = "<select style=width:250px onchange='combosubgrupos(this.value)' ><option value='' >Escolha um grupo:</option>" | |
238 | - for (ig=0;ig<obGrupos.grupos.length; ig++) | |
239 | - { | |
240 | - if(obGrupos.grupos[ig].nome) | |
241 | - ins += "<option value="+ig+" >"+obGrupos.grupos[ig].nome+"</option>" | |
242 | - } | |
243 | - $i("grupos").innerHTML = ins+"</select>" | |
244 | - combosubgrupos(-1) | |
245 | -} | |
246 | -/* | |
247 | -Function: combosubgrupos | |
248 | - | |
249 | -Monta um combo com a lista de subgrupos de um grupo. | |
250 | - | |
251 | -Chamado pela função combogrupos. | |
116 | +Veja: | |
252 | 117 | |
253 | -Parameters: | |
254 | - | |
255 | -i - id que identifica o grupo escolhido. | |
256 | -*/ | |
257 | -function combosubgrupos(i) | |
258 | -{ | |
259 | - var ins = "<select style=width:250px onchange='combotemas("+i+",this.value)' ><option value='' >Escolha um sub-grupo:</option>" | |
260 | - if (obGrupos.grupos[i]) | |
261 | - { | |
262 | - for (ig=0;ig<obGrupos.grupos[i].subgrupos.length; ig++) | |
263 | - { | |
264 | - ins += "<option value="+ig+" >"+obGrupos.grupos[i].subgrupos[ig].nome+"</option>" | |
265 | - } | |
266 | - } | |
267 | - $i("subgrupos").innerHTML = ins+"</select>" | |
268 | - combotemasgrupo(i) | |
269 | -} | |
270 | -/* | |
271 | -Function: combotemasgrupo | |
272 | - | |
273 | -Monta um combo com a lista de temas vinculados diretamente a um grupo. | |
274 | - | |
275 | -Chamado pela função combosubgrupos. | |
276 | - | |
277 | -Parameters: | |
278 | - | |
279 | -i - id que identifica o grupo escolhido. | |
280 | -*/ | |
281 | -function combotemasgrupo(i) | |
282 | -{ | |
283 | - var ins = "<select style=width:250px MULTIPLE SIZE=10 onchange=i3geo_gl_seltema(this.value) ><option value='' >Clique no tema para incluir:</option>" | |
284 | - if (obGrupos.grupos[i]) | |
285 | - { | |
286 | - for (ig=0;ig<obGrupos.grupos[i].temasgrupo.length; ig++) | |
287 | - { | |
288 | - ins += "<option value="+obGrupos.grupos[i].temasgrupo[ig].tid+" >"+obGrupos.grupos[i].temasgrupo[ig].nome+"</option>" | |
289 | - } | |
290 | - } | |
291 | - $i("temas").innerHTML = ins+"</select>" | |
292 | -} | |
293 | -/* | |
294 | -Function: combotemas | |
118 | +<i3geo/classesjs/geradordelinks.js> | |
295 | 119 | |
296 | -Monta um combo com a lista de temas ligados a um sub-grupo. | |
297 | - | |
298 | -Parameters: | |
299 | - | |
300 | -grupo - id que identifica um grupo | |
301 | - | |
302 | -sub - id que identifica um subgrupo | |
303 | -*/ | |
304 | -function combotemas(grupo,sub) | |
305 | -{ | |
306 | - var monta = function(retorno) | |
307 | - { | |
308 | - var ins = "<select style=width:250px MULTIPLE SIZE=10 onchange=i3geo_gl_seltema(this.value) ><option value='' >Clique no tema para incluir:</option>" | |
309 | - for (ig=0;ig<retorno.data.temas.length; ig++) | |
310 | - { | |
311 | - ins += "<option value="+retorno.data.temas[ig].tid+" >"+retorno.data.temas[ig].nome+"</option>" | |
312 | - } | |
313 | - $i("temas").innerHTML = ins+"</select>" | |
314 | - } | |
315 | - var p = "classesphp/mapa_controle.php?funcao=pegalistadetemas&map_file=''&grupo="+grupo+"&subgrupo="+sub; | |
316 | - var cp = new cpaint(); | |
317 | - //cp.set_debug(2) | |
318 | - cp.set_response_type("JSON"); | |
319 | - cp.call(p,"pegalistadetemas",monta); | |
320 | -} | |
321 | -/* | |
322 | -Function i3geo_gl_seltema | |
323 | - | |
324 | -Acrescenta um tema no link. | |
325 | - | |
326 | -Além de acrescentar o tema no link, o tema é acrescentado na lista de gerenciamento dos temas já escolhidos. | |
327 | - | |
328 | -Parameters: | |
329 | - | |
330 | -idtema - codigo do tema que será crescentado | |
331 | -*/ | |
332 | -function i3geo_gl_seltema(idtema) | |
333 | -{ | |
334 | - var novodiv = document.createElement("div"); | |
335 | - novodiv.style.textAlign="left" | |
336 | - novodiv.id = idtema | |
337 | - $i("temasa").appendChild(novodiv); | |
338 | - var novoel = document.createElement("img"); | |
339 | - novoel.title = "excluir" | |
340 | - novoel.onclick = excluir | |
341 | - novoel.src = "imagens/x.png" | |
342 | - novodiv.appendChild(novoel); | |
343 | - var novoel = document.createElement("img"); | |
344 | - novoel.title = "subir" | |
345 | - novoel.src = "imagens/sobe.gif" | |
346 | - novoel.onclick = subir | |
347 | - novodiv.appendChild(novoel); | |
348 | - var novoel = document.createElement("img"); | |
349 | - novoel.title = "descer" | |
350 | - novoel.src = "imagens/desce.gif" | |
351 | - novoel.onclick = descer | |
352 | - novodiv.appendChild(novoel); | |
353 | - var novoel = document.createElement("input"); | |
354 | - novoel.onclick = i3geo_gl_crialink | |
355 | - novoel.title = "visível/não visível" | |
356 | - novoel.type = "checkbox" | |
357 | - novoel.style.cursor="pointer" | |
358 | - novoel.style.top="3px" | |
359 | - novoel.style.position="relative" | |
360 | - novoel.style.border="0px" | |
361 | - novoel.value=idtema | |
362 | - novodiv.appendChild(novoel); | |
363 | - var novoel = document.createElement("span"); | |
364 | - novoel.innerHTML = idtema | |
365 | - novodiv.appendChild(novoel); | |
366 | - novodiv.appendChild(document.createElement("br")); | |
367 | - i3geo_gl_crialink() | |
368 | -} | |
369 | -/* | |
370 | -Function: descer | |
371 | - | |
372 | -Desce um tema na lista de temas selecionados. | |
373 | - | |
374 | -Parameters: | |
375 | - | |
376 | -e - elemento do DOM. | |
377 | -*/ | |
378 | -function descer(e) | |
379 | -{ | |
380 | - var pai = pegaElementoPai(e) | |
381 | - divpai = pai.parentNode | |
382 | - if(pai.nextSibling) | |
383 | - divpai.insertBefore(pai,pai.nextSibling.nextSibling) | |
384 | - i3geo_gl_crialink() | |
385 | -} | |
386 | -/* | |
387 | -Function: subir | |
388 | - | |
389 | -Sobe um tema na lista de temas selecionados | |
390 | - | |
391 | -Parameters: | |
392 | - | |
393 | -e - elemento do DOM. | |
394 | -*/ | |
395 | -function subir(e) | |
396 | -{ | |
397 | - var pai = pegaElementoPai(e) | |
398 | - divpai = pai.parentNode | |
399 | - divpai.insertBefore(pai,pai.previousSibling) | |
400 | - i3geo_gl_crialink() | |
401 | -} | |
402 | -/* | |
403 | -Function: excluir | |
404 | - | |
405 | -Exclui um tema da lista de temas selecionados | |
406 | - | |
407 | -Parameters: | |
408 | - | |
409 | -e - elemento do DOM. | |
410 | -*/ | |
411 | -function excluir(e) | |
412 | -{ | |
413 | - var pai = pegaElementoPai(e) | |
414 | - pai.parentNode.removeChild(pai) | |
415 | - i3geo_gl_crialink() | |
416 | -} | |
417 | -/* | |
418 | -Function: pegaElementoPai | |
419 | - | |
420 | -Pega o elemento pai de um elemento clicado para identificar o código do tema. | |
421 | - | |
422 | -Parameters: | |
423 | - | |
424 | -e - elemento do DOM. | |
425 | -*/ | |
426 | -function pegaElementoPai(e) | |
427 | -{ | |
428 | - var targ | |
429 | - if (!e) var e = window.event | |
430 | - if (e.target) targ = e.target | |
431 | - else if (e.srcElement) targ = e.srcElement | |
432 | - if (targ.nodeType == 3) // defeat Safari bug | |
433 | - targ = targ.parentNode | |
434 | - var tname | |
435 | - tparent=targ.parentNode | |
436 | - return(tparent) | |
437 | -} | |
438 | -/* | |
439 | -Function: i3geo_gl_init | |
440 | - | |
441 | -Inicialliza o OpenLayers para permitir ao usuário escolher a abrangência espacial do link. | |
442 | -*/ | |
443 | -function i3geo_gl_init() | |
444 | -{ | |
445 | - $i("mapa1").style.display = "block"; | |
446 | - OL = new OpenLayers.Map('mapa1',{controls:[],numZoomLevels: 13}); | |
447 | - // | |
448 | - //layers | |
449 | - // | |
450 | - var ol_wms = new OpenLayers.Layer.WMS( "OpenLayers WMS", "http://labs.metacarta.com/wms/vmap0",{layers: 'basic'},{isBaseLayer: true} ); | |
451 | - ol_wms.setVisibility(true); | |
452 | - OL.addLayer(ol_wms); | |
453 | - var jpl_wms = new OpenLayers.Layer.WMS( "NASA Global Mosaic","http://wms.jpl.nasa.gov/wms.cgi", {layers: "global_mosaic"},{isBaseLayer: false}); | |
454 | - jpl_wms.setVisibility(false); | |
455 | - OL.addLayer(jpl_wms); | |
456 | - var base = new OpenLayers.Layer.WMS( "Cartografia", "http://mapas.mma.gov.br/cgi-bin/mapserv?map=/opt/www/html/webservices/baseraster.map&",{layers:'baseraster',transparent:'true',format:'image/png'},{isBaseLayer:false}); | |
457 | - base.setVisibility(false); | |
458 | - OL.addLayer(base); | |
459 | - // | |
460 | - //zoom e controle de layers | |
461 | - // | |
462 | - var ls = new OpenLayers.Control.LayerSwitcher() | |
463 | - OL.addControl(ls); | |
464 | - $i(ls.id).style.zIndex=2000; | |
465 | - OL.setCenter(new OpenLayers.LonLat(-55,-14), 2); | |
466 | - var panel = new OpenLayers.Control.NavToolbar(); | |
467 | - OL.addControl(panel); | |
468 | - panel.div.style.left="-4px"; | |
469 | - panel.div.style.top="-298px"; | |
470 | - var zb = new OpenLayers.Control.PanZoomBar(); | |
471 | - OL.addControl(zb); | |
472 | - $i("OpenLayers_Control_PanZoom_pandown").style.display="none" | |
473 | - $i("OpenLayers_Control_PanZoom_panup").style.display="none" | |
474 | - $i("OpenLayers_Control_PanZoom_panleft").style.display="none" | |
475 | - $i("OpenLayers_Control_PanZoom_panright").style.display="none" | |
476 | - zb.div.style.left="-8px" | |
477 | -} | |
478 | -/* | |
479 | -Function: capturageo | |
120 | +File: i3geo/geradordelinks.htm | |
480 | 121 | |
481 | -Pega as coordenadas geográficas da extensão definida no OpenLayers. | |
482 | 122 | */ |
483 | -function capturageo() | |
484 | -{ | |
485 | - var b = OL.getExtent(); | |
486 | - $i("xmin").value = b.left | |
487 | - $i("xmax").value = b.right | |
488 | - $i("ymin").value = b.bottom | |
489 | - $i("ymax").value = b.top | |
490 | - i3geo_gl_crialink() | |
491 | -} | |
123 | +var g_locaplic = "http://"+window.location.host+"/i3geo"; | |
124 | +var i3geo_gl_configura = new i3geo_gl_configura( | |
125 | + "http://localhost/i3geo", | |
126 | + "estadosl", | |
127 | + "temasa", | |
128 | + "link", | |
129 | + "grupos", | |
130 | + "subgrupos", | |
131 | + "temas", | |
132 | + "buscageo" | |
133 | + ) | |
134 | +i3geo_gl_inicia(i3geo_gl_configura) | |
492 | 135 | </script> |
493 | 136 | </html> | ... | ... |