commit
a06d85ca61
23 changed files with 219 additions and 71 deletions
@ -0,0 +1,30 @@ |
|||||||
|
# -*- coding: utf-8 -*- |
||||||
|
from django import forms |
||||||
|
from django.utils.translation import ugettext as _ |
||||||
|
|
||||||
|
from accounts.models import User |
||||||
|
|
||||||
|
|
||||||
|
class EmailForm(forms.Form): |
||||||
|
email = forms.EmailField(label=_(u'Email address')) |
||||||
|
|
||||||
|
|
||||||
|
class AssociateForm(EmailForm): |
||||||
|
_errors = { |
||||||
|
'required': _(u'Данный email уже зарегистрирован. Авторизируйтесь чтобы привязать аккаунт.'), |
||||||
|
'invalid': _(u'Неправильный логин или пароль.') |
||||||
|
} |
||||||
|
password = forms.CharField(label=_(u'Пароль'), widget=forms.PasswordInput(), error_messages=_errors) |
||||||
|
|
||||||
|
def clean_password(self): |
||||||
|
self.user = None |
||||||
|
pw = self.cleaned_data.get('password') |
||||||
|
if pw: |
||||||
|
try: |
||||||
|
self.user = User.objects.get(email=self.cleaned_data.get('email')) |
||||||
|
except: |
||||||
|
self.user = None |
||||||
|
if self.user and not self.user.check_password(pw): |
||||||
|
self.user = None |
||||||
|
raise forms.ValidationError(self.fields['password'].error_messages['invalid']) |
||||||
|
return pw |
||||||
@ -1,5 +1,5 @@ |
|||||||
{% load i18n %} |
{% load i18n %} |
||||||
<div class="reversed" style="border-left: 5px solid #ff9900; padding: 8px 12px; background-color: #fff; font-size:17px; text-align: justify; margin-bottom: 10px">{% trans "Выставки по указанным параметрам не найдены. Попробуйте упростить параметры или расширить временные рамки. Также Вы можете посмотреть уже прошедшие события и проверить самостоятельно, будут ли они проходить в будущем." %}</div> |
<div class="reversed" style="border-left: 5px solid #ff9900; padding: 8px 12px; background-color: #fff; font-size:17px; text-align: justify; margin-bottom: 10px">{% trans "Выставки по указанным параметрам не найдены. Попробуйте упростить параметры или расширить временные рамки. Также, вы можете посмотреть уже прошедшие события и проверить самостоятельно, будут ли они проходить в будущем." %}</div> |
||||||
<div class="page-title"> |
<div class="page-title"> |
||||||
<h2 style="font-size:30px;">{% trans "Прошедшие события" %}</h2> |
<h2 style="font-size:30px;">{% trans "Прошедшие события" %}</h2> |
||||||
</div> |
</div> |
||||||
|
|||||||
@ -1,14 +1,15 @@ |
|||||||
{% load i18n %} |
{% load i18n %} |
||||||
|
|
||||||
{% if side_popular %} |
{% if side_popular %} |
||||||
<div class="mps-sect"> |
{# <div class="mps-sect">#} |
||||||
<header style="font-size: 23px;">{% trans 'Самые популярные' %}</header> |
{# <header style="font-size: 23px;">{% trans 'Самые популярные' %}</header>#} |
||||||
<nav> |
{# <nav>#} |
||||||
<ul> |
<ul class="leter-list"> |
||||||
{% for obj in side_popular %} |
<li class="leter" style="font-size: 24px">{% trans 'Самые популярные' %}</li> |
||||||
<li><a href="{{ obj.url }}">{{ obj.name }}</a></li> |
{% for obj in side_popular %} |
||||||
{% endfor %} |
<li><a href="{{ obj.url }}">{{ obj.name }}</a></li> |
||||||
|
{% endfor %} |
||||||
</ul> |
</ul> |
||||||
</nav> |
{# </nav>#} |
||||||
</div> |
{# </div>#} |
||||||
{% endif %} |
{% endif %} |
||||||
|
|||||||
@ -0,0 +1,28 @@ |
|||||||
|
{% load static %} |
||||||
|
{% load i18n %} |
||||||
|
{% load template_filters %} |
||||||
|
|
||||||
|
<div id="unsibscribed" class="popup-window unsibscribed"> |
||||||
|
<header> |
||||||
|
<div class="title">{% trans 'Вы отписались от нашей рассылки' %}</div> |
||||||
|
</header> |
||||||
|
|
||||||
|
<div class="body"> |
||||||
|
<div class="themes_wrapper"> |
||||||
|
<div class="scroll-container"> |
||||||
|
<div class="scroll-content"> |
||||||
|
<div class="topics-list"> |
||||||
|
{% trans "Мы расстроены, но отписали Вас от всех писем. Надеемся, в скором времени вы снова захотите быть в курсе событий своей отрасли." %} |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
</div> |
||||||
|
|
||||||
|
<div class="wait-ajax"></div> |
||||||
|
</div> |
||||||
|
|
||||||
|
{# <div class="buttons_block">#} |
||||||
|
{# <button class="modal-approve" type="button">{% trans 'Выбрать' %}</button>#} |
||||||
|
{# <button class="modal-clear" type="button">{% trans 'Очистить' %}</button>#} |
||||||
|
{# </div>#} |
||||||
|
</div> |
||||||
|
</div> |
||||||
Loading…
Reference in new issue