Sat, 10 Jun 2017 21:09:11 +0300
Lisää käännöstä
buses.py | file | annotate | diff | comparison | revisions | |
misc.py | file | annotate | diff | comparison | revisions | |
service.py | file | annotate | diff | comparison | revisions |
--- a/buses.py Sat Jun 10 21:03:26 2017 +0300 +++ b/buses.py Sat Jun 10 21:09:11 2017 +0300 @@ -109,12 +109,16 @@ stop = trip.pysäkkiReitillä(self) if stop and stop is not trip.reitti[-1]: # ja jos tämä pysähdys on tulevaisuudessa, - aika = datetime.combine(date, time()) + stop.saapumisaika - if aika >= nyt(): + stop_time = datetime.combine(date, time()) + stop.saapumisaika + if stop_time >= nyt(): # lisää pysähdys listaan. - result.append((aika, stop)) + result.append({ + 'time': stop_time, + 'trip': trip, + 'stop': stop, + }) # Lajittele lopputulos saapumisajan mukaan. - result.sort(key = lambda entry: entry[0]) + result.sort(key = lambda schedule_entry: schedule_entry['time']) return result @property def linkki_karttaan(self):
--- a/misc.py Sat Jun 10 21:03:26 2017 +0300 +++ b/misc.py Sat Jun 10 21:09:11 2017 +0300 @@ -8,7 +8,7 @@ return datetime.now() #return datetime.combine(tänään(), datetime.now().time()) -def muotoile_aika(aika, suhteellinen = True): +def time_representation(aika, suhteellinen = True): erotus = aika - nyt() if suhteellinen and erotus < timedelta(minutes = 1): return 'nyt' @@ -32,5 +32,5 @@ tietue[avain] = muunnos(tietue[avain]) yield tietue -def yö(aika): - return aika.hour >= 23 or aika.hour < 5 +def is_night_time(time): + return time.hour >= 23 or time.hour < 5
--- a/service.py Sat Jun 10 21:03:26 2017 +0300 +++ b/service.py Sat Jun 10 21:09:11 2017 +0300 @@ -53,19 +53,19 @@ pysäkki = pysäkit[tunniste] except KeyError: abort(404) - for (aika, pysähdys) in pysäkki.schedule(100): - kyltti = supista_reitti(pysähdys.ajo.suppea_reitti(pysähdys)) - kyltti = [tr(paikka, 'paikat') for paikka in kyltti] - kylttiesitys = ' - '.join(kyltti) - if len(kylttiesitys) > 25: - k = ceil(len(kyltti) / 2) - kylttiesitys = ' - '.join(kyltti[:k]) + '\n' + ' - '.join(kyltti[k:]) + for schedule_entry in pysäkki.schedule(100): + sign = supista_reitti(schedule_entry['trip'].suppea_reitti(schedule_entry['stop'])) + sign = [tr(paikka, 'paikat') for paikka in sign] + sign_representation = ' - '.join(sign) + if len(sign_representation) > 25: + k = ceil(len(sign) / 2) + sign_representation = ' - '.join(sign[:k]) + '\n' + ' - '.join(sign[k:]) aikataulu.append({ - 'aika': muotoile_aika(aika), - 'linja': pysähdys.ajo.linja.viite, - 'kyltti': kylttiesitys, - 'ajovuoro': pysähdys.ajo.nimi, - 'yö': yö(aika), + 'aika': time_representation(schedule_entry['time']), + 'linja': schedule_entry['trip'].linja.viite, + 'kyltti': sign_representation, + 'ajovuoro': schedule_entry['stop'].ajo.nimi, + 'yö': is_night_time(schedule_entry['time']), }) return render_template( 'pysäkki.html', @@ -91,7 +91,7 @@ käydyt_alueet = set() for pysähdys in ajovuoro.reitti: aika = datetime.combine(tänään(), time()) + pysähdys.saapumisaika - muotoiltu_aika = muotoile_aika(aika) + muotoiltu_aika = time_representation(aika) reitti.append({ 'aika': muotoiltu_aika, 'tunniste': pysähdys.pysäkki.tunniste, @@ -108,10 +108,13 @@ käydyt_alueet.add(alue) kyltti = supista_reitti([k['alue'] for k in suppea_reitti], kokonainen = True) sivu = suppea and 'ajovuoro-suppea.html' or 'ajovuoro.html' - return render_template(sivu, reitti = reitti, suppea_reitti = suppea_reitti, - numero = numero, linja = ajovuoro.linja.viite, + return render_template(sivu, + reitti = reitti, + suppea_reitti = suppea_reitti, + numero = numero, + linja = ajovuoro.linja.viite, selite = ' - '.join(tr(paikka, 'paikat') for paikka in kyltti), - yö = yö(datetime.combine(tänään(), time()) + ajovuoro.reitti[-1].saapumisaika), + yö = time_representation(datetime.combine(tänään(), time()) + ajovuoro.reitti[-1].saapumisaika), ) @app.route('/static/<path:path>')