bikepoa-tools 0.3.1 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2,4 +2,3 @@ language: ruby
2
2
  rvm:
3
3
  - "1.9.2"
4
4
  - "1.9.3"
5
- - jruby-19mode # JRuby in 1.9 mode
data/Gemfile CHANGED
@@ -1,5 +1,6 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
+ gem 'effin_utf8'
3
4
  gem 'rake'
4
5
  gem 'rspec'
5
6
  gem 'hashie'
@@ -6,6 +6,7 @@ GEM
6
6
  activesupport (3.0.0)
7
7
  coderay (1.0.8)
8
8
  diff-lcs (1.1.3)
9
+ effin_utf8 (1.0)
9
10
  fakeweb (1.3.0)
10
11
  git (1.2.5)
11
12
  hashie (1.2.0)
@@ -39,6 +40,7 @@ PLATFORMS
39
40
  DEPENDENCIES
40
41
  active_support
41
42
  bundler
43
+ effin_utf8
42
44
  fakeweb
43
45
  hashie
44
46
  jeweler
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.3.1
1
+ 0.4.0
@@ -5,11 +5,11 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = "bikepoa-tools"
8
- s.version = "0.3.1"
8
+ s.version = "0.4.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Felipe Mobus"]
12
- s.date = "2013-01-18"
12
+ s.date = "2013-05-13"
13
13
  s.description = "A simple read-only API for Porto Alegre's bike rental system, bikepoa."
14
14
  s.email = "fmobus@gmail.com"
15
15
  s.extra_rdoc_files = [
@@ -54,6 +54,7 @@ Gem::Specification.new do |s|
54
54
  s.specification_version = 3
55
55
 
56
56
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
57
+ s.add_runtime_dependency(%q<effin_utf8>, [">= 0"])
57
58
  s.add_runtime_dependency(%q<rake>, [">= 0"])
58
59
  s.add_runtime_dependency(%q<rspec>, [">= 0"])
59
60
  s.add_runtime_dependency(%q<hashie>, [">= 0"])
@@ -63,6 +64,7 @@ Gem::Specification.new do |s|
63
64
  s.add_development_dependency(%q<jeweler>, [">= 0"])
64
65
  s.add_development_dependency(%q<rdoc>, [">= 0"])
65
66
  else
67
+ s.add_dependency(%q<effin_utf8>, [">= 0"])
66
68
  s.add_dependency(%q<rake>, [">= 0"])
67
69
  s.add_dependency(%q<rspec>, [">= 0"])
68
70
  s.add_dependency(%q<hashie>, [">= 0"])
@@ -73,6 +75,7 @@ Gem::Specification.new do |s|
73
75
  s.add_dependency(%q<rdoc>, [">= 0"])
74
76
  end
75
77
  else
78
+ s.add_dependency(%q<effin_utf8>, [">= 0"])
76
79
  s.add_dependency(%q<rake>, [">= 0"])
77
80
  s.add_dependency(%q<rspec>, [">= 0"])
78
81
  s.add_dependency(%q<hashie>, [">= 0"])
@@ -1,26 +1,36 @@
1
1
  module BikePOA
2
2
  module Helpers
3
3
  module ForceField
4
- FORCED_FIELDS = {}
5
4
  def self.included(base)
6
- base.send :extend, ClassMethods
5
+ enforcers = {}
6
+ enforcer_installers = Module.new do
7
+ Enforcers.methods.grep(/^force_/).each do |meth_name|
8
+ define_method(meth_name) do |field|
9
+ enforcers[field] = lambda { |value| Enforcers.send(meth_name, value) }
10
+ end
11
+ end
12
+ end
13
+ base.send(:extend, enforcer_installers)
14
+ base.send(:define_method, :enforcers) { enforcers }
7
15
  end
8
16
 
9
17
  def []=(property, value)
10
- transform = FORCED_FIELDS[property.to_sym]
11
- value = transform.call(value) if transform
18
+ enforcer = enforcers[property.to_sym]
19
+ value = enforcer.call(value) if enforcer
12
20
  super(property, value)
13
21
  end
14
22
 
15
- module ClassMethods
16
- def force_integer(field)
17
- FORCED_FIELDS[field.to_sym] = lambda { |value| Integer(value) }
23
+ module Enforcers
24
+ def self.force_integer(value)
25
+ Integer(value)
18
26
  end
19
27
 
20
- def force_utf8(field)
21
- FORCED_FIELDS[field.to_sym] = lambda do |value|
22
- new_value = value.encode('utf-8','iso-8859-1')
23
- (new_value.length == value.length)? new_value : value
28
+ def self.force_utf8(value)
29
+ begin
30
+ value.encode('iso-8859-1','utf-8') # a iso-8859-1 would raise here!
31
+ value
32
+ rescue Encoding::InvalidByteSequenceError
33
+ value.encode('utf-8','iso-8859-1')
24
34
  end
25
35
  end
26
36
  end
@@ -3,11 +3,12 @@ require 'csv'
3
3
 
4
4
  module BikePOA
5
5
  class MapParser
6
+ EXIBIRESTACAMAPA = /^exibirEstacaMapa\((.*?)\);/m
6
7
  CRIAPONTO = /criaPonto\(point,(.*)\) \);/
7
8
  def parse(content)
8
- content.scan(CRIAPONTO).map do |station_match|
9
- line_data = CSV.parse_line(station_match.first, quote_char: "'")
10
- fields = %w[id name address _ _ _ online status size available _ _]
9
+ content.scan(EXIBIRESTACAMAPA).map do |station_match|
10
+ line_data = CSV.parse_line(station_match.first.gsub(/\r?\n/,''), quote_char: "\"")
11
+ fields = %w[_ _ _ name id online status available size address]
11
12
  Hash[fields.zip(line_data)].delete_if { |key,value| key == '_' }
12
13
  end
13
14
  end
@@ -1,579 +1,875 @@
1
-
2
- <html>
3
- <head>
4
- <title>Mobilicidade - Portal da mobilidade urbana</title>
5
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
6
- <link href="include.css" rel="stylesheet" type="text/css">
7
- <link href="cssnovo/previsao.css" rel="stylesheet" type="text/css" />
8
- <script type="text/javascript">
9
- function exibirDivIdioma() {
10
- document.getElementById('pt-BR').style.display = 'block';
11
- }
12
- function horizontal() {
13
- var navItems = document.getElementById("menu_dropdown").getElementsByTagName("li");
14
- for (var i=0; i< navItems.length; i++) {
15
- if(navItems[i].className == "submenu")
16
- {
17
- if(navItems[i].getElementsByTagName('ul')[0] != null)
18
- {
19
- navItems[i].onmouseover=function() {this.getElementsByTagName('ul')[0].style.display="block";}
20
- navItems[i].onmouseout=function() {this.getElementsByTagName('ul')[0].style.display="none";}
21
- }
22
- }
23
- }
24
-
25
- }
26
- </script>
27
- </head>
28
- <body onload="horizontal();" topmargin="0" leftmargin="0">
29
- <div id="geral">
30
- <html>
31
- <head>
32
- <title>Mobilicidade - Portal da mobilidade urbana</title>
33
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
34
- <link href="include.css" rel="stylesheet" type="text/css">
35
- <link href="cssnovo/previsao.css" rel="stylesheet" type="text/css" />
36
- <script type="text/javascript">
37
- function exibirDivIdioma() {
38
- document.getElementById('pt-BR').style.display = 'block';
39
- }
40
- function horizontal() {
41
- var navItems = document.getElementById("menu_dropdown").getElementsByTagName("li");
42
- for (var i=0; i< navItems.length; i++) {
43
- if(navItems[i].className == "submenu")
44
- {
45
- if(navItems[i].getElementsByTagName('ul')[0] != null)
46
- {
47
- navItems[i].onmouseover=function() {this.getElementsByTagName('ul')[0].style.display="block";}
48
- navItems[i].onmouseout=function() {this.getElementsByTagName('ul')[0].style.display="none";}
49
- }
50
- }
51
- }
52
-
53
- }
54
- </script>
55
- </head>
56
- <body onload="horizontal();" topmargin="0" leftmargin="0">
57
- <div id="geral">
58
- <script language="Javascript">
59
- function checkFormLgn() {
60
- if (frmLgn.txt_email.value == "") {
61
- alert("Digite seu e-mail cadastrado!")
62
- frmLgn.txt_email.focus()
63
- return false
64
- }
65
- if (frmLgn.txt_password.value == "") {
66
- alert("Digite sua senha!")
67
- frmLgn.txt_password.focus()
68
- return false
69
- }
70
- frmGid.redirFailure.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&msg=Login Inv�lido!<br>Voc� confirmou seu cadastro? Se n�o, clique no link enviar e-mail de confirma��o abaixo!&redirpageMode=&email=" + frmGid.txt_email.value
71
- }
72
- function remindPass() {
73
- if (frmLgn.txt_email.value == "") {
74
- alert("Digite seu e-mail cadastrado!")
75
- frmLgn.txt_email.focus()
76
- } else {
77
- //frmGid.redirSuccess.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&redirpageMode=&email=" + frmGid.txt_email.value + "&msg=sua senha foi enviada com sucesso para o e-mail �" + frmGid.txt_email.value + "�"
78
- //frmGid.redirFailure.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&redirpageMode=&email=" + frmGid.txt_email.value + "&msg=n�o foi poss�vel enviar a senha para o e-mail " + frmGid.txt_email.value + ""
79
- //frmGid.action = "/globalAsp/globalIdRemindPass.asp?email=" + frmGid.txt_email.value
80
- //document.forms['frmGid'].submit()
81
- frmLgn.redirSuccess.value = "home.asp"
82
- document.forms['frmLgn'].submit()
83
- }
84
- }
85
- function assinaturaHTTPS() {
86
- self.parent.location.href = '/bikepoa/assinatura.asp';
87
- }
88
- </script>
89
- <!-- INICIO | Banner Float -->
90
- <!-- FIM | Banner Float-->
91
- <div id="cabecalho" style="width: 770px;">
92
- <!-- inicio logomarca twitter/facebook -->
93
- <!--<div class="logoTwitter"><a href="http://twitter.com/#!/mobilicidade" target="_blank"><img src="imgnovo/twitter.png" alt="" border="0"/></a></div>
94
- <div class="logoFacebook"><a href="http://www.facebook.com/pages/Mobilicidade/214556695227867" target="_blank"><img src="imgnovo/facebook.png" alt="" border="0"/></a></div>-->
95
- <!-- fim logomarca twitter/facebook -->
96
- <!-- inicio login -->
97
- <div align="right" style="width: 770px;">
98
-
99
- <form name="frmLgn" id="frmLgn" method="POST" onsubmit="return checkFormLgn()" action="/globalAsp/globalIdLogin_mobc2.asp">
100
- <table cellpadding="1px" cellspacing="0" border="0">
101
- <tr>
102
- <td class="corLaranjaLink" valign="middle">
103
- <a href="https://ww2.mobilicidade.com.br/bikepoa/globalidcadastro.asp">
104
- Cadastre-se �</a>
105
- </td>
106
- <td class="corLaranja" valign="middle">
107
- E-mail
108
- </td>
109
- <td valign="middle">
110
- <input class="campoLoginNovo" type="text" name="txt_email" id="txt_email" value=""
111
- size="10" maxlength="50" />
112
- </td>
113
- <td class="corLaranja" valign="middle">
114
- Senha
115
- </td>
116
- <td valign="middle">
117
- <input class="campoLoginNovo" type="password" name="txt_password" id="txt_password"
118
- size="10" maxlength="16" />
119
- </td>
120
- <td valign="middle">
121
- <input type="image" name="imageField" src="imgnovo/ok.png" />
122
- </td>
123
- <td class="corLaranjaLink" valign="middle">
124
- <a href="/bikepoa/globalIdLogin.asp">
125
- Esqueci a senha</a>
126
- </td>
127
- </tr>
128
- </table>
129
- <input type="hidden" name="redirPageMode" value="">
130
- <input type="hidden" name="redirSuccess" id="redirSuccess" value="/bikepoa/home.asp">
131
- <input type="hidden" name="redirFailure" id="redirFailure" value="/bikepoa/globalIdLogin.asp?msg=Login Inv�lido!<br>Voc� confirmou seu cadastro? Se n�o, clique no link enviar e-mail de confirma��o abaixo!&url=/bikepoa/home.asp">
132
- <input type="hidden" name="siteId" value="mobilicidade">
133
- </form>
134
-
135
- </div>
136
- <!-- fim login -->
137
- <!-- inicio logomarca pelario/itau -->
138
- <table cellpadding="0" cellspacing="0" border="0">
139
- <tr>
140
- <td>
141
- <div class="logomarca">
142
- <!--<div class="logoItau">-->
143
- <div style="height:76px;width:76px;position:relative;left: 263px;top:20px;float:left;">
144
- <!---->
145
- </div>
146
- <!--<div style="position:relative; right: 10px; top:5px;float:right;">
147
- <a href="/bikepoa/idioma.asp?idioma_site=pt"><img src="imgnovo/brazil.png" style="height:24px; width:24px;" alt="" border="0" /></a>
148
- <a href="/bikepoa/idioma.asp?idioma_site=en"><img src="imgnovo/eua.png" style="height:24px; width:24px;" alt="" border="0" /></a>
149
- </div>-->
150
- </div>
151
- </td>
152
- </tr>
153
- </table>
154
- <!-- fim logomarca pelario/itau -->
155
- <!-- inicio menu -->
156
- <div class="menuzae">
157
- <div id="divtwitter" style="position: absolute; display: block; height: 17px; width: 17px;
158
- left: 728px; top: 3px;">
159
- <a href="http://www.twitter.com/mobilicidade" target="_blank">
160
- <img src="imgnovo/twitter.png" alt="" border="0" width="17px" height="17px" />
161
- </a>
162
- </div>
163
- <div id="divfacebook" style="position: absolute; display: block; height: 17px; width: 17px;
164
- left: 748px; top: 3px;">
165
- <a href="http://www.facebook.com/mobilicidade" target="_blank">
166
- <img src="imgnovo/facebook-logo.png" alt="" border="0" width="17px" height="17px" />
167
- </a>
168
- </div>
169
- <ul id="menu_dropdown" class="menubar">
170
- <li class="submenu"><a href="/bikepoa/home.asp">Home</a></li>
171
- <li class="submenu"><a href="#">Passe</a>
172
- <ul class="menu">
173
- <li><a href="https://ww2.mobilicidade.com.br/bikepoa/assinatura.asp" target="_parent">Comprar Passe</a></li>
174
- </ul>
175
- </li>
176
- <li class="submenu"><a href="#">Extrato</a>
177
- <ul class="menu">
178
- <li><a href="/bikepoa/ordershistory.asp">Compras</a></li>
179
- <li><a href="/bikepoa/gridmovimento.asp">Movimenta��o</a></li>
180
- <!--<li><a href="#">Cancelar Passe</a></li>-->
181
- </ul>
182
- </li>
183
- <li class="submenu"><a href="#">Informa��es</a>
184
- <ul class="menu">
185
- <li><a href="/bikepoa/sobre.asp">Sobre</a></li>
186
- <li><a href="/bikepoa/comoutilizar.asp">Como Utilizar</a></li>
187
- <li><a href="/bikepoa/duvidas.asp">D�vidas</a></li>
188
- <li><a href="/bikepoa/mapaestacao.asp">Localiza��o Esta��es</a></li>
189
- <li><a href="javascript:window.open('/bikepoa/contratoprint.asp','Imprimir','width=740,heigth=300,scrollbars=yes'); void(0)">Termo de Ades�o e Uso</a></li>
190
- </ul>
191
- </li>
192
- <li class="submenu"><a href="/bikepoa/faleconosco.asp">
193
- Fale conosco</a></a></li>
194
- </ul>
195
- </div>
196
- <!-- fim menu -->
197
- </div>
198
-
199
- <div id="total">
200
- <div style="padding-left:10px;">
201
- <br />
202
- <font class="textoGeralNovo" style="color:#6baf46; font-size:18px;" ><b>Mapa das Esta��es</b></font>
203
- <br />
204
- <br />
205
- <font class="textoGeralNovo" font-size:14px;" ><b>Legenda:</b></font>
206
- <br />
207
- <table cellpadding="0" cellspacing="0" border="0">
208
- <tr>
209
- <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-cinza.gif" width="26" height="26" alt="" /></td>
210
- <td><font class="textoGeralNovo" font-size:14px;"> Esta��es em Ativa��o</font></td>
211
- <td> </td>
212
- <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-vazia.gif" width="26" height="26" alt="" /></td>
213
- <td><font class="textoGeralNovo" font-size:14px;"> Nenhuma Bicicleta dispon�vel</font></td>
214
- </tr>
215
- <tr>
216
- <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes.gif" width="26" height="26" alt="" /></td>
217
- <td> <font class="textoGeralNovo" font-size:14px;"> Esta��es Ativas</font></td>
218
- <td> </td>
219
- <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-cheia.gif" width="26" height="26" alt="" /></td>
220
- <td><font class="textoGeralNovo" font-size:14px;"> Todas as posi��es ocupadas</font></td>
221
- </tr>
222
- </table>
223
- <br />
224
- <br />
225
- <style type="text/css">
226
- @import url( http://www.google.com/uds/css/gsearch.css );
227
- @import url( http://www.google.com/uds/solutions/localsearch/gmlocalsearch.css );
228
- .lblMarker
229
- {
230
- font-family:Arial;
231
- font-size:12px;
232
- font-weight:bold;
233
- }
234
- </style>
235
- <script src="http://maps.google.com/maps?file=api&v=2&key=ABQIAAAAd3kymL6azoWU_Vns6OElLxTJbyVcek7hMp1iSF4Agg6rUY9aeRQ17uLKjjhSxx0I07muxjvBYoZJRQ" type="text/javascript"></script>
236
- <script src="http://www.google.com/uds/api?file=uds.js&v=1.0&key=ABQIAAAAd3kymL6azoWU_Vns6OElLxTJbyVcek7hMp1iSF4Agg6rUY9aeRQ17uLKjjhSxx0I07muxjvBYoZJRQ" type="text/javascript"></script>
237
- <script src="http://www.google.com/uds/solutions/localsearch/gmlocalsearch.js" type="text/javascript"></script>
238
- <script src="/bikepoa/js/dragzoom.js" type="text/javascript"></script>
239
- <script src="/bikepoa/js/labeledmarker.js" type="text/javascript"></script>
240
- <script type="text/javascript">
241
- //<![CDATA[
242
- var map;
243
- var tempo = 60000;
244
- var xmlHttp;
245
- var geocoder=null;
246
- var markerGroups = {"estacao": []};
247
- function load() {
248
- if (GBrowserIsCompatible()) {
249
- map = new GMap2(document.getElementById("map"));
250
- map.addControl(new GMapTypeControl());
251
- map.addControl(new GSmallMapControl());
252
- map.setCenter(new GLatLng(-30.027674,-51.228053), 13);
253
- // controle de busca
254
- var options = {
255
- suppressZoomToBounds : true,
256
- suppressInitialResultSelection : true
257
- };
258
- map.addControl(new google.maps.LocalSearch(options));
259
- // controle de zoom
260
- var opcaoZoomDrag = {
261
- backButtonEnabled: true,
262
- buttonZoomingHTML: 'arraste uma regi�o do mapa',
263
- backButtonHTML: 'voltar'
264
- };
265
- map.addControl(new DragZoomControl({}, opcaoZoomDrag, {}));
266
- processaXML();
267
- //lerXML();
268
- }
269
- }
270
- function lerXML(){
271
- //criarArquivoXML("http://samba.mobc.com.br/rj/retaguarda/Supervisao/CriarArquivoXML.aspx");
272
- //window.setTimeout("lerXML()", tempo);
273
- //tempo = 60000;
274
- }
275
- function processaXML(xml){
276
- map.clearOverlays();
277
-
278
- // Criando ponto - plotanto ponto no mapa
279
- var point = new GLatLng(-30.028658,-51.226791);
280
- map.addOverlay( criaPonto(point,1,'Mercado','Rua Marechal Floriano, 66, entre a Rua Volunt�rios da P�tria e a Avenida Ot�vio Rocha','','12x0',23,'A','EO',12,5,0,41,67) );
281
-
282
- // Criando ponto - plotanto ponto no mapa
283
- var point = new GLatLng(-30.029262,-51.231908);
284
- map.addOverlay( criaPonto(point,2,'Pra�a da Alf�ndega','Rua Capit�o Montanha, Esquina com a Rua Siqueira Campos','','12x0',23,'A','EO',12,6,0,50) );
285
-
286
- // Criando ponto - plotanto ponto no mapa
287
- var point = new GLatLng(-30.030772,-51.234886);
288
- map.addOverlay( criaPonto(point,3,'Casa de Cultura Mario Quintana','Rua 7 de Setembro, 539','','12x0',23,'A','EO',12,6,0,50) );
289
-
290
- // Criando ponto - plotanto ponto no mapa
291
- var point = new GLatLng(-30.034441,-51.240862);
292
- map.addOverlay( criaPonto(point,4,'Usina do Gas�metro','Avenida Presidente Jo�o Goulart, 551','','12x0',23,'A','EO',12,6,0,50) );
293
-
294
- // Criando ponto - plotanto ponto no mapa
295
- var point = new GLatLng(-30.037492,-51.237230);
296
- map.addOverlay( criaPonto(point,5,'C�mara de Vereadores','Rua Ibanor Jos� Tartarotti (ao lado do portao da Camara municipal)','','12x0',23,'A','EO',12,6,0,50) );
297
-
298
- // Criando ponto - plotanto ponto no mapa
299
- var point = new GLatLng(-30.038430,-51.225814);
300
- map.addOverlay( criaPonto(point,6,'Largo Zumbi','Travessa do Carmo, 76','','8x6',23,'A','EO',14,8,0,57,14) );
301
-
302
- // Criando ponto - plotanto ponto no mapa
303
- var point = new GLatLng(-30.038003,-51.213755);
304
- map.addOverlay( criaPonto(point,7,'Reden��o Ara�jo Viana','Parque Farroupilha','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
305
-
306
- // Criando ponto - plotanto ponto no mapa
307
- var point = new GLatLng(-30.033619,-51.216030);
308
- map.addOverlay( criaPonto(point,8,'Reden��o UFRGS','Parque Farroupilha','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
309
-
310
- // Criando ponto - plotanto ponto no mapa
311
- var point = new GLatLng(-30.035848,-51.224827);
312
- map.addOverlay( criaPonto(point,9,'Reden��o Brique','Avenida Loureiro da Silva','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
313
-
314
- // Criando ponto - plotanto ponto no mapa
315
- var point = new GLatLng(-30.039061,-51.224012);
316
- map.addOverlay( criaPonto(point,10,'Rua da Rep�blica','Rua da Rep�blica','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
317
-
318
- // Criando ponto - plotanto ponto no mapa
319
- var point = new GLatLng(-30.045358,-51.219549);
320
- map.addOverlay( criaPonto(point,11,'Gin�sio Tesourinha','Avenida �rico Ver�ssimo','','12x0',23,'A','EO',12,6,0,50) );
321
-
322
- // Criando ponto - plotanto ponto no mapa
323
- var point = new GLatLng(-30.048256,-51.228947);
324
- map.addOverlay( criaPonto(point,12,'Shopping Praia de Belas','Avenida Borges de Medeiros','','12x0',23,'A','EO',12,5,0,41,67) );
325
-
326
- // Criando ponto - plotanto ponto no mapa
327
- var point = new GLatLng(-30.038374,-51.206502);
328
- map.addOverlay( criaPonto(point,13,'Hospital de Cl�nicas','Avenida Aranha','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
329
-
330
- // Criando ponto - plotanto ponto no mapa
331
- var point = new GLatLng(-30.043129,-51.206202);
332
- map.addOverlay( criaPonto(point,14,'Faculdade de Medicina do Hospital de Cl�nicas','Avenida Ipiranga','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
333
-
334
- // Criando ponto - plotanto ponto no mapa
335
- var point = new GLatLng(-30.086213,-51.244354);
336
- map.addOverlay( criaPonto(point,15,'Barra Shopping','Avenida Di�rio de Not�cias','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
337
-
338
- // Criando ponto - plotanto ponto no mapa
339
- var point = new GLatLng(-30.059028,-51.228947);
340
- map.addOverlay( criaPonto(point,16,'Hospital Mae de Deus','Avenida Jos� de Alencar','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
341
-
342
- // Criando ponto - plotanto ponto no mapa
343
- var point = new GLatLng(-30.051859,-51.224441);
344
- map.addOverlay( criaPonto(point,17,'Menino de Deus - Zaffari Getulio','Avenido Get�lio Vargas','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
345
-
346
- // Criando ponto - plotanto ponto no mapa
347
- var point = new GLatLng(-30.053642,-51.205387);
348
- map.addOverlay( criaPonto(point,18,'Terminal Azenha','Avenida Bento Goncalves','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
349
-
350
- // Criando ponto - plotanto ponto no mapa
351
- var point = new GLatLng(-30.023438,-51.219162);
352
- map.addOverlay( criaPonto(point,19,'Rodovi�ria','Avenida Presidente Castelo Branco','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
353
-
354
- // Criando ponto - plotanto ponto no mapa
355
- var point = new GLatLng(-30.028677,-51.217274);
356
- map.addOverlay( criaPonto(point,20,'Shopping Total','Avenida Independencia','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
357
-
358
- // Criando ponto - plotanto ponto no mapa
359
- var point = new GLatLng(-30.056131,-51.173844);
360
- map.addOverlay( criaPonto(point,21,'Complexo PUC','Avenida Ipiranga','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
361
-
362
- // Criando ponto - plotanto ponto no mapa
363
- var point = new GLatLng(-30.060068,-51.173114);
364
- map.addOverlay( criaPonto(point,22,'Complexo PUC','Avenida Ipiranga','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
365
-
366
- // Criando ponto - plotanto ponto no mapa
367
- var point = new GLatLng(-30.033953,-51.221394);
368
- map.addOverlay( criaPonto(point,23,'Campus da UFRGS','Parque Farroupilha','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
369
-
370
- // Criando ponto - plotanto ponto no mapa
371
- var point = new GLatLng(-30.073030,-51.119642);
372
- map.addOverlay( criaPonto(point,24,'Campus da UFRGS Agronomia','Avenida Bento Goncalves','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
373
-
374
- // Criando ponto - plotanto ponto no mapa
375
- var point = new GLatLng(-30.076707,-51.122817);
376
- map.addOverlay( criaPonto(point,25,'Campus da UFRGS Veterin�ria','Avenida Bento Goncalves','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
377
-
378
- // Criando ponto - plotanto ponto no mapa
379
- var point = new GLatLng(-30.028993,-51.208562);
380
- map.addOverlay( criaPonto(point,26,'Avenida Independencia','Avenida Independencia','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
381
-
382
- // Criando ponto - plotanto ponto no mapa
383
- var point = new GLatLng(-30.038523,-51.203885);
384
- map.addOverlay( criaPonto(point,27,'Avenida Prot�sio Alves','Avenida Prot�sio Alves','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
385
-
386
- // Criando ponto - plotanto ponto no mapa
387
- var point = new GLatLng(-30.044355,-51.201395);
388
- map.addOverlay( criaPonto(point,28,'Zaffari Ipiranga','Avenida Ipiranga','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
389
-
390
- // Criando ponto - plotanto ponto no mapa
391
- var point = new GLatLng(-30.066122,-51.150197);
392
- map.addOverlay( criaPonto(point,29,'Terminal Antonio de Carvalho','Avenida Bento Goncalves','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
393
-
394
- // Criando ponto - plotanto ponto no mapa
395
- var point = new GLatLng(-30.025147,-51.162257);
396
- map.addOverlay( criaPonto(point,30,'Iguatemi Shopping','Avenida Jo�o Wallig','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
397
-
398
- // Criando ponto - plotanto ponto no mapa
399
- var point = new GLatLng(-30.028491,-51.200838);
400
- map.addOverlay( criaPonto(point,31,'Parc�o','Avenida Goethe','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
401
-
402
- // Criando ponto - plotanto ponto no mapa
403
- var point = new GLatLng(-30.025296,-51.200580);
404
- map.addOverlay( criaPonto(point,32,'Parc�o','Avenida Goethe','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
405
-
406
- // Criando ponto - plotanto ponto no mapa
407
- var point = new GLatLng(-30.047829,-51.221630);
408
- map.addOverlay( criaPonto(point,33,'Shopping Jo�o Pessoa','Avenida Ipiranga','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
409
-
410
- // Criando ponto - plotanto ponto no mapa
411
- var point = new GLatLng(-30.032875,-51.230063);
412
- map.addOverlay( criaPonto(point,34,'Pra�a da Matriz','Pra�a da Matriz','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
413
-
414
- // Criando ponto - plotanto ponto no mapa
415
- var point = new GLatLng(-30.037631,-51.231522);
416
- map.addOverlay( criaPonto(point,35,'Escola Parob�','Avenida Loureiro da Silva, 945','','12x0',23,'A','EO',12,6,0,50) );
417
-
418
- // Criando ponto - plotanto ponto no mapa
419
- var point = new GLatLng(-30.042786,-51.229044);
420
- map.addOverlay( criaPonto(point,36,'Regi�o dos Tribunais','Avenida Aureliano de Figueiredo Pinto','','12x0',23,'A','EO',12,5,0,41,67) );
421
-
422
- // Criando ponto - plotanto ponto no mapa
423
- var point = new GLatLng(-30.031724,-51.224184);
424
- map.addOverlay( criaPonto(point,37,'Casa Estudante Jo�o Pessoa','Avenida Jo�o Pessoa','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
425
-
426
- // Criando ponto - plotanto ponto no mapa
427
- var point = new GLatLng(-30.031687,-51.210858);
428
- map.addOverlay( criaPonto(point,38,'Avenida Vasco da Gama','Avenida Vasco da Gama','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
429
-
430
- // Criando ponto - plotanto ponto no mapa
431
- var point = new GLatLng(-30.036739,-51.186933);
432
- map.addOverlay( criaPonto(point,39,'Pra�a da Encol','Pra�a da Encol','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
433
-
434
- // Criando ponto - plotanto ponto no mapa
435
- var point = new GLatLng(-30.039998,-51.219214);
436
- map.addOverlay( criaPonto(point,40,'Shopping Olaria','Rua General Lima e Silva','','Mini-esta��o de demonstra��o',23,'I','BL',2,0,0,0) );
437
-
438
- }
439
- function criaPonto(ponto, idEstacao, nome, endereco, referencia, descTipo, codArea, statusOnline, statusOperacao, numBicicletas, vagasOcupadas, ocorrenciasAbertas, taxaOcupacao){
440
- var baseIcon = new GIcon();
441
- var strCaminho = ""; //"img/icone-estacoes.gif";
442
- var numeroEstacao = idEstacao;
443
- if(statusOperacao != "EO"){
444
- strCaminho = "img/icone-estacoes-cinza.gif";
445
- }else if((statusOperacao == "EO") && (statusOnline == "A")){
446
- strCaminho = "img/icone-estacoes.gif";
447
- if(vagasOcupadas == 0){
448
- strCaminho = "img/icone-estacoes-vazia.gif";
449
- }
450
- if(numBicicletas == vagasOcupadas){
451
- strCaminho = "img/icone-estacoes-cheia.gif";
452
- }
453
- }else if((statusOperacao == "EO") && (statusOnline == "I")){
454
- strCaminho = "img/icone-estacoes-desativado.gif";
455
- }
456
- baseIcon.image = strCaminho;
457
- baseIcon.iconSize = new GSize(25,25);
458
- baseIcon.shadow = "pushpin_shadow.png";
459
- baseIcon.shadowSize = new GSize(18, 18);
460
- baseIcon.iconAnchor = new GPoint(9, 34);
461
- baseIcon.infoWindowAnchor = new GPoint(9, 2);
462
- baseIcon.infoShadowAnchor = new GPoint(18, 25);
463
- if(idEstacao <= 9){
464
- numeroEstacao = "0".concat(idEstacao);
465
- }
466
-
467
- var icon = new GIcon(baseIcon);
468
- opts = {
469
- "icon": icon,
470
- "clickable": true,
471
- "labelText": numeroEstacao,
472
- "labelClass": "lblMarker",
473
- "labelOffset": new GSize(-2,-10)
474
- };
475
- // var marker = new GMarker(ponto, icon);
476
- var marker = new LabeledMarker(ponto, opts);
477
- markerGroups["estacao"].push(marker);
478
- //Processando 'status online'
479
- if (statusOnline == "A" && statusOperacao == "EO" ){
480
- statusOnline = "Ativa";
481
- } else {
482
- statusOnline = "Em manuten��o"; //"Inativa";
483
- }
484
- /*
485
- //Processando 'status opera��o'
486
- if (statusOperacao == "EO"){
487
- statusOperacao = "Em Opera��o";
488
- }
489
- else if (statusOperacao == "EM"){
490
- statusOperacao = "Em Manuten��o";
491
- }
492
- else if (statusOperacao == "BL"){
493
- statusOperacao = "Bloqueada";
494
- }
495
- */
496
- GEvent.addListener(marker, "click", function() {
497
- varTableHTML = "<table>";
498
- varTableHTML += "<tr>";
499
- varTableHTML += "<td align='left' valign='middle' width='30'>";
500
- varTableHTML += "<img src='"+strCaminho+"' />";
501
- varTableHTML += "</td>";
502
- varTableHTML += "<td align='left'>";
503
- varTableHTML += "<font face='arial' size='1'><b><br/>" + numeroEstacao + ". " + nome + "</b><br/><br/></font>";
504
- varTableHTML += "</td>";
505
- varTableHTML += "</tr>";
506
- varTableHTML += "<tr align='left'>"
507
- varTableHTML += "<td colspan='2'><font face='arial' size='1'>";
508
- varTableHTML += "Status: " + statusOnline;
509
- varTableHTML += "</td>";
510
- varTableHTML += "</tr>";
511
- /*
512
- varTableHTML += "<tr align='left'>"
513
- varTableHTML += "<td colspan='2'><font face='arial' size='2'>";
514
- varTableHTML += "Status da Opera��o: " + statusOperacao;
515
- varTableHTML += "</font></td>";
516
- varTableHTML += "</tr>";
517
- */
518
- varTableHTML += "<tr align='left'>"
519
- varTableHTML += "<td colspan='2'><font face='arial' size='1'>";
520
- varTableHTML += "Endereco: " + endereco;
521
- varTableHTML += "</font></td>";
522
- varTableHTML += "</tr>";
523
- varTableHTML += "<tr align='left'>"
524
- varTableHTML += "<td colspan='2'><font face='arial' size='1'>";
525
- varTableHTML += "Bicicletas dispon�veis: " + vagasOcupadas;
526
- varTableHTML += "</font></td>";
527
- varTableHTML += "</tr>";
528
- varTableHTML += "<tr align='left'>"
529
- varTableHTML += "<td colspan='2'><font face='arial' size='1'>";
530
- varTableHTML += "Vagas livres: " + (numBicicletas - vagasOcupadas);
531
- varTableHTML += "</font></td>";
532
- varTableHTML += "</tr>";
533
- varTableHTML += "</table><br/><br/>";
534
- marker.openInfoWindowHtml(varTableHTML);
535
- });
536
- return marker;
537
- }
538
- //]]>
539
- </script>
540
- <div id="map" style="z-index:1;width:750px;height:500px;font:18px Arial;color:#000000;"></div>
541
- <br />
542
- <script type="text/javascript">
543
- load();
544
- </script>
545
- </div>
546
- </div>
547
-
548
- <div id="rodape">
549
- <!-- In�cio do Rodap� -->
550
- <div class="rodapeNovo">
551
- <table height="100%" border="0" cellpadding="0" cellspacing="0">
552
- <tr>
553
- <td width="198" style="color:#666; font-size:11px; font-family:Arial;">
554
- <b>Atendimento ao Cliente</b><br />
555
- Call Center/ Centro de Informaci�n:<br />
556
- +55 (51) 4063 6299
557
- </td>
558
- <td width="157" align="center">
559
- <a href="http://www2.portoalegre.rs.gov.br/portal_pmpa_novo/" target="_blank">
560
- <img width="32" height="30" src="imgnovo/LOGO_EPTC.jpg" border="0">
561
- </a>
562
- </td>
563
- <td width="157" align="center">
564
- <a href="http://www2.portoalegre.rs.gov.br/portal_pmpa_novo/" target="_blank">
565
- <img width="45" height="42" src="imgnovo/prefeitura-poa.png" border="0">
566
- </a>
567
- </td>
568
- <td width="128" align="center"><a href="http://www.serttel.com.br/" target="_blank"><img width="36" height="32" src="imgnovo/serttel.png" border="0"></a></td>
569
- <td width="159" align="center"><a href="http://www.serttel.com.br/" target="_blank"><img width="42" height="33" src="imgnovo/logo-samba.png" border="0"></a></td>
570
- <td width="159" align="center"><a href="http://www.mobilicidade.com.br/" target="_blank"><img width="66" height="24" src="imgnovo/mobilicidade.png" border="0"></a></td>
571
- </tr>
572
- </table>
573
- </div>
574
- <!-- Fim do Rodap� -->
575
- </div></div>
576
- </body>
577
- </html></div>
578
- </body>
579
- </html>
1
+
2
+
3
+ <html>
4
+ <head>
5
+ <title>Mobilicidade - Portal da mobilidade urbana</title>
6
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
7
+ <link href="include.css" rel="stylesheet" type="text/css">
8
+ <link href="cssnovo/previsao.css" rel="stylesheet" type="text/css" />
9
+ <script type="text/javascript">
10
+ function exibirDivIdioma() {
11
+ document.getElementById('pt-BR').style.display = 'block';
12
+ }
13
+ function horizontal() {
14
+ var navItems = document.getElementById("menu_dropdown").getElementsByTagName("li");
15
+ for (var i=0; i< navItems.length; i++) {
16
+ if(navItems[i].className == "submenu")
17
+ {
18
+ if(navItems[i].getElementsByTagName('ul')[0] != null)
19
+ {
20
+ navItems[i].onmouseover=function() {this.getElementsByTagName('ul')[0].style.display="block";}
21
+ navItems[i].onmouseout=function() {this.getElementsByTagName('ul')[0].style.display="none";}
22
+ }
23
+ }
24
+ }
25
+
26
+ }
27
+ </script>
28
+ </head>
29
+ <body onload="horizontal();" topmargin="0" leftmargin="0">
30
+ <div id="geral">
31
+ <html>
32
+ <head>
33
+ <title>Mobilicidade - Portal da mobilidade urbana</title>
34
+ <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
35
+ <link href="include.css" rel="stylesheet" type="text/css">
36
+ <link href="cssnovo/previsao.css" rel="stylesheet" type="text/css" />
37
+ <script type="text/javascript">
38
+ function exibirDivIdioma() {
39
+ document.getElementById('pt-BR').style.display = 'block';
40
+ }
41
+ function horizontal() {
42
+ var navItems = document.getElementById("menu_dropdown").getElementsByTagName("li");
43
+ for (var i=0; i< navItems.length; i++) {
44
+ if(navItems[i].className == "submenu")
45
+ {
46
+ if(navItems[i].getElementsByTagName('ul')[0] != null)
47
+ {
48
+ navItems[i].onmouseover=function() {this.getElementsByTagName('ul')[0].style.display="block";}
49
+ navItems[i].onmouseout=function() {this.getElementsByTagName('ul')[0].style.display="none";}
50
+ }
51
+ }
52
+ }
53
+
54
+ }
55
+ </script>
56
+ </head>
57
+ <body onload="horizontal();" topmargin="0" leftmargin="0">
58
+ <div id="geral">
59
+ <script language="Javascript">
60
+ function checkFormLgn() {
61
+ if (frmLgn.txt_email.value == "") {
62
+ alert("Digite seu e-mail cadastrado!")
63
+ frmLgn.txt_email.focus()
64
+ return false
65
+ }
66
+ if (frmLgn.txt_password.value == "") {
67
+ alert("Digite sua senha!")
68
+ frmLgn.txt_password.focus()
69
+ return false
70
+ }
71
+ frmGid.redirFailure.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&msg=Login Inválido!<br>Você confirmou seu cadastro? Se não, clique no link enviar e-mail de confirmação abaixo!&redirpageMode=&email=" + frmGid.txt_email.value
72
+ }
73
+ function remindPass() {
74
+ if (frmLgn.txt_email.value == "") {
75
+ alert("Digite seu e-mail cadastrado!")
76
+ frmLgn.txt_email.focus()
77
+ } else {
78
+ //frmGid.redirSuccess.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&redirpageMode=&email=" + frmGid.txt_email.value + "&msg=sua senha foi enviada com sucesso para o e-mail ´" + frmGid.txt_email.value + "´"
79
+ //frmGid.redirFailure.value = "/bikepoa/globalIdLogin.asp?url=/bikepoa/home.asp&redirpageMode=&email=" + frmGid.txt_email.value + "&msg=não foi possível enviar a senha para o e-mail ´" + frmGid.txt_email.value + "´"
80
+ //frmGid.action = "/globalAsp/globalIdRemindPass.asp?email=" + frmGid.txt_email.value
81
+ //document.forms['frmGid'].submit()
82
+ frmLgn.redirSuccess.value = "home.asp"
83
+ document.forms['frmLgn'].submit()
84
+ }
85
+ }
86
+ function assinaturaHTTPS() {
87
+ self.parent.location.href = '/bikepoa/assinatura.asp';
88
+ }
89
+ </script>
90
+ <!-- INICIO | Banner Float -->
91
+ <!-- FIM | Banner Float-->
92
+ <div id="cabecalho" style="width: 770px;">
93
+ <!-- inicio logomarca twitter/facebook -->
94
+ <!--<div class="logoTwitter"><a href="http://twitter.com/#!/mobilicidade" target="_blank"><img src="imgnovo/twitter.png" alt="" border="0"/></a></div>
95
+ <div class="logoFacebook"><a href="http://www.facebook.com/pages/Mobilicidade/214556695227867" target="_blank"><img src="imgnovo/facebook.png" alt="" border="0"/></a></div>-->
96
+ <!-- fim logomarca twitter/facebook -->
97
+ <!-- inicio login -->
98
+ <div align="right" style="width: 770px;">
99
+
100
+ <form name="frmLgn" id="frmLgn" method="POST" onsubmit="return checkFormLgn()" action="/globalAsp/globalIdLogin_mobc2.asp">
101
+ <table cellpadding="1px" cellspacing="0" border="0">
102
+ <tr>
103
+ <td class="corLaranjaLink" valign="middle">
104
+ <a href="https://ww2.mobilicidade.com.br/bikepoa/globalidcadastro.asp">
105
+ Cadastre-se •</a>
106
+ </td>
107
+ <td class="corLaranja" valign="middle">
108
+ E-mail
109
+ </td>
110
+ <td valign="middle">
111
+ <input class="campoLoginNovo" type="text" name="txt_email" id="txt_email" value=""
112
+ size="10" maxlength="50" />
113
+ </td>
114
+ <td class="corLaranja" valign="middle">
115
+ Senha
116
+ </td>
117
+ <td valign="middle">
118
+ <input class="campoLoginNovo" type="password" name="txt_password" id="txt_password"
119
+ size="10" maxlength="16" />
120
+ </td>
121
+ <td valign="middle">
122
+ <input type="image" name="imageField" src="imgnovo/ok.png" />
123
+ </td>
124
+ <td class="corLaranjaLink" valign="middle">
125
+ <a href="/bikepoa/globalIdLogin.asp">
126
+ Esqueci a senha</a>
127
+ </td>
128
+ </tr>
129
+ </table>
130
+ <input type="hidden" name="redirPageMode" value="">
131
+ <input type="hidden" name="redirSuccess" id="redirSuccess" value="/bikepoa/home.asp">
132
+ <input type="hidden" name="redirFailure" id="redirFailure" value="/bikepoa/globalIdLogin.asp?msg=Login Inválido!<br>Você confirmou seu cadastro? Se não, clique no link enviar e-mail de confirmação abaixo!&url=/bikepoa/home.asp">
133
+ <input type="hidden" name="siteId" value="mobilicidade">
134
+ </form>
135
+
136
+ </div>
137
+ <!-- fim login -->
138
+ <!-- inicio logomarca pelario/itau -->
139
+ <table cellpadding="0" cellspacing="0" border="0">
140
+ <tr>
141
+ <td>
142
+ <div class="logomarca">
143
+ <!--<div class="logoItau">-->
144
+ <div style="height:76px;width:76px;position:relative;left: 263px;top:20px;float:left;">
145
+ <!---->
146
+ </div>
147
+ <!--<div style="position:relative; right: 10px; top:5px;float:right;">
148
+ <a href="/bikepoa/idioma.asp?idioma_site=pt"><img src="imgnovo/brazil.png" style="height:24px; width:24px;" alt="" border="0" /></a>
149
+ <a href="/bikepoa/idioma.asp?idioma_site=en"><img src="imgnovo/eua.png" style="height:24px; width:24px;" alt="" border="0" /></a>
150
+ </div>-->
151
+ </div>
152
+ </td>
153
+ </tr>
154
+ </table>
155
+ <!-- fim logomarca pelario/itau -->
156
+ <!-- inicio menu -->
157
+ <div class="menuzae">
158
+ <div id="divtwitter" style="position: absolute; display: block; height: 17px; width: 17px;
159
+ left: 728px; top: 3px;">
160
+ <a href="http://www.twitter.com/mobilicidade" target="_blank">
161
+ <img src="imgnovo/twitter.png" alt="" border="0" width="17px" height="17px" />
162
+ </a>
163
+ </div>
164
+ <div id="divfacebook" style="position: absolute; display: block; height: 17px; width: 17px;
165
+ left: 748px; top: 3px;">
166
+ <a href="http://www.facebook.com/mobilicidade" target="_blank">
167
+ <img src="imgnovo/facebook-logo.png" alt="" border="0" width="17px" height="17px" />
168
+ </a>
169
+ </div>
170
+ <ul id="menu_dropdown" class="menubar">
171
+ <li class="submenu"><a href="/bikepoa/home.asp">Home</a></li>
172
+ <li class="submenu"><a href="#">Passe</a>
173
+ <ul class="menu">
174
+ <li><a href="https://ww2.mobilicidade.com.br/bikepoa/assinatura.asp" target="_parent">Comprar Passe</a></li>
175
+ </ul>
176
+ </li>
177
+ <li class="submenu"><a href="#">Extrato</a>
178
+ <ul class="menu">
179
+ <li><a href="/bikepoa/ordershistory.asp">Compras</a></li>
180
+ <li><a href="/bikepoa/gridmovimento.asp">Movimentação</a></li>
181
+ <!--<li><a href="#">Cancelar Passe</a></li>-->
182
+ </ul>
183
+ </li>
184
+ <li class="submenu"><a href="#">Informações</a>
185
+ <ul class="menu">
186
+ <li><a href="/bikepoa/sobre.asp">Sobre</a></li>
187
+ <li><a href="/bikepoa/comoutilizar.asp">Como Utilizar</a></li>
188
+ <li><a href="/bikepoa/duvidas.asp">Dúvidas</a></li>
189
+ <li><a href="/bikepoa/mapaestacao.asp">Localização Estações</a></li>
190
+ <li><a href="javascript:window.open('/bikepoa/contratoprint.asp','Imprimir','width=740,heigth=300,scrollbars=yes'); void(0)">Termo de Adesão e Uso</a></li>
191
+ </ul>
192
+ </li>
193
+ <li class="submenu"><a href="/bikepoa/faleconosco.asp">
194
+ Fale conosco</a></a></li>
195
+ </ul>
196
+ </div>
197
+ <!-- fim menu -->
198
+ </div>
199
+
200
+ <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&sensor=false"></script>
201
+ <script type="text/javascript" src="js/markerwithlabel.js"></script>
202
+ <style>
203
+ html, body {
204
+ height: 100%;
205
+ }
206
+ #map-canvas, #map_canvas {
207
+ width : 750px;
208
+ height: 500px;
209
+ }
210
+ .labelMapa{
211
+ font-family:Arial;
212
+ font-size:12px;
213
+ font-weight:bold;
214
+ }
215
+ </style>
216
+ <script>
217
+ var map;
218
+ var infowindowEstacaoArray = [];
219
+ var pathKML = ""; // utilizar url caso queira mapa tipo KLM
220
+ var arrayEstacao = [];
221
+ var arrayPontoTuristico = [];
222
+ // inicializa mapa com um ponto central
223
+ function initialize() {
224
+ var pontoCentral = new google.maps.LatLng(-30.027674,-51.228053); //(-8.06264, -34.872783);
225
+ var myOptions = {
226
+ zoom: 13,
227
+ center: pontoCentral,
228
+ mapTypeId: google.maps.MapTypeId.ROADMAP
229
+ }
230
+ // exibe mapa
231
+ map = new google.maps.Map(document.getElementById("map-canvas"), myOptions);
232
+ // exibe rota baseada em arquivo KML
233
+ if(pathKML != ""){
234
+ var ctaLayer = new google.maps.KmlLayer(pathKML);
235
+ ctaLayer.setMap(map);
236
+ }
237
+
238
+ // Criando ponto - plotanto ponto no mapa
239
+ exibirEstacaMapa("-30.028658",
240
+ "-51.226791",
241
+ "img/icone-estacoes.gif",
242
+ "Mercado",
243
+ "1",
244
+ "A",
245
+ "EO",
246
+ "4",
247
+ "12",
248
+ "Rua Marechal Floriano, 66, entre a Rua Voluntários da Pátria e a Avenida Otávio Rocha");
249
+
250
+ // Criando ponto - plotanto ponto no mapa
251
+ exibirEstacaMapa("-30.029262",
252
+ "-51.231908",
253
+ "img/icone-estacoes.gif",
254
+ "Praça da Alfândega",
255
+ "2",
256
+ "A",
257
+ "EO",
258
+ "2",
259
+ "8",
260
+ "Rua Capitão Montanha, Esquina com a Rua Siqueira Campos");
261
+
262
+ // Criando ponto - plotanto ponto no mapa
263
+ exibirEstacaMapa("-30.030772",
264
+ "-51.234886",
265
+ "img/icone-estacoes.gif",
266
+ "Casa de Cultura Mario Quintana",
267
+ "3",
268
+ "A",
269
+ "EO",
270
+ "3",
271
+ "12",
272
+ "Rua 7 de Setembro, 539");
273
+
274
+ // Criando ponto - plotanto ponto no mapa
275
+ exibirEstacaMapa("-30.034920",
276
+ "-51.241060",
277
+ "img/icone-estacoes.gif",
278
+ "Usina do Gasômetro",
279
+ "4",
280
+ "A",
281
+ "EO",
282
+ "4",
283
+ "12",
284
+ "Avenida Presidente João Goulart, 551");
285
+
286
+ // Criando ponto - plotanto ponto no mapa
287
+ exibirEstacaMapa("-30.037492",
288
+ "-51.237230",
289
+ "img/icone-estacoes.gif",
290
+ "Câmara de Vereadores",
291
+ "5",
292
+ "A",
293
+ "EO",
294
+ "2",
295
+ "9",
296
+ "Rua Ibanor José Tartarotti (ao lado do portao da Camara municipal)");
297
+
298
+ // Criando ponto - plotanto ponto no mapa
299
+ exibirEstacaMapa("-30.038430",
300
+ "-51.225814",
301
+ "img/icone-estacoes.gif",
302
+ "Largo Zumbi",
303
+ "6",
304
+ "A",
305
+ "EO",
306
+ "5",
307
+ "14",
308
+ "Travessa do Carmo, 76");
309
+
310
+ // Criando ponto - plotanto ponto no mapa
311
+ exibirEstacaMapa("-30.038003",
312
+ "-51.213755",
313
+ "img/icone-estacoes.gif",
314
+ "Redenção Araújo Viana",
315
+ "7",
316
+ "I",
317
+ "BL",
318
+ "0",
319
+ "2",
320
+ "Parque Farroupilha");
321
+
322
+ // Criando ponto - plotanto ponto no mapa
323
+ exibirEstacaMapa("-30.034891",
324
+ "-51.217778",
325
+ "img/icone-estacoes.gif",
326
+ "Redenção UFRGS",
327
+ "8",
328
+ "A",
329
+ "EO",
330
+ "10",
331
+ "14",
332
+ "Parque Farroupilha");
333
+
334
+ // Criando ponto - plotanto ponto no mapa
335
+ exibirEstacaMapa("-30.035848",
336
+ "-51.224827",
337
+ "img/icone-estacoes.gif",
338
+ "Redenção Brique",
339
+ "9",
340
+ "I",
341
+ "BL",
342
+ "0",
343
+ "2",
344
+ "Avenida Loureiro da Silva");
345
+
346
+ // Criando ponto - plotanto ponto no mapa
347
+ exibirEstacaMapa("-30.036095",
348
+ "-51.211035",
349
+ "img/icone-estacoes.gif",
350
+ "Redenção Mercadinho",
351
+ "10",
352
+ "A",
353
+ "EO",
354
+ "8",
355
+ "12",
356
+ "Estacionamento Área Azul Protásio Alves");
357
+
358
+ // Criando ponto - plotanto ponto no mapa
359
+ exibirEstacaMapa("-30.045358",
360
+ "-51.219549",
361
+ "img/icone-estacoes.gif",
362
+ "Ginásio Tesourinha",
363
+ "11",
364
+ "A",
365
+ "EO",
366
+ "5",
367
+ "12",
368
+ "Avenida Érico Veríssimo");
369
+
370
+ // Criando ponto - plotanto ponto no mapa
371
+ exibirEstacaMapa("-30.048256",
372
+ "-51.228947",
373
+ "img/icone-estacoes.gif",
374
+ "Shopping Praia de Belas",
375
+ "12",
376
+ "A",
377
+ "EO",
378
+ "8",
379
+ "10",
380
+ "Avenida Borges de Medeiros");
381
+
382
+ // Criando ponto - plotanto ponto no mapa
383
+ exibirEstacaMapa("-30.039505",
384
+ "-51.207995",
385
+ "img/icone-estacoes.gif",
386
+ "Hospital de Clínicas",
387
+ "13",
388
+ "A",
389
+ "EO",
390
+ "4",
391
+ "14",
392
+ "Av. Jerônimo de Ornelas, 2350");
393
+
394
+ // Criando ponto - plotanto ponto no mapa
395
+ exibirEstacaMapa("-30.044002",
396
+ "-51.207693",
397
+ "img/icone-estacoes.gif",
398
+ "Planetário",
399
+ "14",
400
+ "A",
401
+ "EO",
402
+ "3",
403
+ "12",
404
+ "Avenida Ipiranga");
405
+
406
+ // Criando ponto - plotanto ponto no mapa
407
+ exibirEstacaMapa("-30.041894",
408
+ "-51.220922",
409
+ "img/icone-estacoes.gif",
410
+ "Opinião",
411
+ "15",
412
+ "A",
413
+ "EO",
414
+ "5",
415
+ "12",
416
+ "Esquina Joaquim Nabuco com José do Patrocínio");
417
+
418
+ // Criando ponto - plotanto ponto no mapa
419
+ exibirEstacaMapa("-30.051859",
420
+ "-51.224441",
421
+ "img/icone-estacoes.gif",
422
+ "Menino Deus - Zaffari Getúlio",
423
+ "16",
424
+ "I",
425
+ "BL",
426
+ "0",
427
+ "2",
428
+ "Avenida Getúlio Vargas");
429
+
430
+ // Criando ponto - plotanto ponto no mapa
431
+ exibirEstacaMapa("-30.059685",
432
+ "-51.230815",
433
+ "img/icone-estacoes.gif",
434
+ "Menino Deus",
435
+ "17",
436
+ "A",
437
+ "EO",
438
+ "9",
439
+ "14",
440
+ "Avenida José de Alencar");
441
+
442
+ // Criando ponto - plotanto ponto no mapa
443
+ exibirEstacaMapa("-30.050205",
444
+ "-51.209545",
445
+ "img/icone-estacoes.gif",
446
+ "Terminal Azenha",
447
+ "18",
448
+ "A",
449
+ "EO",
450
+ "1",
451
+ "12",
452
+ "Avenida João Pessoa");
453
+
454
+ // Criando ponto - plotanto ponto no mapa
455
+ exibirEstacaMapa("-30.077197",
456
+ "-51.244973",
457
+ "img/icone-estacoes.gif",
458
+ "Iberê",
459
+ "19",
460
+ "A",
461
+ "EO",
462
+ "0",
463
+ "12",
464
+ "Avenida Padre Cacique");
465
+
466
+ // Criando ponto - plotanto ponto no mapa
467
+ exibirEstacaMapa("-30.097501",
468
+ "-51.248302",
469
+ "img/icone-estacoes.gif",
470
+ "Diário de Notícias",
471
+ "20",
472
+ "A",
473
+ "EO",
474
+ "7",
475
+ "12",
476
+ "Cruzamento Av. Diário de Notícias com Av. Icaraí");
477
+
478
+ // Criando ponto - plotanto ponto no mapa
479
+ exibirEstacaMapa("-30.056131",
480
+ "-51.173844",
481
+ "img/icone-estacoes.gif",
482
+ "Complexo PUC",
483
+ "21",
484
+ "I",
485
+ "BL",
486
+ "0",
487
+ "2",
488
+ "Avenida Ipiranga");
489
+
490
+ // Criando ponto - plotanto ponto no mapa
491
+ exibirEstacaMapa("-30.060726",
492
+ "-51.220630",
493
+ "img/icone-estacoes.gif",
494
+ "Nacional",
495
+ "22",
496
+ "A",
497
+ "EO",
498
+ "5",
499
+ "10",
500
+ "Rua José de Alencar, nº 1068");
501
+
502
+ // Criando ponto - plotanto ponto no mapa
503
+ exibirEstacaMapa("-30.033953",
504
+ "-51.221394",
505
+ "img/icone-estacoes.gif",
506
+ "Campus da UFRGS",
507
+ "23",
508
+ "I",
509
+ "BL",
510
+ "0",
511
+ "2",
512
+ "Parque Farroupilha");
513
+
514
+ // Criando ponto - plotanto ponto no mapa
515
+ exibirEstacaMapa("-30.073030",
516
+ "-51.119642",
517
+ "img/icone-estacoes.gif",
518
+ "Campus da UFRGS Agronomia",
519
+ "24",
520
+ "I",
521
+ "BL",
522
+ "0",
523
+ "2",
524
+ "Avenida Bento Gonçalves");
525
+
526
+ // Criando ponto - plotanto ponto no mapa
527
+ exibirEstacaMapa("-30.076707",
528
+ "-51.122817",
529
+ "img/icone-estacoes.gif",
530
+ "Campus da UFRGS Veterinária",
531
+ "25",
532
+ "I",
533
+ "BL",
534
+ "0",
535
+ "2",
536
+ "Avenida Bento Gonçalves");
537
+
538
+ // Criando ponto - plotanto ponto no mapa
539
+ exibirEstacaMapa("-30.028993",
540
+ "-51.208562",
541
+ "img/icone-estacoes.gif",
542
+ "Avenida Independência",
543
+ "26",
544
+ "I",
545
+ "BL",
546
+ "0",
547
+ "2",
548
+ "Avenida Independência");
549
+
550
+ // Criando ponto - plotanto ponto no mapa
551
+ exibirEstacaMapa("-30.038523",
552
+ "-51.203885",
553
+ "img/icone-estacoes.gif",
554
+ "Avenida Protásio Alves",
555
+ "27",
556
+ "I",
557
+ "BL",
558
+ "0",
559
+ "2",
560
+ "Avenida Protásio Alves");
561
+
562
+ // Criando ponto - plotanto ponto no mapa
563
+ exibirEstacaMapa("-30.043444",
564
+ "-51.199856",
565
+ "img/icone-estacoes.gif",
566
+ "Zaffari Ipiranga",
567
+ "28",
568
+ "A",
569
+ "EO",
570
+ "3",
571
+ "12",
572
+ "Avenida Ipiranga");
573
+
574
+ // Criando ponto - plotanto ponto no mapa
575
+ exibirEstacaMapa("-30.066122",
576
+ "-51.150197",
577
+ "img/icone-estacoes.gif",
578
+ "Terminal Antônio de Carvalho",
579
+ "29",
580
+ "I",
581
+ "BL",
582
+ "0",
583
+ "2",
584
+ "Avenida Bento Gonçalves");
585
+
586
+ // Criando ponto - plotanto ponto no mapa
587
+ exibirEstacaMapa("-30.025147",
588
+ "-51.162257",
589
+ "img/icone-estacoes.gif",
590
+ "Iguatemi Shopping",
591
+ "30",
592
+ "I",
593
+ "BL",
594
+ "0",
595
+ "2",
596
+ "Avenida João Wallig");
597
+
598
+ // Criando ponto - plotanto ponto no mapa
599
+ exibirEstacaMapa("-30.028491",
600
+ "-51.200838",
601
+ "img/icone-estacoes.gif",
602
+ "Parcão",
603
+ "31",
604
+ "I",
605
+ "BL",
606
+ "0",
607
+ "2",
608
+ "Avenida Goethe");
609
+
610
+ // Criando ponto - plotanto ponto no mapa
611
+ exibirEstacaMapa("-30.025296",
612
+ "-51.200580",
613
+ "img/icone-estacoes.gif",
614
+ "Parcão",
615
+ "32",
616
+ "I",
617
+ "BL",
618
+ "0",
619
+ "2",
620
+ "Avenida Goethe");
621
+
622
+ // Criando ponto - plotanto ponto no mapa
623
+ exibirEstacaMapa("-30.047829",
624
+ "-51.221630",
625
+ "img/icone-estacoes.gif",
626
+ "Shopping João Pessoa",
627
+ "33",
628
+ "I",
629
+ "BL",
630
+ "0",
631
+ "2",
632
+ "Avenida Ipiranga");
633
+
634
+ // Criando ponto - plotanto ponto no mapa
635
+ exibirEstacaMapa("-30.083220",
636
+ "-51.247395",
637
+ "img/icone-estacoes.gif",
638
+ "Barra Shopping",
639
+ "34",
640
+ "A",
641
+ "EO",
642
+ "6",
643
+ "14",
644
+ "Avenida Diario de Noticias");
645
+
646
+ // Criando ponto - plotanto ponto no mapa
647
+ exibirEstacaMapa("-30.037631",
648
+ "-51.231522",
649
+ "img/icone-estacoes.gif",
650
+ "Escola Parobé",
651
+ "35",
652
+ "A",
653
+ "EO",
654
+ "10",
655
+ "12",
656
+ "Avenida Loureiro da Silva, 945");
657
+
658
+ // Criando ponto - plotanto ponto no mapa
659
+ exibirEstacaMapa("-30.042786",
660
+ "-51.229044",
661
+ "img/icone-estacoes.gif",
662
+ "Região dos Tribunais",
663
+ "36",
664
+ "A",
665
+ "EO",
666
+ "5",
667
+ "12",
668
+ "Avenida Aureliano de Figueiredo Pinto");
669
+
670
+ // Criando ponto - plotanto ponto no mapa
671
+ exibirEstacaMapa("-30.032597",
672
+ "-51.223433",
673
+ "img/icone-estacoes.gif",
674
+ "Casa do Estudante",
675
+ "37",
676
+ "A",
677
+ "EO",
678
+ "7",
679
+ "12",
680
+ "Avenida Desembargador Andre da Rocha");
681
+
682
+ // Criando ponto - plotanto ponto no mapa
683
+ exibirEstacaMapa("-30.031687",
684
+ "-51.210858",
685
+ "img/icone-estacoes.gif",
686
+ "Avenida Vasco da Gama",
687
+ "38",
688
+ "I",
689
+ "BL",
690
+ "0",
691
+ "2",
692
+ "Avenida Vasco da Gama");
693
+
694
+ // Criando ponto - plotanto ponto no mapa
695
+ exibirEstacaMapa("-30.036739",
696
+ "-51.186933",
697
+ "img/icone-estacoes.gif",
698
+ "Praça da Encol",
699
+ "39",
700
+ "I",
701
+ "BL",
702
+ "0",
703
+ "2",
704
+ "Praça da Encol");
705
+
706
+ // Criando ponto - plotanto ponto no mapa
707
+ exibirEstacaMapa("-30.039998",
708
+ "-51.219214",
709
+ "img/icone-estacoes.gif",
710
+ "Shopping Olaria",
711
+ "40",
712
+ "I",
713
+ "BL",
714
+ "0",
715
+ "2",
716
+ "Rua General Lima e Silva");
717
+
718
+ }
719
+ // funcao responsavel por plotar as estacoes
720
+ function exibirEstacaMapa(latitude, longitude, icone, Nome, IdEstacao, StatusOnline, StatusOperacao, VagasOcupadas, numBicicletas, Endereco) {
721
+ var myLatlng = new google.maps.LatLng(latitude, longitude);
722
+ var strCaminho = "";
723
+ var varTableHTML = "";
724
+ var myOptions = {
725
+ center : myLatlng,
726
+ mapTypeId: google.maps.MapTypeId.ROADMAP
727
+ }
728
+ // recupera icone do mapa
729
+ if((StatusOperacao == "EO") && (StatusOnline == "A")){
730
+ strCaminho = "img/icone-estacoes.gif";
731
+ if(VagasOcupadas == 0){
732
+ strCaminho = "img/icone-estacoes-vazia.gif";
733
+ }
734
+ if(numBicicletas == VagasOcupadas){
735
+ strCaminho = "img/icone-estacoes-cheia.gif";
736
+ }
737
+ }else if( ((StatusOperacao == "EI") && (StatusOnline == "A")) || ((StatusOperacao == "EI") && (StatusOnline == "I"))){
738
+ strCaminho = "img/icone-estacoes-cinza.gif";
739
+ }else{
740
+ strCaminho = "img/icone-estacoes-desativado.gif";
741
+ }
742
+ // formata informacao concatenando com zero ex.: 01,02... 09, 10
743
+ if(IdEstacao <= 9){
744
+ IdEstacao = "0".concat(IdEstacao);
745
+ }
746
+ // configura icone
747
+ var imageIcone = {
748
+ url : strCaminho,
749
+ size : new google.maps.Size(33,33),
750
+ origin : new google.maps.Point(0,0),
751
+ anchor : new google.maps.Point(20,34),
752
+ scaledSize: new google.maps.Size(33,33)
753
+ };
754
+ // configurar label
755
+ var marker = new MarkerWithLabel({
756
+ position : myLatlng,
757
+ map : map,
758
+ icon : imageIcone,
759
+ labelContent: IdEstacao,
760
+ labelAnchor : new google.maps.Point(10, 0),
761
+ labelStyle : { opacity: 0.75 },
762
+ labelClass : "labelMapa"
763
+ });
764
+ // armazena pontos
765
+ arrayEstacao.push(marker);
766
+ //Processando 'status online'
767
+ if(StatusOperacao == "EI"){
768
+ StatusOnline = "Em Implantação";
769
+ }else{
770
+ if (StatusOnline == "A" && StatusOperacao == "EO" ){
771
+ StatusOnline = "Estações em Operação";
772
+ } else {
773
+ StatusOnline = "Estações em Manutenção / Bloqueada";
774
+ }
775
+ }
776
+ // montar informacao
777
+ varTableHTML = "<table><tr>";
778
+ varTableHTML += "<td align='left' valign='middle' width='30'><img src='" + strCaminho + "' /></td>";
779
+ varTableHTML += "<td align='left'><font face='arial' size='1'><b><br/>" + IdEstacao + ". " + Nome + "</b><br/><br/></font></td>";
780
+ varTableHTML += "</tr>";
781
+ varTableHTML += "<tr align='left'>"
782
+ varTableHTML += "<td colspan='2'><font face='arial' size='1'><b>Status:</b> " + StatusOnline + "</td>";
783
+ varTableHTML += "</tr>";
784
+ varTableHTML += "<tr align='left'>"
785
+ varTableHTML += "<td colspan='2'><font face='arial' size='1'><b>Endereco:</b> " + Endereco + "</font></td>";
786
+ varTableHTML += "</tr>";
787
+ varTableHTML += "<tr align='left'>"
788
+ varTableHTML += "<td colspan='2'><font face='arial' size='1'><b>Bicicletas disponíveis:</b> " + VagasOcupadas + "</font></td>";
789
+ varTableHTML += "</tr>";
790
+ varTableHTML += "<tr align='left'>"
791
+ varTableHTML += "<td colspan='2'><font face='arial' size='1'><b>Vagas livres:</b> " + (numBicicletas - VagasOcupadas) + "</font></td>";
792
+ varTableHTML += "</tr></table><br/><br/>";
793
+ //Mensagem do maptip
794
+ var infowindow = new google.maps.InfoWindow({
795
+ content: varTableHTML//,
796
+ //maxWidth: 100
797
+ });
798
+ // armazena informacoes no array
799
+ infowindowEstacaoArray.push(infowindow);
800
+ //Adiciona evento de click na marca
801
+ google.maps.event.addListener(marker, 'click', function () {
802
+ // fechar todos os baloes
803
+ for (i in infowindowEstacaoArray) {
804
+ infowindowEstacaoArray[i].close();
805
+ }
806
+ infowindow.open(map, marker);
807
+ });
808
+ }
809
+ </script>
810
+ <div id="total">
811
+ <div style="padding-left:10px;">
812
+ <br />
813
+ <font class="textoGeralNovo" style="color:#6baf46; font-size:18px;" ><b>Mapa das Estações</b></font>
814
+ <br /><br />
815
+ <font class="textoGeralNovo" font-size:14px;" ><b>Legenda:</b></font>
816
+ <br />
817
+ <table cellpadding="0" cellspacing="0" border="0">
818
+ <tr>
819
+ <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-cinza.gif" width="26" height="26" alt="" /></td>
820
+ <td>&nbsp;<font class="textoGeralNovo" font-size:14px;"> Estações em Implantação</font></td>
821
+ <td>&nbsp;<img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes.gif" width="26" height="26" alt="" /></td>
822
+ <td>&nbsp;<font class="textoGeralNovo" font-size:14px;"> Estações em Operação</font></td>
823
+ </tr>
824
+ <tr>
825
+ <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-desativado.gif" width="26" height="26" alt="" /></td>
826
+ <td>&nbsp;<font class="textoGeralNovo" font-size:14px;"> Estações em Manutenção / Bloqueada</font></td>
827
+ <td>&nbsp;<img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-vazia.gif" width="26" height="26" alt="" /></td>
828
+ <td>&nbsp;<font class="textoGeralNovo" font-size:14px;"> Nenhuma bicicleta disponível</font>
829
+ </tr>
830
+ <tr>
831
+ <td><img src="http://ww2.mobilicidade.com.br/bikepoa/img/icone-estacoes-cheia.gif" width="26" height="26" alt="" /></td>
832
+ <td>&nbsp;<font class="textoGeralNovo" font-size:14px;"> Todas as vagas ocupadas</font>
833
+ <td>&nbsp;</td>
834
+ <td>&nbsp;</td>
835
+ </td>
836
+ </table>
837
+ <br/>
838
+ <!-- div mapa -->
839
+ <div id="map-canvas"></div>
840
+ </div>
841
+ </div>
842
+ <script type="text/javascript">initialize();</script>
843
+
844
+ <div id="rodape">
845
+ <!-- Início do Rodapé -->
846
+ <div class="rodapeNovo">
847
+ <table height="100%" border="0" cellpadding="0" cellspacing="0">
848
+ <tr>
849
+ <td width="198" style="color:#666; font-size:11px; font-family:Arial;">
850
+ <b>Atendimento ao Cliente</b><br />
851
+ Call Center/ Centro de Información:<br />
852
+ +55 (51) 4063 6299
853
+ </td>
854
+ <td width="157" align="center">
855
+ <a href="http://www2.portoalegre.rs.gov.br/portal_pmpa_novo/" target="_blank">
856
+ <img width="32" height="43" src="imgnovo/LOGO_EPTC.jpg" border="0">
857
+ </a>
858
+ </td>
859
+ <td width="157" align="center">
860
+ <a href="http://www2.portoalegre.rs.gov.br/portal_pmpa_novo/" target="_blank">
861
+ <img width="60" height="28" src="imgnovo/prefeitura-poa.png" border="0">
862
+ </a>
863
+ </td>
864
+ <td width="128" align="center"><a href="http://www.serttel.com.br/" target="_blank"><img width="36" height="32" src="imgnovo/serttel.png" border="0"></a></td>
865
+ <td width="159" align="center"><a href="http://www.serttel.com.br/" target="_blank"><img width="42" height="33" src="imgnovo/logo-samba.png" border="0"></a></td>
866
+ <td width="159" align="center"><a href="http://www.mobilicidade.com.br/" target="_blank"><img width="66" height="24" src="imgnovo/mobilicidade.png" border="0"></a></td>
867
+ </tr>
868
+ </table>
869
+ </div>
870
+ <!-- Fim do Rodapé -->
871
+ </div></div>
872
+ </body>
873
+ </html></div>
874
+ </body>
875
+ </html>