From 3eebd3fc158cfc8a20a6031aca012f87b5aa0ce5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Lebleu?= Date: Thu, 28 Jan 2021 15:21:03 +0100 Subject: [PATCH] Add migration to disable disabled accounts' aliases --- .../0018_update_disabled_accounts_aliases.py | 28 +++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 modoboa/admin/migrations/0018_update_disabled_accounts_aliases.py diff --git a/modoboa/admin/migrations/0018_update_disabled_accounts_aliases.py b/modoboa/admin/migrations/0018_update_disabled_accounts_aliases.py new file mode 100644 index 000000000..b12909e49 --- /dev/null +++ b/modoboa/admin/migrations/0018_update_disabled_accounts_aliases.py @@ -0,0 +1,28 @@ +# Generated by Django 2.2.17 on 2021-01-28 13:40 + +from django.db import migrations + + +def update_disabled_accounts_aliases(apps, schema_editor): + User = apps.get_model('core', 'User') + Alias = apps.get_model('admin', 'Alias') + + disabled_accounts = User.objects.filter( + mailbox__isnull=False, is_active=False) + + Alias.objects.filter( + address__in=list(disabled_accounts.values_list('email', flat=True)), + enabled=True, + ).update(enabled=False) + + +class Migration(migrations.Migration): + + dependencies = [ + ('admin', '0017_alarm'), + ('core', '0022_user_tfa_enabled'), + ] + + operations = [ + migrations.RunPython(update_disabled_accounts_aliases), + ]