Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from django.contrib.auth import authenticate, login as l
- class LoginForm(forms.Form):
- email = forms.EmailField(
- label=_("Email"),
- widget=forms.TextInput(
- attrs={'class': 'form-control', 'placeholder': 'Email'}
- )
- )
- password = forms.CharField(
- label=_("Senha"),
- widget=forms.PasswordInput(
- attrs={'class': 'form-control', 'placeholder': 'Senha'}
- )
- )
- user = None
- error_messages = {
- 'invalid_login': _(u"Informe um email e senha válidos. Lembre-se que \
- as senhas diferenciam maiúsculas de minúsculas."),
- 'no_cookies': _(u"Seu navegador está configurado para não aceitar cookies.\
- Habilite os cookies em seu navegador para poder efetuar login."),
- 'inactive': _(u"Sua conta está inativa."),
- }
- def clean(self):
- email = self.cleaned_data.get('email')
- password = self.cleaned_data.get('password')
- if email and password:
- user = authenticate(username=self.data['email'],
- password=self.data['password'])
- if user is not None:
- if user.is_active:
- self.user = user
- else:
- raise forms.ValidationError(_(u"Sua conta está temporariamente inativa."))
- else:
- raise forms.ValidationError(_(u"O email e/ou senha informados não são válidos."))
- def login(self, request):
- if self.is_valid():
- l(request, self.user)
- return True
- return False
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement