diff --git a/src/registrar/admin.py b/src/registrar/admin.py index d731601c1..5a1991708 100644 --- a/src/registrar/admin.py +++ b/src/registrar/admin.py @@ -1115,6 +1115,8 @@ class DomainRequestAdmin(ListHeaderAdmin): "requested_domain", "approved_domain", "alternative_domains", + "other_contacts", + "current_websites", "purpose", "submitter", "no_other_contacts_rationale", @@ -1134,6 +1136,8 @@ class DomainRequestAdmin(ListHeaderAdmin): # Table ordering ordering = ["requested_domain__name"] + change_form_template = "django/admin/domain_request_change_form.html" + # Trigger action when a fieldset is changed def save_model(self, request, obj, form, change): """Custom save_model definition that handles edge cases""" diff --git a/src/registrar/assets/sass/_theme/_admin.scss b/src/registrar/assets/sass/_theme/_admin.scss index ea1d0fa24..934b499df 100644 --- a/src/registrar/assets/sass/_theme/_admin.scss +++ b/src/registrar/assets/sass/_theme/_admin.scss @@ -317,6 +317,20 @@ input.admin-confirm-button { color: $dhs-blue-70; } +details.dja-detail-table { + background-color: var(--darkened-bg); + display: inline-table; + .dja-details-summary { + color: var(--header-link-color); + background-color: var(--primary); + } + .dja-details-contents { + tr { + background-color: var(--darkened-bg); + } + } +} + .admin-icon-group { position: relative; display: flex; diff --git a/src/registrar/templates/django/admin/domain_request_change_form.html b/src/registrar/templates/django/admin/domain_request_change_form.html new file mode 100644 index 000000000..e48ab37a0 --- /dev/null +++ b/src/registrar/templates/django/admin/domain_request_change_form.html @@ -0,0 +1,8 @@ +{% extends 'admin/change_form.html' %} +{% load i18n static %} + +{% block field_sets %} + {% for fieldset in adminform %} + {% include "django/admin/includes/domain_request_fieldset.html" %} + {% endfor %} +{% endblock %} diff --git a/src/registrar/templates/django/admin/includes/domain_request_detail_table.html b/src/registrar/templates/django/admin/includes/domain_request_detail_table.html new file mode 100644 index 000000000..f34ffa491 --- /dev/null +++ b/src/registrar/templates/django/admin/includes/domain_request_detail_table.html @@ -0,0 +1,28 @@ +{% load i18n static %} + + +
+ Details +
+ {% if user.title or user.email or user.phone %} + + + + + + + + + + + + + + + +
Title{{ user.title }}
Email{{ user.email }}
Phone{{ user.phone }}
+ {% else %} +
No details found
+ {% endif %} +
+
\ No newline at end of file diff --git a/src/registrar/templates/django/admin/includes/domain_request_fieldset.html b/src/registrar/templates/django/admin/includes/domain_request_fieldset.html new file mode 100644 index 000000000..d034d2441 --- /dev/null +++ b/src/registrar/templates/django/admin/includes/domain_request_fieldset.html @@ -0,0 +1,62 @@ +{% extends "admin/fieldset.html" %} + +{% comment %} +This is using a custom implementation fieldset.html (see admin/fieldset.html) +{% endcomment %} +{% block fieldset_lines %} +{% for line in fieldset %} +
+ {% if line.fields|length == 1 %}{{ line.errors }}{% else %}
{% endif %} + {% for field in line %} +
+ {% if not line.fields|length == 1 and not field.is_readonly %}{{ field.errors }}{% endif %} +
+ {% if field.is_checkbox %} + {{ field.field }}{{ field.label_tag }} + {% else %} + {{ field.label_tag }} + {% if field.is_readonly %} +
{{ field.contents }}
+ {% else %} + {{ field.field }} + {% endif %} + {% endif %} +
+ {% if field.field.name == "creator" %} + {% include "django/admin/includes/domain_request_detail_table.html" with user=original.creator start_opened=True %} + {% elif field.field.name == "submitter" %} + {% include "django/admin/includes/domain_request_detail_table.html" with user=original.submitter start_opened=True %} + {% elif field.field.name == "authorizing_official" %} + {% include "django/admin/includes/domain_request_detail_table.html" with user=original.authorizing_official start_opened=True %} + {% elif field.field.name == "other_contacts" %} +
+ Details +
+ + + {% for contact in original.other_contacts.all %} + + + + + + + {% endfor %} + +
{{contact.first_name}} {{contact.last_name}}{{ contact.title }}{{ contact.email }}{{ contact.phone }}
+
+
+ {% endif %} + + {% if field.field.help_text %} +
+
{{ field.field.help_text|safe }}
+
+ {% endif %} +
+ {% endfor %} + {% if not line.fields|length == 1 %}
{% endif %} +
+{% endfor %} + +{% endblock fieldset_lines %}