Compare commits
3 commits
d5a92c9a8e
...
85ebaf7c84
Author | SHA1 | Date | |
---|---|---|---|
Edward Betts | 85ebaf7c84 | ||
Edward Betts | 5b2d248955 | ||
Edward Betts | f1a472a944 |
|
@ -43,6 +43,12 @@ class TripElement:
|
|||
detail: StrDict
|
||||
|
||||
|
||||
def airport_label(airport: StrDict) -> str:
|
||||
"""Airport label: name and iata."""
|
||||
name = airport.get("alt_name") or airport["city"]
|
||||
return f"{name} ({airport['iata']})"
|
||||
|
||||
|
||||
@dataclass
|
||||
class Trip:
|
||||
"""Trip."""
|
||||
|
@ -204,12 +210,9 @@ class Trip:
|
|||
|
||||
for item in self.travel:
|
||||
if item["type"] == "flight":
|
||||
flight_from = item["from_airport"]
|
||||
flight_to = item["to_airport"]
|
||||
name = (
|
||||
"✈️ "
|
||||
+ f"{flight_from['name']} ({flight_from['iata']}) -> "
|
||||
+ f"{flight_to['name']} ({flight_to['iata']})"
|
||||
f"✈️ {airport_label(item['from_airport'])} → "
|
||||
+ f"{airport_label(item['to_airport'])}"
|
||||
)
|
||||
|
||||
elements.append(
|
||||
|
@ -221,17 +224,18 @@ class Trip:
|
|||
)
|
||||
)
|
||||
if item["type"] == "train":
|
||||
name = f"{item['from']} -> {item['to']}"
|
||||
for leg in item["legs"]:
|
||||
name = f"{leg['from']} → {leg['to']}"
|
||||
elements.append(
|
||||
TripElement(
|
||||
when=item["depart"],
|
||||
when=leg["depart"],
|
||||
title=name,
|
||||
detail=item,
|
||||
detail=leg,
|
||||
element_type="train",
|
||||
)
|
||||
)
|
||||
if item["type"] == "ferry":
|
||||
name = f"{item['from']} -> {item['to']}"
|
||||
name = f"{item['from']} → {item['to']}"
|
||||
elements.append(
|
||||
TripElement(
|
||||
when=item["depart"],
|
||||
|
|
Loading…
Reference in a new issue