Fix redirect bug

This commit is contained in:
zandercymatics 2023-12-06 08:49:43 -07:00
parent b7265598ba
commit d358037179
No known key found for this signature in database
GPG key ID: FF4636ABEC9682B7

View file

@ -1,6 +1,7 @@
import logging
from django import forms
from django.http import HttpResponse
from django.shortcuts import redirect
from django_fsm import get_available_FIELD_transitions
from django.contrib import admin, messages
from django.contrib.auth.admin import UserAdmin as BaseUserAdmin
@ -342,6 +343,17 @@ class UserDomainRoleAdmin(ListHeaderAdmin):
autocomplete_fields = ["user", "domain"]
# Fixes a bug where non-superusers are redirected to the main page
def delete_view(self, request, object_id, extra_context=None):
"""Custom delete_view implementation that specifies redirect behaviour"""
response = super().delete_view(request, object_id, extra_context)
if isinstance(response, HttpResponseRedirect) and not request.user.has_perm("registrar.full_access_permission"):
url = reverse("admin:registrar_userdomainrole_changelist")
return redirect(url)
else:
return response
class DomainInvitationAdmin(ListHeaderAdmin):
"""Custom domain invitation admin class."""