Ejemplo n.º 1
0
    def post(self, request, *args, **kwargs):
        context = self.get_context_data(*args, **kwargs)
        redirect_to = self.check_redirect(context)
        
        if u'login_submit' in self.request.POST:
            login_form = EmailAuthenticationForm(prefix=self.login_prefix, data=request.POST)            
            if login_form.is_valid():
                auth_login(request, login_form.get_user())
                if request.session.test_cookie_worked():
                    request.session.delete_test_cookie()
                return HttpResponseRedirect(redirect_to)
            context['login_form'] = login_form

        if u'registration_submit' in self.request.POST:
            registration_form = EmailUserCreationForm(prefix=self.registration_prefix, data=request.POST)
            context['registration_form'] = registration_form
            if registration_form.is_valid():
                user = registration_form.save()
                user = authenticate(username=user.email, password=registration_form.cleaned_data['password1'])
                auth_login(self.request, user)
                if self.request.session.test_cookie_worked():
                    self.request.session.delete_test_cookie()                
                return HttpResponseRedirect(redirect_to)
        
        self.request.session.set_test_cookie()
        return self.render_to_response(context)
Ejemplo n.º 2
0
    def post(self, request, *args, **kwargs):
        context = self.get_context_data(*args, **kwargs)
        redirect_to = self.check_redirect(context)

        if u'login_submit' in self.request.POST:
            login_form = EmailAuthenticationForm(prefix=self.login_prefix,
                                                 data=request.POST)
            if login_form.is_valid():
                auth_login(request, login_form.get_user())
                if request.session.test_cookie_worked():
                    request.session.delete_test_cookie()
                return HttpResponseRedirect(redirect_to)
            context['login_form'] = login_form

        if u'registration_submit' in self.request.POST:
            registration_form = EmailUserCreationForm(
                prefix=self.registration_prefix, data=request.POST)
            context['registration_form'] = registration_form
            if registration_form.is_valid():
                user = registration_form.save()
                user = authenticate(
                    username=user.email,
                    password=registration_form.cleaned_data['password1'])
                auth_login(self.request, user)
                if self.request.session.test_cookie_worked():
                    self.request.session.delete_test_cookie()
                return HttpResponseRedirect(redirect_to)

        self.request.session.set_test_cookie()
        return self.render_to_response(context)
Ejemplo n.º 3
0
    def test_validator_passed_populated_user(self, mocked_validate):
        mocked_validate.side_effect = ValidationError('That password is rubbish')

        form = EmailUserCreationForm(data={'email': '*****@*****.**', 'password1': 'terry', 'password2': 'terry'})
        self.assertFalse(form.is_valid())

        mocked_validate.assert_called_once_with('terry', form.instance)
        self.assertEqual(mocked_validate.call_args[0][1].email, '*****@*****.**')
        self.assertEqual(form.errors['password2'], ['That password is rubbish'])
Ejemplo n.º 4
0
    def test_validator_passed_populated_user(self, mocked_validate):
        mocked_validate.side_effect = ValidationError(
            'That password is rubbish')

        form = EmailUserCreationForm(data={
            'email': '*****@*****.**',
            'password1': 'terry',
            'password2': 'terry'
        })
        self.assertFalse(form.is_valid())

        mocked_validate.assert_called_once_with('terry', form.instance)
        self.assertEqual(mocked_validate.call_args[0][1].email,
                         '*****@*****.**')
        self.assertEqual(form.errors['password2'],
                         ['That password is rubbish'])