mirror of
https://github.com/jwinterm/modoboa.git
synced 2026-10-18 05:51:26 +02:00
Merge pull request #2044 from modoboa/fix/disable_forward_with_account
Disable forward when account is disabled.
This commit is contained in:
@@ -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
|
||||
|
||||
|
||||
|
||||
@@ -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")
|
||||
|
||||
Reference in New Issue
Block a user