Fix middleware redirect bug

This commit is contained in:
zandercymatics 2024-09-24 11:53:01 -06:00
parent 9ccea3f776
commit 45479e86c7
No known key found for this signature in database
GPG key ID: FF4636ABEC9682B7
3 changed files with 14 additions and 4 deletions

View file

@ -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'<label class="organization-admin-label" for="{address_id}">Organization admin {i+1}</label>'
f'<label class="organization-admin-label padding-top-0" for="{address_id}">'
f'Organization admin {i+1}'
'</label>'
)
admin_details += f'<address id="{address_id}" class="margin-bottom-2 dja-address-contact-list">'
admin_details += f'<a href="{change_url}">{escape(portfolio_admin.user)}</a><br>'

View file

@ -80,7 +80,7 @@ class UserPortfolioPermission(TimeStampedModel):
readable_roles = sorted(
[UserPortfolioRoleChoices.get_user_portfolio_role_label(role) for role in self.roles]
)
return f"{self.user}' " f"<Roles: {', '.join(readable_roles)}>" if self.roles else ""
return f"{self.user}" f" <Roles: {', '.join(readable_roles)}>" if self.roles else ""
def get_readable_roles(self):
"""Returns a list of labels of each role in self.roles"""

View file

@ -49,11 +49,13 @@ class CheckUserProfileMiddleware:
self.setup_page,
self.logout_page,
"/admin",
"/__debug__",
]
self.other_excluded_pages = [
self.profile_page,
self.logout_page,
"/admin",
"/__debug__",
]
self.excluded_pages = {