def test_invalid_email_address(self):
     form = EmailChangeForm(self.user,
                            data={
                                'password': '******',
                                'new_email': '[email protected]'
                            })
     assert not form.is_valid()
 def test_wrong_password(self):
     form = EmailChangeForm(self.user,
                            data={
                                'password': '******',
                                'new_email': '*****@*****.**'
                            })
     assert not form.is_valid()
Example #3
0
def change_email(request):
    """Change email ajax view."""
    form = EmailChangeForm(request.user, request.POST)
    if not form.is_valid():
        return {'status': 'error', 'errors': dict(form.errors.iteritems())}
    else:
        request.user.email = form.cleaned_data['new_email']
        request.user.save()
        return {'status': 'success'}
Example #4
0
def change_email(request):
    """Change user's email. Send confirmation first."""
    if request.method == 'POST':
        form = EmailChangeForm(request.user, request.POST)
        u = request.user
        if form.is_valid() and u.email != form.cleaned_data['email']:
            # Delete old registration profiles.
            EmailChange.objects.filter(user=request.user).delete()
            # Create a new registration profile and send a confirmation email.
            email_change = EmailChange.objects.create_profile(
                user=request.user, email=form.cleaned_data['email'])
            EmailChange.objects.send_confirmation_email(
                email_change, form.cleaned_data['email'])
            return jingo.render(request, 'users/change_email_done.html',
                                {'email': form.cleaned_data['email']})
    else:
        form = EmailChangeForm(request.user,
                               initial={'email': request.user.email})
    return jingo.render(request, 'users/change_email.html', {'form': form})