From 45479e86c730968e8dcb60ee36d1ab016fd9dda9 Mon Sep 17 00:00:00 2001 From: zandercymatics <141044360+zandercymatics@users.noreply.github.com> Date: Tue, 24 Sep 2024 11:53:01 -0600 Subject: [PATCH] Fix middleware redirect bug --- src/registrar/admin.py | 14 +++++++++++--- src/registrar/models/user_portfolio_permission.py | 2 +- src/registrar/registrar_middleware.py | 2 ++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/src/registrar/admin.py b/src/registrar/admin.py index 9342460fa..6ab48e28d 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -3006,7 +3006,10 @@ class PortfolioAdmin(ListHeaderAdmin): def get_user_portfolio_permission_admins(self, obj): """Returns each admin on UserPortfolioPermission for a given portfolio.""" - return obj.portfolio_users.filter(portfolio=obj, roles__contains=[UserPortfolioRoleChoices.ORGANIZATION_ADMIN]) + if obj: + return obj.portfolio_users.filter(portfolio=obj, roles__contains=[UserPortfolioRoleChoices.ORGANIZATION_ADMIN]) + else: + return [] def get_non_admin_users(self, obj): # Filter UserPortfolioPermission objects related to the portfolio that do NOT have the "Admin" role @@ -3021,7 +3024,10 @@ class PortfolioAdmin(ListHeaderAdmin): def get_user_portfolio_permission_non_admins(self, obj): """Returns each admin on UserPortfolioPermission for a given portfolio.""" - return obj.portfolio_users.exclude(roles__contains=[UserPortfolioRoleChoices.ORGANIZATION_ADMIN]) + if obj: + return obj.portfolio_users.exclude(roles__contains=[UserPortfolioRoleChoices.ORGANIZATION_ADMIN]) + else: + return [] def display_admins(self, obj): """Get joined users who are Admin, unpack and return an HTML block. @@ -3042,7 +3048,9 @@ class PortfolioAdmin(ListHeaderAdmin): address_id = f"portfolio-administrator-{portfolio_admin.pk}" if len(admins) > 1: admin_details += ( - f'' + f'' ) admin_details += f'
' admin_details += f'{escape(portfolio_admin.user)}