service.py

changeset 22
3d094a804af8
parent 21
6a0394d5a159
child 24
e6bdb9c54096
--- a/service.py	Tue Jun 13 00:47:24 2017 +0300
+++ b/service.py	Tue Jun 20 09:37:43 2017 +0300
@@ -58,7 +58,8 @@
 
 def sign(schedule_entry):
 	from math import ceil
-	sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop']))
+	ajomatka = schedule_entry['trip'].length - schedule_entry['stop'].ajettu_matka
+	sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop']), ajomatka = ajomatka)
 	sign = [tr(paikka, 'paikat') for paikka in sign]
 	sign_representation = ' - '.join(sign)
 	#if len(sign_representation) > 25:
@@ -82,6 +83,10 @@
 			'ajovuoro': schedule_entry['stop'].ajo.nimi,
 			'yö': is_night_time(schedule_entry['time']),
 		})
+	from os import path
+	tausta = path.join('static', 'tausta-' + (pysäkki.alue or 'pysäkki').lower().replace(' ', '-') + '.png')
+	if not path.isfile(tausta):
+		tausta = None
 	return render_template(
 		'pysäkki.html',
 		aikataulu = aikataulu,
@@ -91,6 +96,7 @@
 		sijainti = pysäkki.sijainti,
 		cluster = pysäkki.cluster.url_name if len(pysäkki.cluster.stops) > 1 else None,
 		tr = tr,
+		tausta = tausta,
 	)
 
 def time_representation(aika, suhteellinen = True):
@@ -150,7 +156,6 @@
 		ajovuoro = ajot[numero]
 	except KeyError:
 		abort(404)
-	suppea = request.args.get('suppea') is not None
 	reitti = []
 	suppea_reitti = []
 	käydyt_alueet = set()
@@ -168,13 +173,14 @@
 			if alue not in käydyt_alueet:
 				suppea_reitti.append({
 					'aika': muotoiltu_aika,
-					'alue': tr(alue or '', 'paikat'),
+					'alue': alue or '',
 				})
 				käydyt_alueet.add(alue)
-	kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True)
+	kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True, ajomatka = ajovuoro.length)
 	kyltti = [kyltti[0], kyltti[-1]]
-	sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html'
-	return render_template(sivu,
+	for entry in suppea_reitti:
+		entry['alue'] = tr(entry['alue'], 'paikat')
+	return render_template('ajovuoro.html',
 		reitti = reitti,
 		suppea_reitti = suppea_reitti,
 		numero = numero,
@@ -182,6 +188,7 @@
 		selite = ' - '.join(tr(paikka, 'paikat') for paikka in kyltti),
 		yö = is_night_time(datetime.combine(tänään(), time()) + ajovuoro.reitti[-1].saapumisaika),
 		tr = tr,
+		length = ajovuoro.length / 1000
 		)
 
 @app.route('/static/<path:path>')

mercurial