bikepoa-tools 0.3.1 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -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>