If the arrival is due in > 99min, show the arrival time instead
This commit is contained in:
parent
2d00e744d6
commit
32b0fa3392
|
|
@ -1,3 +1,5 @@
|
||||||
|
import datetime
|
||||||
|
|
||||||
class ArrivalTime():
|
class ArrivalTime():
|
||||||
""" Represents the arrival times of buses at one of the configured stops """
|
""" Represents the arrival times of buses at one of the configured stops """
|
||||||
|
|
||||||
|
|
@ -14,5 +16,12 @@ class ArrivalTime():
|
||||||
def isDue(self) -> bool:
|
def isDue(self) -> bool:
|
||||||
return self.due_in_minutes < 1
|
return self.due_in_minutes < 1
|
||||||
|
|
||||||
|
def due_in_str(self) -> str:
|
||||||
|
if self.due_in_minutes < 99:
|
||||||
|
return str(self.due_in_minutes) + "min"
|
||||||
|
else:
|
||||||
|
due_in = datetime.datetime.now() + datetime.timedelta(0, self.due_in_seconds)
|
||||||
|
return due_in.strftime("%H:%M")
|
||||||
|
|
||||||
def __lt__(self, other) -> int:
|
def __lt__(self, other) -> int:
|
||||||
return self.due_in_seconds < other.due_in_seconds
|
return self.due_in_seconds < other.due_in_seconds
|
||||||
2
main.py
2
main.py
|
|
@ -96,7 +96,7 @@ def update_screen(updates: list[ArrivalTime]) -> None:
|
||||||
line=line_num,
|
line=line_num,
|
||||||
route=update.route_id,
|
route=update.route_id,
|
||||||
destination=update.destination,
|
destination=update.destination,
|
||||||
time_left='Due' if update.isDue() else f'{update.due_in_minutes}min',
|
time_left='Due' if update.isDue() else update.due_in_str(),
|
||||||
time_color=lcd_color
|
time_color=lcd_color
|
||||||
)
|
)
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue