Fix sorting schedules

remotes/origin/hasaccess
Ivlev Denis 8 years ago
parent 458da0e5dd
commit 56694b9291
  1. 4
      apps/school/models.py
  2. 6
      apps/school/views.py

@ -49,7 +49,7 @@ class SchoolSchedule(models.Model):
def current_live_lesson(self):
now_time = now()
live_lesson = LiveLesson.objects.filter(
date__week_day=self.weekday + 1 if self.weekday % 7 else 1,
date__week_day=self.weekday % 7 + 1,
date__week=now_time.date().isocalendar()[1],
deactivated_at__isnull=True,
).first()
@ -58,7 +58,7 @@ class SchoolSchedule(models.Model):
def previous_live_lesson(self):
now_time = now()
live_lesson = LiveLesson.objects.filter(
date__week_day=self.weekday + 1 if self.weekday % 7 else 1,
date__week_day=self.weekday % 7 + 1,
date__week=(now_time.date() - timedelta(weeks=1)).isocalendar()[1],
deactivated_at__isnull=True,
).first()

@ -1,6 +1,6 @@
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
from django.db.models import Min, F
from django.http import Http404
from django.shortcuts import get_object_or_404
from django.utils.decorators import method_decorator
@ -95,7 +95,9 @@ class SchoolView(TemplateView):
'course_items': Course.objects.filter(status=Course.PUBLISHED)[:6],
'is_purchased': school_payment_exists,
'min_school_price': SchoolSchedule.objects.aggregate(Min('month_price'))['month_price__min'],
'school_schedules': SchoolSchedule.objects.all(),
'school_schedules': SchoolSchedule.objects.annotate(
width=date_now.weekday()-F('weekday') % 7,
).order_by('-width'),
'school_schedules_purchased': school_schedules_purchased,
'subscription_ends': school_payment.first().date_end if school_payment_exists else None,
})

Loading…
Cancel
Save