jam_ownername: str
# TODO: Comment object?
comments: list
+ hidden: bool
@classmethod
def from_row(cls, row):
event_comments = comments.for_thread(row["threadid"])
+ startdate = datetime.fromisoformat(row["startdate"]) if row["startdate"] else None
+ enddate = datetime.fromisoformat(row["enddate"]) if row["enddate"] else None
return cls(
eventid=row["eventid"],
jamid=row["jamid"],
threadid=row["threadid"],
created=datetime.fromisoformat(row["created"]),
title=row["title"],
- startdate=datetime.fromisoformat(row["startdate"]) if row["startdate"] else None,
- enddate=datetime.fromisoformat(row["enddate"]) if row["enddate"] else None,
+ startdate=startdate,
+ enddate=enddate,
description=sanitize_user_text(row["description"] or ""),
jam_title=row["jam_title"],
jam_ownername=row["jam_ownername"],
# TODO: Comment object?
comments=event_comments,
+ hidden=((startdate is None) or startdate > datetime.now(timezone.utc)),
)