Newer
Older

Jonathan Weth
committed
objects = ExtraLessonManager.from_queryset(ExtraLessonQuerySet)()
week = models.IntegerField(verbose_name=_("Week"), default=CalendarWeek.current_week)
year = models.IntegerField(verbose_name=_("Year"), default=get_current_year)
"TimePeriod", models.CASCADE, related_name="extra_lessons", verbose_name=_("Time period"),
subject = models.ForeignKey(
"Subject",
on_delete=models.CASCADE,
related_name="extra_lessons",
verbose_name=_("Subject"),
)
groups = models.ManyToManyField(
"core.Group", related_name="extra_lessons", verbose_name=_("Groups")
)
teachers = models.ManyToManyField(
"core.Person", related_name="extra_lessons_as_teacher", verbose_name=_("Teachers"),
"Room", models.CASCADE, null=True, related_name="extra_lessons", verbose_name=_("Room"),
comment = models.CharField(verbose_name=_("Comment"), blank=True, null=True, max_length=255)
return f"{self.week}, {self.period}, {self.subject}"
def get_groups(self) -> models.query.QuerySet:

Jonathan Weth
committed
"""Get groups relation."""
return self.groups
def get_teachers(self) -> models.query.QuerySet:

Jonathan Weth
committed
"""Get teachers relation."""
return self.teachers

Jonathan Weth
committed
def get_subject(self) -> Subject:
"""Get subject."""
return self.subject
class Meta:
verbose_name = _("Extra lesson")
verbose_name_plural = _("Extra lessons")
class ChronosGlobalPermissions(ExtensibleModel):
class Meta:
managed = False
permissions = (
("view_all_timetables", _("Can view all timetables")),
("view_timetable_overview", _("Can view timetable overview")),
("view_lessons_day", _("Can view all lessons per day")),
)