Commit 651c6fca7aabd9ed821ad8a733ac75597b5e1e66
1 parent
4d672d91
Exists in
master
and in
7 other branches
Adaptação da ferramenta geolocal para uso com Bootstrap
Showing
59 changed files
with
96 additions
and
77 deletions
Show diff stats
ferramentas/geolocal/index.js
@@ -47,6 +47,7 @@ i3GEOF.geolocal = | @@ -47,6 +47,7 @@ i3GEOF.geolocal = | ||
47 | * Objetos capturados | 47 | * Objetos capturados |
48 | */ | 48 | */ |
49 | posicoes : [], | 49 | posicoes : [], |
50 | + contador : 0, | ||
50 | tempo : null, | 51 | tempo : null, |
51 | /* | 52 | /* |
52 | * Variavel: aguarde | 53 | * Variavel: aguarde |
@@ -58,6 +59,7 @@ i3GEOF.geolocal = | @@ -58,6 +59,7 @@ i3GEOF.geolocal = | ||
58 | * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php | 59 | * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php |
59 | */ | 60 | */ |
60 | MUSTACHE : "", | 61 | MUSTACHE : "", |
62 | + MUSTACHELISTA : "", | ||
61 | /** | 63 | /** |
62 | * Susbtitutos para o template | 64 | * Susbtitutos para o template |
63 | */ | 65 | */ |
@@ -77,29 +79,23 @@ i3GEOF.geolocal = | @@ -77,29 +79,23 @@ i3GEOF.geolocal = | ||
77 | */ | 79 | */ |
78 | inicia : function(iddiv) { | 80 | inicia : function(iddiv) { |
79 | if(i3GEOF.geolocal.MUSTACHE == ""){ | 81 | if(i3GEOF.geolocal.MUSTACHE == ""){ |
80 | - $.get(i3GEO.configura.locaplic + "/ferramentas/geolocal/template_mst.html", function(template) { | ||
81 | - i3GEOF.geolocal.MUSTACHE = template; | 82 | + var t1 = i3GEO.configura.locaplic + "/ferramentas/geolocal/template_mst.html", |
83 | + t2 = i3GEO.configura.locaplic + "/ferramentas/geolocal/template_lista_mst.html"; | ||
84 | + | ||
85 | + $.when( $.get(t1),$.get(t2) ).done(function(r1,r2) { | ||
86 | + i3GEOF.geolocal.MUSTACHE = r1[0]; | ||
87 | + i3GEOF.geolocal.MUSTACHELISTA = r2[0]; | ||
82 | i3GEOF.geolocal.inicia(iddiv); | 88 | i3GEOF.geolocal.inicia(iddiv); |
89 | + }).fail(function() { | ||
90 | + i3GEO.janela.closeMsg($trad("erroTpl")); | ||
91 | + return; | ||
83 | }); | 92 | }); |
84 | return; | 93 | return; |
85 | } | 94 | } |
86 | - var ics, n, i; | ||
87 | // se nao permitir a localizacao, retorna uma mensagem | 95 | // se nao permitir a localizacao, retorna uma mensagem |
88 | if (navigator.geolocation) { | 96 | if (navigator.geolocation) { |
89 | $i(iddiv).innerHTML = i3GEOF.geolocal.html(); | 97 | $i(iddiv).innerHTML = i3GEOF.geolocal.html(); |
90 | $i("i3GEOFgeolocalFormTempo").onsubmit = i3GEOF.geolocal.capturaTempo; | 98 | $i("i3GEOFgeolocalFormTempo").onsubmit = i3GEOF.geolocal.capturaTempo; |
91 | - ics = $i(iddiv).getElementsByTagName("button"); | ||
92 | - n = ics.length; | ||
93 | - for (i = 0; i < n; i++) { | ||
94 | - ics[i].style.backgroundColor = "white"; | ||
95 | - ics[i].className = "iconeGuiaMovel iconeGuiaMovelMouseOut"; | ||
96 | - ics[i].onmouseout = function() { | ||
97 | - this.className = "iconeGuiaMovel iconeGuiaMovelMouseOut"; | ||
98 | - }; | ||
99 | - ics[i].onmouseover = function() { | ||
100 | - this.className = "iconeGuiaMovel iconeGuiaMovelMouseOver"; | ||
101 | - }; | ||
102 | - } | ||
103 | i3GEOF.geolocal.capturaCoordenada(); | 99 | i3GEOF.geolocal.capturaCoordenada(); |
104 | } else { | 100 | } else { |
105 | $i(iddiv).innerHTML = $trad('msgNavegador', i3GEOF.geolocal.dicionario); | 101 | $i(iddiv).innerHTML = $trad('msgNavegador', i3GEOF.geolocal.dicionario); |
@@ -136,7 +132,7 @@ i3GEOF.geolocal = | @@ -136,7 +132,7 @@ i3GEOF.geolocal = | ||
136 | // cria a janela flutuante | 132 | // cria a janela flutuante |
137 | titulo = "<span class='i3GeoTituloJanelaBsNolink' >" + $trad('localizaUsuario',i3GEOF.geolocal.dicionario) + "</span></div>"; | 133 | titulo = "<span class='i3GeoTituloJanelaBsNolink' >" + $trad('localizaUsuario',i3GEOF.geolocal.dicionario) + "</span></div>"; |
138 | janela = i3GEO.janela.cria( | 134 | janela = i3GEO.janela.cria( |
139 | - "310", | 135 | + "410", |
140 | "230", | 136 | "230", |
141 | "", | 137 | "", |
142 | "", | 138 | "", |
@@ -182,12 +178,14 @@ i3GEOF.geolocal = | @@ -182,12 +178,14 @@ i3GEOF.geolocal = | ||
182 | } | 178 | } |
183 | i3GEOF.geolocal.aguarde.visibility = "visible"; | 179 | i3GEOF.geolocal.aguarde.visibility = "visible"; |
184 | var retorno = function(position) { | 180 | var retorno = function(position) { |
185 | - i3GEOF.geolocal.posicoes.push(position); | 181 | + position.id = i3GEOF.geolocal.contador; |
182 | + i3GEOF.geolocal.posicoes[i3GEOF.geolocal.contador] = position; | ||
183 | + i3GEOF.geolocal.contador = i3GEOF.geolocal.contador + 1; | ||
186 | var n = parseInt($i("i3GEOFgeolocalMaximo").value, 10); | 184 | var n = parseInt($i("i3GEOFgeolocalMaximo").value, 10); |
187 | if (n > 0 && i3GEOF.geolocal.posicoes.length > n) { | 185 | if (n > 0 && i3GEOF.geolocal.posicoes.length > n) { |
188 | i3GEOF.geolocal.posicoes.splice(0, (i3GEOF.geolocal.posicoes.length - n)); | 186 | i3GEOF.geolocal.posicoes.splice(0, (i3GEOF.geolocal.posicoes.length - n)); |
189 | } | 187 | } |
190 | - i3GEOF.geolocal.listaCoord(); | 188 | + i3GEOF.geolocal.listaCoord(position); |
191 | }; | 189 | }; |
192 | navigator.geolocation.getCurrentPosition(retorno, i3GEOF.geolocal.erro); | 190 | navigator.geolocation.getCurrentPosition(retorno, i3GEOF.geolocal.erro); |
193 | }, | 191 | }, |
@@ -229,38 +227,25 @@ i3GEOF.geolocal = | @@ -229,38 +227,25 @@ i3GEOF.geolocal = | ||
229 | i3GEOF.geolocal.aguarde.visibility = "hidden"; | 227 | i3GEOF.geolocal.aguarde.visibility = "hidden"; |
230 | }, | 228 | }, |
231 | listaCoord : function(position) { | 229 | listaCoord : function(position) { |
232 | - var ps = i3GEOF.geolocal.posicoes, n = ps.length, i, ins = "", res = [ | ||
233 | - "<tr><td></td><td></td><td></td><td><b>Latitude</b></td><td><b>Longitude</b></td></tr>" | ||
234 | - ]; | ||
235 | - for (i = (n - 1); i >= 0; i--) { | ||
236 | - ins = | ||
237 | - "<tr>" + '<td><img title="' + $trad('limpa', i3GEOF.geolocal.dicionario) | ||
238 | - + '" src="' | ||
239 | - + i3GEO.configura.locaplic | ||
240 | - + '/imagens/x.gif" onclick="i3GEOF.geolocal.excluiLinha(' | ||
241 | - + i | ||
242 | - + ')" style="cursor:pointer"></td>' | ||
243 | - + '<td><img onmouseout="i3GEOF.geolocal.escondexy()" onmouseover="i3GEOF.geolocal.mostraxy(' | ||
244 | - + i | ||
245 | - + ')" title="pan" src="' | ||
246 | - + i3GEO.configura.locaplic | ||
247 | - + '/imagens/o.gif" onclick="i3GEOF.geolocal.panLinha(' | ||
248 | - + i | ||
249 | - + ')" style="cursor:pointer"></td>' | ||
250 | - + '<td><img title="info" src="' | ||
251 | - + i3GEO.configura.locaplic | ||
252 | - + '/imagens/oxygen/16x16/help-about.png" onclick="i3GEOF.geolocal.info(' | ||
253 | - + i | ||
254 | - + ')" style="cursor:pointer"></td>' | ||
255 | - + "<td>" | ||
256 | - + ps[i].coords.latitude | ||
257 | - + "</td><td>" | ||
258 | - + ps[i].coords.longitude | ||
259 | - + "</td></tr>"; | ||
260 | - res.push(ins); | ||
261 | - } | ||
262 | - $i("i3GEOFgeolocalListaDePontos").innerHTML = "<table class='lista8' >" + res.join("") + "</table>"; | ||
263 | - $i("i3GEOFgeolocalNcoord").innerHTML = n; | 230 | + var ps = i3GEOF.geolocal.posicoes; |
231 | + var dados = { | ||
232 | + "limpa": $trad('limpa', i3GEOF.geolocal.dicionario), | ||
233 | + "locaplic": i3GEO.configura.locaplic, | ||
234 | + "longitude": position.coords.longitude, | ||
235 | + "latitude": position.coords.latitude, | ||
236 | + "id": position.id | ||
237 | + }; | ||
238 | + var ntr = document.createElement("tr"); | ||
239 | + ntr.id = "linhaGeolocal"+position.id; | ||
240 | + var temp = Mustache.render( | ||
241 | + "{{#data}}" + i3GEOF.geolocal.MUSTACHELISTA + "{{/data}}", | ||
242 | + {"data":dados} | ||
243 | + ); | ||
244 | + $(ntr).html(temp); | ||
245 | + var tabela = $i("i3GEOFgeolocalListaDePontos"); | ||
246 | + tabela.appendChild(ntr); | ||
247 | + $i("i3GEOFgeolocalNcoord").innerHTML = ps.length; | ||
248 | + | ||
264 | if (i3GEO.Interface["ATUAL"] === "openlayers") { | 249 | if (i3GEO.Interface["ATUAL"] === "openlayers") { |
265 | if (typeof OpenLayers.Control == "undefined") { | 250 | if (typeof OpenLayers.Control == "undefined") { |
266 | api = "ol3"; | 251 | api = "ol3"; |
@@ -285,11 +270,15 @@ i3GEOF.geolocal = | @@ -285,11 +270,15 @@ i3GEOF.geolocal = | ||
285 | api = i3GEO.Interface["ATUAL"]; | 270 | api = i3GEO.Interface["ATUAL"]; |
286 | } | 271 | } |
287 | i3GEOF.geolocal[api].removeLayer(); | 272 | i3GEOF.geolocal[api].removeLayer(); |
288 | - i3GEOF.geolocal.listaCoord(); | 273 | + var tabela = $i("i3GEOFgeolocalListaDePontos"); |
274 | + var cabecalho = tabela.getElementsByTagName("tr"); | ||
275 | + tabela.innerHtml = ""; | ||
276 | + tabela.appendChild(cabecalho); | ||
289 | }, | 277 | }, |
290 | excluiLinha : function(i) { | 278 | excluiLinha : function(i) { |
291 | - i3GEOF.geolocal.posicoes.splice(i, 1); | ||
292 | - i3GEOF.geolocal.listaCoord(); | 279 | + i3GEOF.geolocal.posicoes[i] = ""; |
280 | + var linha = $i("linhaGeolocal"+i); | ||
281 | + linha.parentNode.removeChild(linha); | ||
293 | }, | 282 | }, |
294 | panLinha : function(i) { | 283 | panLinha : function(i) { |
295 | var posicao = i3GEOF.geolocal.posicoes[i]; | 284 | var posicao = i3GEOF.geolocal.posicoes[i]; |
@@ -0,0 +1,18 @@ | @@ -0,0 +1,18 @@ | ||
1 | +<td> | ||
2 | + <button onclick='i3GEOF.geolocal.excluiLinha(' {{{id}}}')' class="btn btn-xs" style="margin: 2px; padding: 2px;"> | ||
3 | + <span class="material-icons">clear</span> | ||
4 | + </button> | ||
5 | +</td> | ||
6 | +<td> | ||
7 | + <button onclick="i3GEOF.geolocal.panLinha('{{{id}}}')" onmouseout="i3GEOF.geolocal.escondexy()" onmouseover="i3GEOF.geolocal.mostraxy('{{{id}}}')" title="pan" class="btn btn-xs" | ||
8 | + style="margin: 2px; padding: 2px;"> | ||
9 | + <span class="material-icons">gps_fixed</span> | ||
10 | + </button> | ||
11 | +</td> | ||
12 | +<td> | ||
13 | + <button onclick="i3GEOF.geolocal.info('{{{id}}}')" class="btn btn-xs" style="margin: 2px; padding: 2px;"> | ||
14 | + <span class="material-icons">info</span> | ||
15 | + </button> | ||
16 | +</td> | ||
17 | +<td>{{{latitude}}}</td> | ||
18 | +<td>{{{longitude}}}</td> |
ferramentas/geolocal/template_mst.html
1 | -<button title='{{{capturaCoord}}}' onclick='i3GEOF.geolocal.capturaCoordenada()'> | ||
2 | - <img src='{{{locaplic}}}/imagens/gisicons/gps.png' /> | ||
3 | -</button> | ||
4 | -<button title='{{{limpa}}}' onclick='i3GEOF.geolocal.limpa()'> | ||
5 | - <img src='{{{locaplic}}}/imagens/gisicons/erase.png' /> | ||
6 | -</button> | ||
7 | -<button title='{{{shp}}}' onclick='i3GEOF.geolocal.criaShp()'> | ||
8 | - <img src='{{{locaplic}}}/imagens/gisicons/layer-gps-create.png' /> | ||
9 | -</button> | ||
10 | -<img title='{{{paraCaptura}}}' onclick='i3GEOF.geolocal.paraTempo()' style='top: -3px; left: 10px; position: relative;' src='{{{locaplic}}}/imagens/oxygen/16x16/clock.png'> | ||
11 | - | ||
12 | -<form id='i3GEOFgeolocalFormTempo' style='left: 162px; position: absolute; top: 10px; width: 30px;'> | ||
13 | - <div class='i3geoForm100 i3geoFormIconeNumero' > | ||
14 | - <input type='number' id='i3GEOFgeolocalTempo' title={{{intervalo}}} value='0' /> | 1 | +<div class='container-fluid'> |
2 | + <button onclick="i3GEOF.geolocal.capturaCoordenada()" class='btn btn-primary btn-sm btn-raised'>{{{capturaCoord}}}</button> | ||
3 | + <table id='i3GEOFgeolocalListaDePontos'> | ||
4 | + <tr> | ||
5 | + <td></td> | ||
6 | + <td></td> | ||
7 | + <td></td> | ||
8 | + <td>Latitude</td> | ||
9 | + <td>Longitude</td> | ||
10 | + </tr> | ||
11 | + </table> | ||
12 | + <button onclick="$('#i3GEOFgeolocalExpande').collapse('toggle')" role="button" class="btn btn-default btn-xs"> | ||
13 | + <span class="text-primary readMore"> | ||
14 | + <i class="material-icons">keyboard_arrow_down</i> | ||
15 | + </span> | ||
16 | + <span class="text-primary readLess"> | ||
17 | + <i class="material-icons">keyboard_arrow_up</i> | ||
18 | + </span> | ||
19 | + </button> | ||
20 | + <div id="i3GEOFgeolocalExpande" class="collapse"> | ||
21 | + <button onclick="i3GEOF.geolocal.limpa()" class='btn btn-primary btn-sm btn-raised'>{{{limpa}}}</button> | ||
22 | + <button onclick="i3GEOF.geolocal.paraTempo()" class='btn btn-primary btn-sm btn-raised'>{{{paraCaptura}}}</button> | ||
23 | + <button onclick="i3GEOF.geolocal.criaShp()" class='btn btn-primary btn-sm btn-raised'>{{{shp}}}</button> | ||
24 | + <form id='i3GEOFgeolocalFormTempo'> | ||
25 | + <div class='form-group label-fixed condensed'> | ||
26 | + <label class="control-label" for="{{{idjanela}}}i3GEOtabelaexcestat">{{{intervalo}}}</label> | ||
27 | + <input class="form-control input-lg" type='text' id='i3GEOFgeolocalTempo' value='0' /> | ||
28 | + </div> | ||
29 | + </form> | ||
30 | + <div class='form-group label-fixed condensed'> | ||
31 | + <label class="control-label" for="">{{{maximoPontos}}}</label> | ||
32 | + <input class="form-control input-lg" type='text' id='i3GEOFgeolocalMaximo' value='' /> | ||
33 | + </div> | ||
34 | + <h5 id='i3GEOFgeolocalNcoord' class="alert alert-info"></h5> | ||
15 | </div> | 35 | </div> |
16 | -</form> | ||
17 | -<div style='height: 130px; overflow: auto; top: 10px; text-align: center; position: relative; cursor: pointer; padding: 5px;' id='i3GEOFgeolocalListaDePontos'></div> | ||
18 | -<br> | ||
19 | -<div id='i3GEOFgeolocalNcoord' style='width: 30px; position: absolute;'></div> | ||
20 | -<br> | ||
21 | -<p class='paragrafo' style='float: left; margin-right: 5px; top: 3px; position: relative;'>{{{maximoPontos}}} | ||
22 | -<div class='i3geoForm100 i3geoFormIconeNumero' style='position: relative; margin-left: 5px;'> | ||
23 | - <input type='number' id='i3GEOFgeolocalMaximo' value='' /> | ||
24 | </div> | 36 | </div> |
25 | \ No newline at end of file | 37 | \ No newline at end of file |
ferramentas/tabela/templateLista_mst.html
@@ -3,7 +3,7 @@ | @@ -3,7 +3,7 @@ | ||
3 | {{#cabecalho}} | 3 | {{#cabecalho}} |
4 | <td accessKey="{{idcoluna}}" > | 4 | <td accessKey="{{idcoluna}}" > |
5 | <button title="{{{t12}}}" onclick='i3GEOF.tabela.excluiColuna(this,"{{idcoluna}}","{{idjanela}}")' class="{{classe}} btn btn-xs" style="margin: 2px; padding: 2px;"> | 5 | <button title="{{{t12}}}" onclick='i3GEOF.tabela.excluiColuna(this,"{{idcoluna}}","{{idjanela}}")' class="{{classe}} btn btn-xs" style="margin: 2px; padding: 2px;"> |
6 | - <span class="material-icons">delete</span> | 6 | + <span class="material-icons">clear</span> |
7 | </button> | 7 | </button> |
8 | <button title="{{{ordena}}}" onclick='i3GEOF.tabela.ordenaColuna(this,"{{idcoluna}}","{{idjanela}}")' class="{{classe}} btn btn-xs" style="margin: 2px; padding: 2px;"> | 8 | <button title="{{{ordena}}}" onclick='i3GEOF.tabela.ordenaColuna(this,"{{idcoluna}}","{{idjanela}}")' class="{{classe}} btn btn-xs" style="margin: 2px; padding: 2px;"> |
9 | <span class="material-icons">sort</span> | 9 | <span class="material-icons">sort</span> |
@@ -16,7 +16,7 @@ | @@ -16,7 +16,7 @@ | ||
16 | <tr> | 16 | <tr> |
17 | <td> | 17 | <td> |
18 | <button onclick='i3GEOF.tabela.excluiLinha(this,"{{idjanela}}")' class="btn btn-xs" style="margin: 2px; padding: 2px;"> | 18 | <button onclick='i3GEOF.tabela.excluiLinha(this,"{{idjanela}}")' class="btn btn-xs" style="margin: 2px; padding: 2px;"> |
19 | - <span class="material-icons">delete</span> | 19 | + <span class="material-icons">clear</span> |
20 | </button> | 20 | </button> |
21 | </td> | 21 | </td> |
22 | <td> | 22 | <td> |
pacotes/yui290/build/container/container_compacto.js
100644 → 100755
pacotes/yui290/build/container/container_core_compacto.js
100644 → 100755
pacotes/yui290/build/utilities/utilities_compacto.js
100644 → 100755