ungleich-user/dal/forms.py

43 lines
1.4 KiB
Python

from django import forms
from django.contrib.auth import authenticate
from django.shortcuts import render
from django.utils.translation import ugettext_lazy as _
class LoginForm(forms.Form):
email = forms.CharField(widget=forms.TextInput())
password = forms.CharField(widget=forms.PasswordInput())
class Meta:
fields = ['email', 'password']
def clean(self):
email = self.cleaned_data.get('email')
password = self.cleaned_data.get('password')
if self.errors:
return self.cleaned_data
is_auth = authenticate(username=email, password=password)
if not is_auth:
raise forms.ValidationError(
_("Your username and/or password were incorrect.")
)
elif is_auth.validated == 0:
raise forms.ValidationError(
_("Your account is not activated yet.")
)
return self.cleaned_data
def clean_email(self):
email = self.cleaned_data.get('email')
return email
# try:
# CustomUser.objects.get(email=email)
# return email
# except CustomUser.DoesNotExist:
# raise forms.ValidationError(_("User does not exist"))
def form_valid(self, form):
form.save()
return render(self.request, 'useroptions.html', {'user': self.get_context_data()})