Skip to content
Snippets Groups Projects
Commit b8c25a59 authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Impemente util function and templatetags to get week dates.

Advances BiscuIT-App-Alsijil#8.
parent f1e0a98b
No related branches found
No related tags found
No related merge requests found
from datetime import date
from django import template
from .util import week_days
register = template.Library()
@register.filter
def week_start(week: int) -> date:
return week_days(week)[0]
@register.filter
def week_end(week: int) -> date:
return week_days(week)[-1]
from datetime import datetime
from typing import Optional
from datetime import date, datetime, timedelta
from typing import Optional, Sequence
from django.apps import apps
from django.db import models
......@@ -9,6 +9,18 @@ def current_week() -> int:
return int(datetime.now().strftime('%V'))
def week_days(week: Optional[int]) -> Sequence[date]:
# FIXME Make this aware of the school term concept
# cf. BiscuIT-ng#40
year = date.today().year
wanted_week = week or current_week()
first_day = datetime.strptime('%d-%d-1' % (year, wanted_week), '%Y-%W-%w')
return [(first_day + timedelta(days=offset)).date() for offset in range(0, 7)]
def current_lesson_periods(when: Optional[datetime] = None) -> models.query.QuerySet:
now = when or datetime.now()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment