service.py

changeset 18
1c8ff93fbfac
parent 17
fa3c822859b5
child 19
16fa9fb20b32
equal deleted inserted replaced
17:fa3c822859b5 18:1c8ff93fbfac
51 aikataulu = [] 51 aikataulu = []
52 try: 52 try:
53 pysäkki = pysäkit[tunniste] 53 pysäkki = pysäkit[tunniste]
54 except KeyError: 54 except KeyError:
55 abort(404) 55 abort(404)
56 for (aika, pysähdys) in pysäkki.schedule(100): 56 for schedule_entry in pysäkki.schedule(100):
57 kyltti = supista_reitti(pysähdys.ajo.suppea_reitti(pysähdys)) 57 sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop']))
58 kyltti = [tr(paikka, 'paikat') for paikka in kyltti] 58 sign = [tr(paikka, 'paikat') for paikka in sign]
59 kylttiesitys = ' - '.join(kyltti) 59 sign_representation = ' - '.join(sign)
60 if len(kylttiesitys) > 25: 60 if len(sign_representation) > 25:
61 k = ceil(len(kyltti) / 2) 61 k = ceil(len(sign) / 2)
62 kylttiesitys = ' - '.join(kyltti[:k]) + '\n' + ' - '.join(kyltti[k:]) 62 sign_representation = ' - '.join(sign[:k]) + '\n' + ' - '.join(sign[k:])
63 aikataulu.append({ 63 aikataulu.append({
64 'aika': muotoile_aika(aika), 64 'aika': time_representation(schedule_entry['time']),
65 'linja': pysähdys.ajo.linja.viite, 65 'linja': schedule_entry['trip'].linja.viite,
66 'kyltti': kylttiesitys, 66 'kyltti': sign_representation,
67 'ajovuoro': pysähdys.ajo.nimi, 67 'ajovuoro': schedule_entry['stop'].ajo.nimi,
68 'yö': yö(aika), 68 'yö': is_night_time(schedule_entry['time']),
69 }) 69 })
70 return render_template( 70 return render_template(
71 'pysäkki.html', 71 'pysäkki.html',
72 aikataulu = aikataulu, 72 aikataulu = aikataulu,
73 viite = tunniste, 73 viite = tunniste,
89 reitti = [] 89 reitti = []
90 suppea_reitti = [] 90 suppea_reitti = []
91 käydyt_alueet = set() 91 käydyt_alueet = set()
92 for pysähdys in ajovuoro.reitti: 92 for pysähdys in ajovuoro.reitti:
93 aika = datetime.combine(tänään(), time()) + pysähdys.saapumisaika 93 aika = datetime.combine(tänään(), time()) + pysähdys.saapumisaika
94 muotoiltu_aika = muotoile_aika(aika) 94 muotoiltu_aika = time_representation(aika)
95 reitti.append({ 95 reitti.append({
96 'aika': muotoiltu_aika, 96 'aika': muotoiltu_aika,
97 'tunniste': pysähdys.pysäkki.tunniste, 97 'tunniste': pysähdys.pysäkki.tunniste,
98 'alue': tr(pysähdys.pysäkki.alue or '', 'paikat'), 98 'alue': tr(pysähdys.pysäkki.alue or '', 'paikat'),
99 'nimi': tr(pysähdys.pysäkki.nimi, 'pysäkit'), 99 'nimi': tr(pysähdys.pysäkki.nimi, 'pysäkit'),
106 'alue': alue, 106 'alue': alue,
107 }) 107 })
108 käydyt_alueet.add(alue) 108 käydyt_alueet.add(alue)
109 kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True) 109 kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True)
110 sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html' 110 sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html'
111 return render_template(sivu, reitti = reitti, suppea_reitti = suppea_reitti, 111 return render_template(sivu,
112 numero = numero, linja = ajovuoro.linja.viite, 112 reitti = reitti,
113 suppea_reitti = suppea_reitti,
114 numero = numero,
115 linja = ajovuoro.linja.viite,
113 selite = ' - '.join(tr(paikka, 'paikat') for paikka in kyltti), 116 selite = ' - '.join(tr(paikka, 'paikat') for paikka in kyltti),
114 yö = yö(datetime.combine(tänään(), time()) + ajovuoro.reitti[-1].saapumisaika), 117 yö = time_representation(datetime.combine(tänään(), time()) + ajovuoro.reitti[-1].saapumisaika),
115 ) 118 )
116 119
117 @app.route('/static/<path:path>') 120 @app.route('/static/<path:path>')
118 def static_file(path): 121 def static_file(path):
119 return send_from_directory(path.join('static', path)) 122 return send_from_directory(path.join('static', path))

mercurial