service.py

changeset 21
6a0394d5a159
parent 20
3199e289ae62
child 22
3d094a804af8
equal deleted inserted replaced
20:3199e289ae62 21:6a0394d5a159
59 def sign(schedule_entry): 59 def sign(schedule_entry):
60 from math import ceil 60 from math import ceil
61 sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop'])) 61 sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop']))
62 sign = [tr(paikka, 'paikat') for paikka in sign] 62 sign = [tr(paikka, 'paikat') for paikka in sign]
63 sign_representation = ' - '.join(sign) 63 sign_representation = ' - '.join(sign)
64 if len(sign_representation) > 25: 64 #if len(sign_representation) > 25:
65 k = ceil(len(sign) / 2) 65 # k = ceil(len(sign) / 2)
66 sign_representation = ' - '.join(sign[:k]) + '\n' + ' - '.join(sign[k:]) 66 # sign_representation = ' - '.join(sign[:k]) + '\n' + ' - '.join(sign[k:])
67 return sign_representation 67 return sign_representation
68 68
69 @app.route('/pysäkki/<tunniste>') 69 @app.route('/pysäkki/<tunniste>')
70 def pysäkkiaikataulu(tunniste): 70 def pysäkkiaikataulu(tunniste):
71 from buses import pysäkit 71 from buses import pysäkit
87 aikataulu = aikataulu, 87 aikataulu = aikataulu,
88 nimi = tunniste + ' ' + tr(pysäkki.nimi, 'pysäkit'), 88 nimi = tunniste + ' ' + tr(pysäkki.nimi, 'pysäkit'),
89 linkki_karttaan = pysäkki.sijainti.link_to_map, 89 linkki_karttaan = pysäkki.sijainti.link_to_map,
90 alue = pysäkki.alue, 90 alue = pysäkki.alue,
91 sijainti = pysäkki.sijainti, 91 sijainti = pysäkki.sijainti,
92 cluster = pysäkki.cluster.name if len(pysäkki.cluster.stops) > 1 else None, 92 cluster = pysäkki.cluster.url_name if len(pysäkki.cluster.stops) > 1 else None,
93 tr = tr, 93 tr = tr,
94 ) 94 )
95 95
96 def time_representation(aika, suhteellinen = True): 96 def time_representation(aika, suhteellinen = True):
97 erotus = aika - nyt() 97 erotus = aika - nyt()
98 if suhteellinen and erotus < timedelta(minutes = 1): 98 if suhteellinen and erotus > timedelta(0) and erotus < timedelta(minutes = 1):
99 return tr('right-now', 'misc-text') 99 return tr('right-now', 'misc-text')
100 elif suhteellinen and erotus < timedelta(minutes = 10): 100 elif suhteellinen and erotus > timedelta(0) and erotus < timedelta(minutes = 10):
101 return '%dm' % round(erotus.seconds / 60) 101 return '%dm' % round(erotus.seconds / 60)
102 elif aika.date() == tänään(): 102 elif aika.date() == tänään():
103 return '%d:%02d' % (aika.hour, aika.minute) 103 return '%d:%02d' % (aika.hour, aika.minute)
104 elif erotus < timedelta(7): 104 elif erotus < timedelta(7):
105 with activate_locale(): 105 with activate_locale():
127 'stop_name': tr(schedule_entry['stop'].pysäkki.nimi, 'pysäkit'), 127 'stop_name': tr(schedule_entry['stop'].pysäkki.nimi, 'pysäkit'),
128 }) 128 })
129 return render_template( 129 return render_template(
130 'cluster.html', 130 'cluster.html',
131 aikataulu = aikataulu, 131 aikataulu = aikataulu,
132 nimi = 'Yhdistetty pysäkkiaikataulu ' + cluster_name, 132 nimi = cluster.name,
133 linkki_karttaan = cluster.center.link_to_map, 133 linkki_karttaan = cluster.center.link_to_map,
134 sijainti = cluster.center, 134 sijainti = cluster.center,
135 stops_in_cluster = sorted( 135 stops_in_cluster = sorted(
136 ({ 136 ({
137 'id': stop.tunniste, 137 'id': stop.tunniste,
166 alue = pysähdys.pysäkki.alue 166 alue = pysähdys.pysäkki.alue
167 if alue: 167 if alue:
168 if alue not in käydyt_alueet: 168 if alue not in käydyt_alueet:
169 suppea_reitti.append({ 169 suppea_reitti.append({
170 'aika': muotoiltu_aika, 170 'aika': muotoiltu_aika,
171 'alue': alue, 171 'alue': tr(alue or '', 'paikat'),
172 }) 172 })
173 käydyt_alueet.add(alue) 173 käydyt_alueet.add(alue)
174 kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True) 174 kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True)
175 kyltti = [kyltti[0], kyltti[-1]]
175 sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html' 176 sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html'
176 return render_template(sivu, 177 return render_template(sivu,
177 reitti = reitti, 178 reitti = reitti,
178 suppea_reitti = suppea_reitti, 179 suppea_reitti = suppea_reitti,
179 numero = numero, 180 numero = numero,

mercurial