init
This commit is contained in:
70
AuthApp/forms.py
Normal file
70
AuthApp/forms.py
Normal file
@@ -0,0 +1,70 @@
|
||||
# coding=utf-8
|
||||
from django import forms
|
||||
from django.contrib.auth.forms import AuthenticationForm
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from django.core.exceptions import ValidationError
|
||||
from .models import *
|
||||
# from djng.styling.bootstrap3.forms import Bootstrap3ModelForm
|
||||
# from djng.forms import fields, NgModelFormMixin, NgFormValidationMixin, NgModelForm
|
||||
# from datetimepicker.widgets import DateTimePicker
|
||||
# from datetimepicker.helpers import js_loader_url
|
||||
|
||||
|
||||
|
||||
# class PersonForm(NgModelFormMixin, NgFormValidationMixin, NgModelForm, Bootstrap3ModelForm):
|
||||
#
|
||||
# form_name = 'person_form'
|
||||
# scope_prefix = 'person_data'
|
||||
#
|
||||
# class Meta:
|
||||
# model = UserProfile
|
||||
# fields = ['name', 'departament', 'company', 'company_position',
|
||||
# 'days_to_order_cancellation_default', 'days_to_pay_default',
|
||||
# 'pay_terms', 'birthdate',
|
||||
# 'phone', 'email', 'discount', 'document_sign_person']
|
||||
|
||||
|
||||
|
||||
def emailValid(value):
|
||||
if User.objects.filter(username=value, is_active=True):
|
||||
raise ValidationError(_(u'пользователь с таким e-mail уже существует, воспользуйтесь восстановлением пароля'))
|
||||
|
||||
def check_authorizationBy_cleaned_data(cleaned_data):
|
||||
from django.contrib.auth import authenticate
|
||||
print('check_authorizationBy_cleaned_data')
|
||||
username = cleaned_data.get('username')
|
||||
password = cleaned_data.get('password')
|
||||
|
||||
user = authenticate(username=username, password=password)
|
||||
# print(user)
|
||||
if user:
|
||||
# if user.is_active:
|
||||
return user
|
||||
|
||||
def check_activate_by_user(reg_user):
|
||||
print('check_activate_by_user')
|
||||
if reg_user:
|
||||
if reg_user.is_active:
|
||||
return True
|
||||
|
||||
return False
|
||||
|
||||
class LoginForm(AuthenticationForm):
|
||||
username = forms.EmailField(label=_('Email'), widget=forms.TextInput())
|
||||
password = forms.CharField(min_length=8, label=_('Пароль'), widget=forms.PasswordInput(render_value=False))
|
||||
|
||||
def clean(self):
|
||||
# print('check')
|
||||
cleaned_data = super(LoginForm, self).clean()
|
||||
reg_user = check_authorizationBy_cleaned_data(cleaned_data)
|
||||
# print(reg_user)
|
||||
if not reg_user:
|
||||
raise ValidationError(_(u'Пользователь с введенными регистрационными данными не зарегистрирован. Проверьте правильность ввода e-mail и пароля.'))
|
||||
else:
|
||||
if not check_activate_by_user(reg_user):
|
||||
raise ValidationError(_(u'Указанная учетная запись не была Активирована'))
|
||||
return cleaned_data
|
||||
|
||||
|
||||
class ResetPassword_byEmail_Form(AuthenticationForm):
|
||||
email = forms.EmailField(label=_('Email'), widget=forms.TextInput())
|
||||
Reference in New Issue
Block a user