Merge branch 'feature/drawing-camp' into 'master'

рисовальный лагерь

See merge request lilschool/site!302
remotes/origin/feature/cat-title-links-24-05-19
Danil 7 years ago
commit 1845f83ea2
  1. 2
      apps/course/templates/course/course_edit.html
  2. 22
      apps/user/templates/user/profile.html
  3. 14
      apps/user/views.py

@ -17,7 +17,7 @@
{% endblock header_buttons %}
{% block content %}
<course-redactor name="course-redactor" :live="{{ live }}" :camp="{{ is_camp }}"
<course-redactor name="course-redactor" :live="{{ live }}" :camp="{{ is_camp|default:'false' }}"
author-picture="{% if request.user.photo %}{{ request.user.photo.url }}{% else %}{% static 'img/user_default.jpg' %}{% endif %}"
author-name="{{ request.user.first_name }} {{ request.user.last_name }}"
access-token="{{ request.user.auth_token }}"

@ -117,6 +117,22 @@
<a class="btn" href="{% url 'school:school' %}">Перейти в онлайн-школу</a>
</div>
{% endif %}
{% if is_camp_purchased %}
<div class="courses__item">
<a class="courses__preview" href="{% url 'school:drawing-camp' %}">
<img class="courses__pic" src="{% static 'img/og_camp.jpg' %}"
style="height: 200px; object-fit: cover;" />
<div class="courses__view">Подробнее</div>
</a>
<div class="courses__details">
<a class="courses__theme theme">&nbsp;</a>
<div class="courses__price">{{ camp_purchased_price|floatformat:"-2" }}₽</div>
</div>
<a class="courses__title">Лагерь&nbsp;{{ camp_purchased_dates.0|date:"j b" }}&nbsp;-&nbsp;{{ camp_purchased_dates.1|date:"j b" }}</a>
<a class="btn" href="{% url 'school:drawing-camp' %}">Перейти в лагерь</a>
</div>
{% endif %}
{% if user_gift_certificates.exists %}
{% for ugs in user_gift_certificates %}
{% cycle 'theme_pink2' 'theme_cyan' 'theme_violet2' as theme_color silent %}
@ -131,8 +147,10 @@
<div class="done">
<div class="done__title">Вы пока ничего не приобрели...</div>
<div class="done__foot">
<a class="done__btn btn btn_md btn_stroke" href="{% url 'school:school' %}"
style="margin-bottom: 20px;">Записаться в школу</a>
<!--<a class="done__btn btn btn_md btn_stroke" href="{% url 'school:school' %}"-->
<!--style="margin-bottom: 20px;">Записаться в школу</a>-->
<a class="done__btn btn btn_md btn_stroke" href="{% url 'school:drawing-camp' %}"
style="margin-bottom: 20px;">Записаться в рисовальный лагерь</a>
<a class="done__btn btn btn_md btn_stroke" href="{% url 'courses' %}">Купить курсы</a>
</div>
</div>

@ -24,7 +24,8 @@ from apps.config.models import Config
from apps.course.models import Course
from apps.notification.utils import send_email
from apps.school.models import SchoolSchedule
from apps.payment.models import AuthorBalance, CoursePayment, SchoolPayment, Payment, UserGiftCertificate, UserBonus
from apps.payment.models import AuthorBalance, CoursePayment, SchoolPayment, Payment, UserGiftCertificate, UserBonus, \
DrawingCampPayment
from apps.user.models import AuthorRequest, EmailSubscription, SubscriptionCategory
from .forms import AuthorRequesForm, UserEditForm, WithdrawalForm
@ -90,6 +91,17 @@ class ProfileView(TemplateView):
context['school_purchased_price'] = aggregated.get('amount__sum') or 0
context['school_purchased_dates'] = [aggregated.get('date_start__min'), aggregated.get('date_end__max')]
camp_payment = DrawingCampPayment.objects.filter(
user=self.object,
date_end__gte=now(),
status__in=DrawingCampPayment.PW_PAID_STATUSES,
)
context['is_camp_purchased'] = camp_payment.exists()
if context['is_camp_purchased']:
aggregated = camp_payment.aggregate(Sum('amount'), Min('date_start'), Max('date_end'),)
context['camp_purchased_price'] = aggregated.get('amount__sum') or 0
context['camp_purchased_dates'] = [aggregated.get('date_start__min'), aggregated.get('date_end__max')]
context['profile'] = True
return context

Loading…
Cancel
Save