diff --git a/apps/school/templates/blocks/_schedule_purchased_item.html b/apps/school/templates/blocks/_schedule_purchased_item.html
index 2ee135cf..5d87320a 100644
--- a/apps/school/templates/blocks/_schedule_purchased_item.html
+++ b/apps/school/templates/blocks/_schedule_purchased_item.html
@@ -12,7 +12,7 @@
{{ school_schedule.start_at }} (МСК)
{% if school_schedule.weekday in school_schedules_purchased %}
- {% if live_lesson %}
+ {% if live_lesson and school_schedule.is_online or live_lesson and is_previous %}
{% include './open_lesson.html' %}
{% endif %}
{% else %}
diff --git a/apps/school/views.py b/apps/school/views.py
index ce25f018..267c7f67 100644
--- a/apps/school/views.py
+++ b/apps/school/views.py
@@ -1,3 +1,5 @@
+from datetime import datetime
+
from django.contrib.auth import get_user_model
from django.contrib.auth.decorators import login_required, user_passes_test
from django.db.models import Min, F
@@ -78,6 +80,18 @@ class SchoolView(TemplateView):
context = super().get_context_data()
is_previous = 'is_previous' in self.request.GET
date_now = now().date()
+ now_time = now()
+ try:
+ school_schedule = SchoolSchedule.objects.get(weekday=now_time.isoweekday())
+ except SchoolSchedule.DoesNotExist:
+ online = False
+ else:
+ end_at = datetime.combine(now_time.today(), school_schedule.start_at)
+ online = (
+ school_schedule.start_at <= now_time.time() and
+ (end_at + timedelta(hours=2)).time() >= now_time.time() and
+ school_schedule.current_live_lesson()
+ )
if self.request.user.is_authenticated:
school_payment = SchoolPayment.objects.filter(
user=self.request.user,
@@ -91,6 +105,7 @@ class SchoolView(TemplateView):
school_payment_exists = False
school_schedules_purchased = []
context.update({
+ 'online': online,
'is_previous': is_previous,
'course_items': Course.objects.filter(status=Course.PUBLISHED)[:6],
'is_purchased': school_payment_exists,