Resend confirmation email

When trying to login using an unverified email address, resend confirmation email.
This commit is contained in:
Mariano Baragiola 2017-10-31 13:24:37 -03:00
parent e4c04528a2
commit 8de37ca465
2 changed files with 4 additions and 0 deletions

View File

@ -104,6 +104,9 @@ class LoginSerializer(serializers.Serializer):
if app_settings.EMAIL_VERIFICATION == app_settings.EmailVerificationMethod.MANDATORY:
email_address = user.emailaddress_set.get(email=user.email)
if not email_address.verified:
email_address.send_confirmation(
request=self.context.get('request')
)
raise serializers.ValidationError(_('E-mail is not verified.'))
attrs['user'] = user

View File

@ -482,6 +482,7 @@ class APIBasicTests(TestsMixin, TestCase):
data={"key": email_confirmation.key},
status_code=status.HTTP_200_OK
)
self.assertEqual(len(mail.outbox), mail_count + 1)
# try to login again
self._login()