manager: unset verified flag on a modified email address (#30740)
This commit is contained in:
parent
9ff75d0a86
commit
13766a37fd
|
@ -342,6 +342,9 @@ class UserEditView(OtherActionsMixin, ActionMixin, BaseEditView):
|
|||
return self._get_next_url()
|
||||
|
||||
def form_valid(self, form):
|
||||
if 'email' in form.changed_data:
|
||||
self.object.email_verified = False
|
||||
self.object.save()
|
||||
response = super(UserEditView, self).form_valid(form)
|
||||
hooks.call_hooks('event', name='manager-edit-user', user=self.request.user,
|
||||
instance=form.instance, form=form)
|
||||
|
|
|
@ -874,3 +874,23 @@ def test_ou_hide_username(admin, app, db):
|
|||
|
||||
User = get_user_model()
|
||||
assert User.objects.get(email='john.doe@gmail.com')
|
||||
|
||||
|
||||
def test_manager_edit_user_email_verified(app, simple_user, superuser_or_admin):
|
||||
simple_user.email_verified = True
|
||||
simple_user.save()
|
||||
|
||||
url = u'/manage/users/%s/edit/' % simple_user.pk
|
||||
login(app, superuser_or_admin, '/manage/')
|
||||
User = get_user_model()
|
||||
|
||||
user = User.objects.get(id=simple_user.id)
|
||||
assert user.email_verified
|
||||
|
||||
response = app.get(url)
|
||||
form = response.form
|
||||
form.set('email', 'new.email@gmail.net')
|
||||
response = form.submit().follow()
|
||||
|
||||
user = User.objects.get(id=simple_user.id)
|
||||
assert not user.email_verified
|
||||
|
|
Loading…
Reference in New Issue