Files
folkugat-web/folkugat_web/model/sessions.py

37 lines
824 B
Python

import dataclasses
import datetime
import enum
DEFAULT_START_TIME = datetime.time(20, 30)
DEFAULT_END_TIME = datetime.time(22, 30)
@dataclasses.dataclass(frozen=True)
class SessionVenue:
name: str | None = None
url: str | None = None
@dataclasses.dataclass(frozen=True)
class Session:
id: int | None = None
date: datetime.date = dataclasses.field(default_factory=datetime.date.today)
start_time: datetime.time = DEFAULT_START_TIME
end_time: datetime.time = DEFAULT_END_TIME
venue: SessionVenue = dataclasses.field(default_factory=SessionVenue)
notes: str | None = None
cartell_url: str | None = None
is_live: bool = False
@dataclasses.dataclass
class DateNames:
day_name: str
day: str
month_name: str
year: str
class SessionCols(enum.Enum):
DATE = "date"