Disable forward when account is disabled.

see #1761
This commit is contained in:
Antoine Nguyen
2020-10-23 16:31:05 +02:00
parent 62db847bd4
commit 1aed875f68
2 changed files with 28 additions and 0 deletions
+5
View File
@@ -204,6 +204,11 @@ class AccountFormGeneral(forms.ModelForm):
account.set_password(self.cleaned_data["password2"])
account.save()
account.role = self.cleaned_data["role"]
if hasattr(account, "mailbox"):
# Update forward status according to account status
models.Alias.objects.filter(
address=account.email, internal=False).update(
enabled=account.is_active)
return account
+23
View File
@@ -119,6 +119,29 @@ class AccountTestCase(ModoTestCase):
account = User.objects.get(username=values["username"])
self.assertEqual(account.language, "fr")
def test_forward_updated_on_edit(self):
account = User.objects.get(username="user@test.com")
forward = models.Alias.objects.create(address=account.email, internal=False)
values = {
"username": "user@test.com",
"role": "SimpleUsers",
"quota_act": True,
"is_active": False,
"email": "user@test.com",
"language": "en"
}
self.ajax_post(
reverse("admin:account_change", args=[account.id]), values
)
forward.refresh_from_db()
self.assertFalse(forward.enabled)
values["is_active"] = True
self.ajax_post(
reverse("admin:account_change", args=[account.id]), values
)
forward.refresh_from_db()
self.assertTrue(forward.enabled)
def test_aliases_update_on_rename(self):
"""Check if aliases are updated on mailbox rename."""
account = User.objects.get(username="user@test.com")