From 92ef032dc2312138dcd619d159817b4aa64d7867 Mon Sep 17 00:00:00 2001 From: Ivlev Denis Date: Thu, 26 Apr 2018 11:18:56 +0300 Subject: [PATCH] LIL-426. Check all checkboxes in school buy template --- project/templates/blocks/popup_buy.html | 2 +- project/views.py | 19 ++++++++++++++++++- 2 files changed, 19 insertions(+), 2 deletions(-) diff --git a/project/templates/blocks/popup_buy.html b/project/templates/blocks/popup_buy.html index f921689c..0bb1b761 100644 --- a/project/templates/blocks/popup_buy.html +++ b/project/templates/blocks/popup_buy.html @@ -34,7 +34,7 @@ data-day="{{school_schedule.weekday}}" data-price="{{school_schedule.month_price}}" autocomplete="off" - {% if school_schedule.is_purchased %} + {% if school_schedule.weekday in school_schedules_purchased or not is_purchased %} checked {% endif %}> diff --git a/project/views.py b/project/views.py index 9998a27a..e96ba20e 100644 --- a/project/views.py +++ b/project/views.py @@ -7,6 +7,7 @@ from django.utils.timezone import now from apps.course.models import Course from apps.school.models import SchoolSchedule +from apps.payment.models import SchoolPayment User = get_user_model() @@ -29,13 +30,29 @@ class IndexView(TemplateView): (end_at + timedelta(hours=2)).time() >= now_time.time() and school_schedule.current_live_lesson() ) + date_now = now_time.date() + if self.request.user.is_authenticated: + school_payment = SchoolPayment.objects.filter( + user=self.request.user, + date_start__lte=date_now, + date_end__gte=date_now + ) + school_payment_exists = school_payment.exists() + school_schedules_purchased = school_payment.values_list('weekdays', flat=True) + school_schedules_purchased = school_schedules_purchased[0] if school_schedules_purchased else [] + else: + school_payment_exists = False + school_schedules_purchased = [] context.update({ 'online': online, 'course_items': Course.objects.filter(status=Course.PUBLISHED)[:6], - 'school_schedules': SchoolSchedule.objects.all(), + 'is_purchased': school_payment_exists, 'min_school_price': SchoolSchedule.objects.all().aggregate(Min('month_price'))['month_price__min'], + 'school_schedules': SchoolSchedule.objects.all(), + 'school_schedules_purchased': school_schedules_purchased, 'teachers': User.objects.filter(role=User.TEACHER_ROLE, show_in_mainpage=True), + 'subscription_ends': school_payment.first().date_end if school_payment_exists else None, }) return context