diff --git a/app/admin_model.py b/app/admin_model.py index a3c4122e..4c65389e 100644 --- a/app/admin_model.py +++ b/app/admin_model.py @@ -24,6 +24,7 @@ from app.models import ( ProviderComplaintState, Phase, ProviderComplaint, + Alias, ) @@ -269,6 +270,26 @@ class AliasAdmin(SLModelView): column_searchable_list = ["id", "user.email", "email", "mailbox.email"] column_filters = ["id", "user.email", "email", "mailbox.email"] + @action( + "disable_email_spoofing_check", + "Disable email spoofing protection", + "Disable email spoofing protection?", + ) + def disable_email_spoofing_check_for(self, ids): + for alias in Alias.filter(Alias.id.in_(ids)): + if alias.disable_email_spoofing_check: + flash( + f"Email spoofing protection is already disabled on {alias.email}", + "warning", + ) + else: + alias.disable_email_spoofing_check = True + flash( + f"Email spoofing protection is disabled on {alias.email}", "success" + ) + + Session.commit() + class MailboxAdmin(SLModelView): column_searchable_list = ["id", "user.email", "email"]