update cabinet app

remotes/origin/HEAD
Max Yakovenko 8 years ago
parent d82e6ebd90
commit 0547ed23ba
  1. 2
      cabinet/urls.py
  2. 14
      cabinet/views.py
  3. 128
      templates/cabinet/index.html

@ -3,5 +3,5 @@ from django.urls import re_path
from . import views
urlpatterns = [
re_path(r'^index/$', views.IndexView.as_view(), name='index')
re_path(r'^index/$', views.IndexTemplateView.as_view(), name='index')
]

@ -3,13 +3,11 @@ from django.core.paginator import Paginator
from django.utils.translation import ugettext_lazy as _
# Create your views here.
from django.views.generic import ListView
from cart.models import BUYING_STATUS_PAID
from core.views import ProtectedTemplateView
from cart.models import BUYING_STATUS_IN_CART, BUYING_STATUS_BOUGHT, Buying
from core.views import ProtectedView
class IndexView(ProtectedView):
class IndexTemplateView(ProtectedTemplateView):
template_name = 'cabinet/index.html'
title = _('Личный кабинет')
@ -20,7 +18,7 @@ class IndexView(ProtectedView):
})
def get_bought_item_list(self,user):
bought_item_queryset = user.buying_set.filter(status=BUYING_STATUS_BOUGHT).order_by('-create_at').all()
bought_item_queryset = user.buying_set.filter(status=BUYING_STATUS_PAID).order_by('-create_at').all()
paginator = Paginator(
object_list=bought_item_queryset,
per_page=5
@ -35,6 +33,9 @@ class IndexView(ProtectedView):
'patronymic': user.profile.patronymic or ""
})
def get_user_points(self,user):
return user.referral.referralstats.points
def get_context_data(self, **kwargs):
context = super().get_context_data(**kwargs)
context['title'] = self.title
@ -45,4 +46,5 @@ class IndexView(ProtectedView):
context['phone_number'] = self.request.user.profile.phone
context['company'] = self.request.user.company or None
context['profile'] = self.request.user.profile or None
context['referral_points'] = self.get_user_points(user=self.request.user)
return context

@ -9,19 +9,21 @@
<div class="cabinet__bonus">
<div class="d-sm-flex flex-row cabinet__wrap">
<div class="cabinet__title bonus__title">
Ваши бонусы: <span>1326</span>
</div>
<div class="bonus__btn_bx flex-xl-fill">
<a href="#" class="cabinet__link_fill">Вывести бонусы</a>
</div>
<div class="bonus__btn_bx">
<a href="#" class="cabinet__link_fill">Потратить на подарки</a>
Ваши бонусы: <span>{{ referral_points }}</span>
</div>
{% if referral_points > 0 %}
<div class="bonus__btn_bx flex-xl-fill">
<a href="#" class="cabinet__link_fill">Вывести бонусы</a>
</div>
<div class="bonus__btn_bx">
<a href="#" class="cabinet__link_fill">Потратить на подарки</a>
</div>
{% endif %}
</div>
</div>
<div class="d-sm-flex flex-row cabinet__wrap">
<div class="cabinet__title bonus__title">
Ваша ссылка: <a href="#"title="{{ ref_link }}">{{ ref_link }}</a>
Ваша ссылка: <a href="#" title="{{ ref_link }}">{{ ref_link }}</a>
</div>
<div class="bonus__btn_bx">
<a href="{{ request.path }}#" id="ref-link" class="cabinet__link_fill">Скопировать</a>
@ -31,21 +33,20 @@
<div class="col-lg-5 offset-lg-1 col-122">
<div class="cabinet__friends">
<div class="cabinet__title">Приглашенные друзья</div>
<div class="d-flex flex-row friends__row">
<div class="friends__title_header">Имя</div>
<div class="friends__info_header">Баллы</div>
</div>
{% for ref_user in referral_user_list %}
{% if refeferall_user_list > 0 %}
<div class="d-flex flex-row friends__row">
<div class="friends__title">{{ ref_user.name }}</div>
<div class="friends__info">{{ ref_user }}</div>
<div class="friends__title_header">Имя</div>
<div class="friends__info_header">Баллы</div>
</div>
{% empty %}
<div class="d-flex flex-row friends__row">
<div class="friends__title">Nikolas</div>
<div class="friends__info">120</div>
</div>
{% endfor %}
{% for ref_user in referral_user_list %}
<div class="d-flex flex-row friends__row">
<div class="friends__title">{{ ref_user.name }}</div>
<div class="friends__info">{{ ref_user }}</div>
</div>
{% endfor %}
{% else %}
Вы еще никого не пригласили :((
{% endif %}
</div>
</div>
</div>
@ -70,19 +71,16 @@
<td>{{ bought_item.amount }}</td>
<td>{{ bought_item.total_price }}7570₽</td>
</tr>
{% empty %}
<tr>
<td>12.06.17</td>
<td>142251366</td>
<td>Windows 7 BOX...</td>
<td>1</td>
<td>7570₽</td>
</tr>
{% endfor %}
</table>
<div class="history__btn_bx">
<a href="{% url 'cart:history' %}" class="cabinet__link_fill">Вся история покупок</a>
</div>
{% if bought_item_list > 0 %}
<div class="history__btn_bx">
<a href="{% url 'cart:history' %}" class="cabinet__link_fill">Вся история покупок</a>
</div>
{% else %}
<div class="cabinet__title">У вас отсутствуют покупки</div>
{% endif %}
</div>
<div class="cabinet__userdata">
<div class="d-flex flex-row userdata_row">
@ -102,14 +100,14 @@
<div class="userdata_info">{{ email }}</div>
</div>
</div>
{# <div class="cabinet__nextpay">#}
{# <div class="cabinet__title">Ближайшие продления</div>#}
{# <div class="d-flex flex-row nextpay__row">#}
{# <div class="nextpay__title">Windows 7...</div>#}
{# <div class="nextpay__date">22.07.2018 (!)</div>#}
{# <div class="nextpay__btn_bx"><a href="#" class="cabinet__link_fill">Продлить</a></div>#}
{# </div>#}
{# </div>#}
{# <div class="cabinet__nextpay">#}
{# <div class="cabinet__title">Ближайшие продления</div>#}
{# <div class="d-flex flex-row nextpay__row">#}
{# <div class="nextpay__title">Windows 7...</div>#}
{# <div class="nextpay__date">22.07.2018 (!)</div>#}
{# <div class="nextpay__btn_bx"><a href="#" class="cabinet__link_fill">Продлить</a></div>#}
{# </div>#}
{# </div>#}
</div>
<div class="col-lg-5 offset-lg-1 col-12">
<div class="cabinet__userdata cabinet__userdata_right">
@ -158,26 +156,26 @@
<div class="userdata_info">{{ profile.phone|default:'-' }}</div>
</div>
</div>
{# <div class="cabinet__prolonged">#}
{# <div class="cabinet__title">Продлеваемые продукты</div>#}
{# <table class="table">#}
{# <tr>#}
{# <th>Продукт</th>#}
{# <th>Количество</th>#}
{# <th>Дата окончания</th>#}
{# </tr>#}
{# <tr>#}
{# <td>Windows 7...</td>#}
{# <td>1</td>#}
{# <td>22.07.2018</td>#}
{# </tr>#}
{# <tr>#}
{# <td>Windows 7...</td>#}
{# <td>1</td>#}
{# <td>22.07.2018</td>#}
{# </tr>#}
{# </table>#}
{# </div>#}
{# <div class="cabinet__prolonged">#}
{# <div class="cabinet__title">Продлеваемые продукты</div>#}
{# <table class="table">#}
{# <tr>#}
{# <th>Продукт</th>#}
{# <th>Количество</th>#}
{# <th>Дата окончания</th>#}
{# </tr>#}
{# <tr>#}
{# <td>Windows 7...</td>#}
{# <td>1</td>#}
{# <td>22.07.2018</td>#}
{# </tr>#}
{# <tr>#}
{# <td>Windows 7...</td>#}
{# <td>1</td>#}
{# <td>22.07.2018</td>#}
{# </tr>#}
{# </table>#}
{# </div>#}
</div>
</div>
</div>
@ -186,11 +184,11 @@
{% block extra_body_js %}
<script type="text/javascript">
$(document).ready(function () {
$('#ref-link').on('click', function(e) {
$('#ref-link').on('click', function (e) {
e.preventDefault();
var ref_href = $(e.target).parent().prev().children(":first-child").attr('title');
var input = $('<input>').attr({
'type':'text',
'type': 'text',
'id': 'href_copy'
}).val(ref_href);
$('body').append(input);
@ -198,10 +196,10 @@
document.execCommand('copy');
$(e.target).attr('disabled', true).text('Скопированно');
setTimeout(function() {
setTimeout(function () {
$('body').remove("#href_copy");
$(e.target).attr('disabled',false).text('Скопировать');
},300);
$(e.target).attr('disabled', false).text('Скопировать');
}, 300);
})
})
</script>

Loading…
Cancel
Save