mirror of
https://github.com/cisagov/manage.get.gov.git
synced 2025-05-19 10:59:21 +02:00
Merge branch 'main' into za/1947-contact-info-domain-information-inline
This commit is contained in:
commit
6191fcce21
18 changed files with 883 additions and 45 deletions
|
@ -663,6 +663,7 @@ class ContactAdmin(ListHeaderAdmin):
|
|||
list_display = [
|
||||
"contact",
|
||||
"email",
|
||||
"user_exists",
|
||||
]
|
||||
# this ordering effects the ordering of results
|
||||
# in autocomplete_fields for user
|
||||
|
@ -679,6 +680,13 @@ class ContactAdmin(ListHeaderAdmin):
|
|||
|
||||
change_form_template = "django/admin/email_clipboard_change_form.html"
|
||||
|
||||
def user_exists(self, obj):
|
||||
"""Check if the Contact has a related User"""
|
||||
return "Yes" if obj.user is not None else "No"
|
||||
|
||||
user_exists.short_description = "Is user" # type: ignore
|
||||
user_exists.admin_order_field = "user" # type: ignore
|
||||
|
||||
# We name the custom prop 'contact' because linter
|
||||
# is not allowing a short_description attr on it
|
||||
# This gets around the linter limitation, for now.
|
||||
|
@ -1435,12 +1443,36 @@ class DomainRequestAdmin(ListHeaderAdmin):
|
|||
"""
|
||||
Override changelist_view to set the selected value of status filter.
|
||||
"""
|
||||
# there are two conditions which should set the default selected filter:
|
||||
# 1 - there are no query parameters in the request and the request is the
|
||||
# initial request for this view
|
||||
# 2 - there are no query parameters in the request and the referring url is
|
||||
# the change view for a domain request
|
||||
should_apply_default_filter = False
|
||||
# use http_referer in order to distinguish between request as a link from another page
|
||||
# and request as a removal of all filters
|
||||
http_referer = request.META.get("HTTP_REFERER", "")
|
||||
# if there are no query parameters in the request
|
||||
# and the request is the initial request for this view
|
||||
if not bool(request.GET) and request.path not in http_referer:
|
||||
if not bool(request.GET):
|
||||
# if the request is the initial request for this view
|
||||
if request.path not in http_referer:
|
||||
should_apply_default_filter = True
|
||||
# elif the request is a referral from changelist view or from
|
||||
# domain request change view
|
||||
elif request.path in http_referer:
|
||||
# find the index to determine the referring url after the path
|
||||
index = http_referer.find(request.path)
|
||||
# Check if there is a character following the path in http_referer
|
||||
next_char_index = index + len(request.path)
|
||||
if index + next_char_index < len(http_referer):
|
||||
next_char = http_referer[next_char_index]
|
||||
|
||||
# Check if the next character is a digit, if so, this indicates
|
||||
# a change view for domain request
|
||||
if next_char.isdigit():
|
||||
should_apply_default_filter = True
|
||||
|
||||
if should_apply_default_filter:
|
||||
# modify the GET of the request to set the selected filter
|
||||
modified_get = copy.deepcopy(request.GET)
|
||||
modified_get["status__in"] = "submitted,in review,action needed"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue