From 3a8d2024ef442075bb27193f005578e40282196d Mon Sep 17 00:00:00 2001 From: gzbender Date: Fri, 9 Nov 2018 13:20:18 +0300 Subject: [PATCH] LIL-665 --- apps/course/templates/course/course.html | 15 ++++++++-- .../templates/school/livelesson_detail.html | 6 ++++ .../school/livelesson_detail_unauth.html | 27 +++++++++++++++++ apps/school/views.py | 30 ++++++++++--------- 4 files changed, 61 insertions(+), 17 deletions(-) create mode 100644 apps/school/templates/school/livelesson_detail_unauth.html diff --git a/apps/course/templates/course/course.html b/apps/course/templates/course/course.html index 7ab898b1..82912788 100644 --- a/apps/course/templates/course/course.html +++ b/apps/course/templates/course/course.html @@ -8,9 +8,18 @@ {% block twurl %}{{ request.build_absolute_uri }}{% endblock twurl %} {% block ogtitle %}{{ course.title }} - {{ block.super }}{% endblock ogtitle %} {% block ogurl %}{{ request.build_absolute_uri }}{% endblock ogurl %} -{% if course.cover and course.cover.image %} -{% block ogimage %}http://{{request.META.HTTP_HOST}}{% if course.cover %}{{ course.cover.image.url }}{% else %}{% static 'img/og_courses.jpg' %}{% endif %}{% endblock ogimage %} -{% endif %} + +{% block ogimage %} + http://{{request.META.HTTP_HOST}}{% if course.cover and course.cover.image %}{{ course.cover.image.url }}{% else %}{% static 'img/og_courses.jpg' %}{% endif %} +{% endblock ogimage %} +{% block ogimage-width %} + {% if course.cover and course.cover.image %}{{ course.cover.image.width }}{% else %}1024{% endif %} +{% endblock ogimage-width %} +{% block ogimage-height %} + {% if course.cover and course.cover.image %}{{ course.cover.image.height }}{% else %}512{% endif %} +{% endblock ogimage-height %} + + {% block ogdescription %}{{ course.short_description | striptags }}{% endblock ogdescription %} {% block content %} diff --git a/apps/school/templates/school/livelesson_detail.html b/apps/school/templates/school/livelesson_detail.html index 21387415..095dbb01 100644 --- a/apps/school/templates/school/livelesson_detail.html +++ b/apps/school/templates/school/livelesson_detail.html @@ -8,6 +8,12 @@ {% block ogimage %} {% if livelesson.cover and livelesson.cover.image %}http://{{request.META.HTTP_HOST}}{{ livelesson.cover.image.url }}{% else %}{{ block.super }}{% endif %} {% endblock ogimage %} +{% block ogimage-width %} + {% if livelesson.cover and livelesson.cover.image %}{{ livelesson.cover.image.width }}{% else %}{{ block.super }}{% endif %} +{% endblock ogimage-width %} +{% block ogimage-height %} + {% if livelesson.cover and livelesson.cover.image %}{{ livelesson.cover.image.height }}{% else %}{{ block.super }}{% endif %} +{% endblock ogimage-height %} {% block content %}
diff --git a/apps/school/templates/school/livelesson_detail_unauth.html b/apps/school/templates/school/livelesson_detail_unauth.html new file mode 100644 index 00000000..4493928f --- /dev/null +++ b/apps/school/templates/school/livelesson_detail_unauth.html @@ -0,0 +1,27 @@ +{% extends "templates/lilcity/index.html" %} +{% load static %} +{% block title %}{{ livelesson.title }} - {{ block.super }}{% endblock title %} + +{% block twurl %}{{ request.build_absolute_uri }}{% endblock twurl %} +{% block ogtitle %}{{ livelesson.title }} - {{ block.super }}{% endblock ogtitle %} +{% block ogurl %}{{ request.build_absolute_uri }}{% endblock ogurl %} +{% block ogimage %} + {% if livelesson.cover and livelesson.cover.image %}http://{{request.META.HTTP_HOST}}{{ livelesson.cover.image.url }}{% else %}{{ block.super }}{% endif %} +{% endblock ogimage %} +{% block ogimage-width %} + {% if livelesson.cover and livelesson.cover.image %}{{ livelesson.cover.image.width }}{% else %}{{ block.super }}{% endif %} +{% endblock ogimage-width %} +{% block ogimage-height %} + {% if livelesson.cover and livelesson.cover.image %}{{ livelesson.cover.image.height }}{% else %}{{ block.super }}{% endif %} +{% endblock ogimage-height %} + +{% block content %} +
+
+
+ Чтобы посмотреть урок необходимо авторизоваться +
+ +
+
+{% endblock content %} diff --git a/apps/school/views.py b/apps/school/views.py index a3317ad0..a3cc379b 100644 --- a/apps/school/views.py +++ b/apps/school/views.py @@ -57,26 +57,28 @@ class LiveLessonsView(ListView): return queryset -@method_decorator(login_required, name='dispatch') class LiveLessonsDetailView(DetailView): model = LiveLesson template_name = 'school/livelesson_detail.html' def get(self, request, pk=None): self.object = self.get_object() - is_purchased = SchoolPayment.objects.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, - ], - weekdays__contains=[self.object.date.weekday() + 1], - ).exists() - if not is_purchased and request.user.role not in [User.ADMIN_ROLE, User.TEACHER_ROLE]: - raise Http404 + if request.user.is_authenticated: + is_purchased = SchoolPayment.objects.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, + ], + weekdays__contains=[self.object.date.weekday() + 1], + ).exists() + if not is_purchased and request.user.role not in [User.ADMIN_ROLE, User.TEACHER_ROLE]: + raise Http404 + else: + self.template_name = 'school/livelesson_detail_unauth.html' context = self.get_context_data(object=self.object) return self.render_to_response(context)