diff --git a/calendar/teachingdates/calendars/basecalendar.py b/calendar/teachingdates/calendars/basecalendar.py index 029aeb5..bf84bae 100644 --- a/calendar/teachingdates/calendars/basecalendar.py +++ b/calendar/teachingdates/calendars/basecalendar.py @@ -27,6 +27,7 @@ mondays = [] period = None paper = None + end_of_week = None year = datetime.date.today().year env = jinja2.Environment( loader=jinja2.PackageLoader("teachingdates", "templates"), @@ -36,17 +37,18 @@ year, period, paper, + end_of_week=None, period_config=None, paper_config=None): self.year = year self.period = period self.paper = paper + self.end_of_week = end_of_week self.env.filters.update({ "isteaching": lambda w: isinstance(w, TeachingWeek), "isbreak": lambda w: isinstance(w, BreakWeek), - "nextfriday": lambda d: d + datetime.timedelta(days=4), - "nextsunday": lambda d: d + datetime.timedelta(days=6), + "eow": lambda d: d + datetime.timedelta(days=self.end_of_week), "pad": lambda s, n: str(s).rjust(n) }) @@ -69,7 +71,8 @@ def from_configuration(cls, config): if config: return cls(config.year, config.period, config.paper, - config.get_period_config(), config.get_paper_config()) + config.end_of_week, config.get_period_config(), + config.get_paper_config()) else: return None