From 61b71c298ebb230a3fa2996b4b1c3fa2dc6f77b4 Mon Sep 17 00:00:00 2001 From: zandercymatics <141044360+zandercymatics@users.noreply.github.com> Date: Thu, 11 Apr 2024 16:05:42 -0600 Subject: [PATCH] Fix minor bug --- src/registrar/admin.py | 18 ++++++++---------- .../admin/includes/detail_table_fieldset.html | 4 ++++ 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/registrar/admin.py b/src/registrar/admin.py index 8e5d40c05..bce9087be 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -801,7 +801,7 @@ class WebsiteAdmin(ListHeaderAdmin): def response_change(self, request, obj): """ - Override to redirect users back to the same page after saving. + Override to redirect users back to the previous page after saving. """ superuser_perm = request.user.has_perm("registrar.full_access_permission") analyst_perm = request.user.has_perm("registrar.analyst_access_permission") @@ -1956,19 +1956,17 @@ class DraftDomainAdmin(ListHeaderAdmin): def response_change(self, request, obj): """ - Override to redirect users back to the same page after saving. + Override to redirect users back to the previous page after saving. """ superuser_perm = request.user.has_perm("registrar.full_access_permission") analyst_perm = request.user.has_perm("registrar.analyst_access_permission") - + return_path = request.GET.get('return_path') # Don't redirect to the website page on save if the user is an analyst. - # Rather, just redirect back to the same change page. - if analyst_perm and not superuser_perm: - opts = obj._meta - pk_value = obj._get_pk_val() - return HttpResponseRedirect( - reverse("admin:%s_%s_change" % (opts.app_label, opts.model_name), args=(pk_value,)) - ) + # Rather, just redirect back to the originating page. + if (analyst_perm and not superuser_perm) and return_path: + # Redirect to the return path if it exists + return HttpResponseRedirect(return_path) + return super().response_change(request, obj) diff --git a/src/registrar/templates/django/admin/includes/detail_table_fieldset.html b/src/registrar/templates/django/admin/includes/detail_table_fieldset.html index 96d9eb547..3e832922d 100644 --- a/src/registrar/templates/django/admin/includes/detail_table_fieldset.html +++ b/src/registrar/templates/django/admin/includes/detail_table_fieldset.html @@ -27,6 +27,10 @@ This is using a custom implementation fieldset.html (see admin/fieldset.html) {% endif %} + {% elif field.field.name == "requested_domain" %} + {% with current_path=request.get_full_path %} + {{ original.requested_domain }} + {% endwith%} {% elif field.field.name == "current_websites" %} {% comment %} The "website" model is essentially just a text field.