def test_identical_emails_are_invalid(self):
     data = {
         'email': '*****@*****.**',
         'user_email': '*****@*****.**',
     }
     form = AddressActivationForm(data)
     self.assertFalse(form.is_valid())
 def test_invalid_email_is_not_valid(self):
     data = {
         'email': 'les@example',
         'user_email': '*****@*****.**',
     }
     form = AddressActivationForm(data)
     self.assertFalse(form.is_valid())
예제 #3
0
 def test_identical_emails_are_invalid(self):
     data = {
         'email': '*****@*****.**',
         'user_email': '*****@*****.**',
     }
     form = AddressActivationForm(data)
     self.assertFalse(form.is_valid())
예제 #4
0
 def test_invalid_email_is_not_valid(self):
     data = {
         'email': 'les@example',
         'user_email': '*****@*****.**',
     }
     form = AddressActivationForm(data)
     self.assertFalse(form.is_valid())
예제 #5
0
def user_profile(request):
    utils.set_other_emails(request.user)
    try:
        mm_user = MailmanUser.objects.get_or_create_from_django(request.user)
    except MailmanApiError:
        return utils.render_api_error(request)
    if request.method == 'POST':
        if request.POST.get('formname') == 'displayname':
            display_name_form = ChangeDisplayNameForm(request.POST)
            form = AddressActivationForm(
                initial={'user_email': request.user.email})
            if display_name_form.is_valid():
                name = display_name_form.cleaned_data['display_name']
                try:
                    mm_user.display_name = name
                    mm_user.save()
                except MailmanApiError:
                    return utils.render_api_error(request)
                except HTTPError as e:
                    messages.error(request, e)
                else:
                    messages.success(request, _('Display name changed'))
                return redirect('user_profile')
        else:
            display_name_form = ChangeDisplayNameForm(
                initial={'display_name': mm_user.display_name})
            form = AddressActivationForm(request.POST)
            if form.is_valid():
                profile, c = (
                    AddressConfirmationProfile.objects.update_or_create(
                        email=form.cleaned_data['email'], user=request.user,
                        defaults={'activation_key': uuid.uuid4().hex}))
                try:
                    profile.send_confirmation_link(request)
                    messages.success(request, _(
                                     'Please follow the instructions sent via'
                                     ' email to confirm the address'))
                    return redirect('user_profile')
                except (SMTPException, socket_error) as e:
                    if (not isinstance(e, SMTPException) and
                            e.errno != errno.ECONNREFUSED):
                        raise e
                    profile.delete()
                    messages.error(request,
                                   _('Currently emails can not be added,'
                                     ' please try again later'))
    else:
        form = AddressActivationForm(
            initial={'user_email': request.user.email})
        display_name_form = ChangeDisplayNameForm(
            initial={'display_name': mm_user.display_name})
    return render(request, 'postorius/user/profile.html',
                  {'mm_user': mm_user, 'form': form,
                   'name_form': display_name_form})
예제 #6
0
def user_profile(request):
    utils.set_other_emails(request.user)
    try:
        mm_user = MailmanUser.objects.get_or_create_from_django(request.user)
    except MailmanApiError:
        return utils.render_api_error(request)
    if request.method == 'POST':
        if request.POST.get('formname') == 'displayname':
            display_name_form = ChangeDisplayNameForm(request.POST)
            form = AddressActivationForm(
                initial={'user_email': request.user.email})
            if display_name_form.is_valid():
                name = display_name_form.cleaned_data['display_name']
                try:
                    mm_user.display_name = name
                    mm_user.save()
                except MailmanApiError:
                    return utils.render_api_error(request)
                except HTTPError as e:
                    messages.error(request, e)
                else:
                    messages.success(request, _('Display name changed'))
                return redirect('user_profile')
        else:
            display_name_form = ChangeDisplayNameForm(
                initial={'display_name': mm_user.display_name})
            form = AddressActivationForm(request.POST)
            if form.is_valid():
                profile, c = (
                    AddressConfirmationProfile.objects.update_or_create(
                        email=form.cleaned_data['email'],
                        user=request.user,
                        defaults={'activation_key': uuid.uuid4().hex}))
                try:
                    profile.send_confirmation_link(request)
                    messages.success(
                        request,
                        _('Please follow the instructions sent via'
                          ' email to confirm the address'))
                    return redirect('user_profile')
                except (SMTPException, socket_error) as e:
                    if (not isinstance(e, SMTPException)
                            and e.errno != errno.ECONNREFUSED):
                        raise e
                    profile.delete()
                    messages.error(
                        request,
                        _('Currently emails can not be added,'
                          ' please try again later'))
    else:
        form = AddressActivationForm(
            initial={'user_email': request.user.email})
        display_name_form = ChangeDisplayNameForm(
            initial={'display_name': mm_user.display_name})
    return render(request, 'postorius/user/profile.html', {
        'mm_user': mm_user,
        'form': form,
        'name_form': display_name_form
    })
 def test_email_used_by_expired_confirmation_profile_is_valid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertTrue(form.is_valid())
 def test_invalid_email_is_not_valid(self):
     form = AddressActivationForm({'email': 'les@example'})
     self.assertFalse(form.is_valid())
 def test_email_used_by_django_auth_is_invalid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertFalse(form.is_valid())
 def test_valid_email_is_valid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertTrue(form.is_valid())
 def test_email_used_by_expired_confirmation_profile_is_valid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertTrue(form.is_valid())
 def test_invalid_email_is_not_valid(self):
     form = AddressActivationForm({'email': 'les@example'})
     self.assertFalse(form.is_valid())
 def test_email_used_by_django_auth_is_invalid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertFalse(form.is_valid())
 def test_valid_email_is_valid(self):
     form = AddressActivationForm({'email': '*****@*****.**'})
     self.assertTrue(form.is_valid())