|
|
|
|
@ -106,15 +106,15 @@ class LiveLessonsDetailView(DetailView): |
|
|
|
|
is_purchased = DrawingCampPayment.objects.all() |
|
|
|
|
else: |
|
|
|
|
is_purchased = SchoolPayment.objects.filter(weekdays__contains=[self.object.date.weekday() + 1],) |
|
|
|
|
is_purchased = is_purchased.filter( |
|
|
|
|
is_purchased = is_purchased.paid().filter( |
|
|
|
|
user=request.user, |
|
|
|
|
date_start__lte=now(), |
|
|
|
|
date_end__gte=now() - timedelta(days=7), |
|
|
|
|
status__in=[ |
|
|
|
|
Pingback.PINGBACK_TYPE_REGULAR, |
|
|
|
|
Pingback.PINGBACK_TYPE_GOODWILL, |
|
|
|
|
Pingback.PINGBACK_TYPE_RISK_REVIEWED_ACCEPTED, |
|
|
|
|
], |
|
|
|
|
).exists() or is_purchased.paid().filter( |
|
|
|
|
user=request.user, |
|
|
|
|
date_start__lte=now(), |
|
|
|
|
date_end__gte=now() - timedelta(days=30), |
|
|
|
|
package__duration__lte=9, |
|
|
|
|
).exists() |
|
|
|
|
if not is_purchased and request.user.role not in [User.ADMIN_ROLE, User.TEACHER_ROLE]: |
|
|
|
|
raise Http404 |
|
|
|
|
@ -221,7 +221,10 @@ class SchoolView(TemplateView): |
|
|
|
|
# берем все подписки, которые были в периоде |
|
|
|
|
for sp in prev_school_payments: |
|
|
|
|
# берем все уроки в оплаченном промежутке |
|
|
|
|
date_range = [max(sp.date_start, prev_range[0]), min(sp.date_end, prev_range[1])] |
|
|
|
|
if sp.package and sp.package.duration >= 9: |
|
|
|
|
date_range = [max(sp.date_start, date_now - timedelta(30)), min(sp.date_end, prev_range[1])] |
|
|
|
|
else: |
|
|
|
|
date_range = [max(sp.date_start, prev_range[0]), min(sp.date_end, prev_range[1])] |
|
|
|
|
prev_live_lessons += list(LiveLesson.objects.filter( |
|
|
|
|
date__range=date_range, |
|
|
|
|
deactivated_at__isnull=True, |
|
|
|
|
|