37 lines
824 B
Python
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"
|