Reduce function complexity of in types.py
This commit is contained in:
parent
bab1d25dd4
commit
938d8a5afe
|
@ -73,20 +73,21 @@ class Trip:
|
|||
return self.name
|
||||
titles: list[str] = [conf["name"] for conf in self.conferences] + [
|
||||
event["title"] for event in self.events
|
||||
]
|
||||
if not titles:
|
||||
for travel in self.travel:
|
||||
if travel["depart"] and utils.as_date(travel["depart"]) != self.start:
|
||||
place = travel["from"]
|
||||
if place not in titles:
|
||||
titles.append(place)
|
||||
if travel["depart"] and utils.as_date(travel["depart"]) != self.end:
|
||||
place = travel["to"]
|
||||
if place not in titles:
|
||||
titles.append(place)
|
||||
] or self.titles_from_travel()
|
||||
|
||||
return format_list_with_ampersand(titles) or "[unnamed trip]"
|
||||
|
||||
def titles_from_travel(self) -> list[str]:
|
||||
"""Titles from travel."""
|
||||
titles = []
|
||||
for travel in self.travel:
|
||||
if not (depart := (travel["depart"] and utils.as_date(travel["depart"]))):
|
||||
continue
|
||||
for when, from_or_to in ((self.start, "from"), (self.end, "to")):
|
||||
if depart != when and travel["from_or_to"] not in titles:
|
||||
titles.append(travel["from_or_to"])
|
||||
return titles
|
||||
|
||||
@property
|
||||
def end(self) -> datetime.date | None:
|
||||
"""End date for trip."""
|
||||
|
|
Loading…
Reference in a new issue