From 13f250c0908fd0d67c0c3a5c44fb84e54b14724a Mon Sep 17 00:00:00 2001 From: Dominik George <dominik.george@teckids.org> Date: Thu, 18 Jul 2019 00:02:58 +0200 Subject: [PATCH] Pass lesson periods to tempalte, sorted by day. --- biscuit/apps/chronos/views.py | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/biscuit/apps/chronos/views.py b/biscuit/apps/chronos/views.py index 3f2001b7..09b0be2f 100644 --- a/biscuit/apps/chronos/views.py +++ b/biscuit/apps/chronos/views.py @@ -3,10 +3,31 @@ from django.shortcuts import render from biscuit.core.decorators import admin_required +from .models import LessonPeriod + @login_required @admin_required def timetable(request): context = {} + lesson_periods = LessonPeriod.objects.all() + + if 'group' in request.GET: + lesson_periods = lesson_periods.filter( + lesson__groups__pk__contains=int(request.GET('group'))) + if 'teacher' in request.GET: + lesson_periods = lesson_periods.filter( + lesson__teachers__pk__contains=int(request.GET('teacher'))) + if 'room' in request.GET: + lesson_periods = lesson_periods.filter( + room__pk=int(request.GET('room'))) + + per_day = {} + for lesson_period in lesson_periods: + for period in lesson_period.periods.all(): + per_day.setdefault(period.weekday, []).append(lesson_period) + + context['lesson_periods'] = per_day + return render(request, 'chronos/tt_week.html', context) -- GitLab