mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-04-13 22:01:12 -04:00
Includes: - in gulpfile.js: - add details macro to list of those copied from GOVUK Frontend - remove existing details polyfill - convert all, but one, <details> tags to use GOVUK Frontend details component - add jinja boolean filter to help setting 'open' attribute of <details> tags Notes on the `<details>` not included in this: The `<details>` used for notifications items on the API integration page is not possible to reproduce with the GOV.UK Frontend macro so I'm splitting the resulting work out into it's own commit.
126 lines
3.7 KiB
HTML
126 lines
3.7 KiB
HTML
{% extends "views/platform-admin/_base_template.html" %}
|
|
{% from "components/textbox.html" import textbox %}
|
|
{% from "components/checkbox.html" import checkbox %}
|
|
{% from "components/page-footer.html" import page_footer %}
|
|
{% from "components/big-number.html" import big_number, big_number_with_status %}
|
|
{% from "components/message-count-label.html" import message_count_label %}
|
|
{% from "components/table.html" import mapping_table, field, stats_fields, row_group, row, right_aligned_field_heading, hidden_field_heading, text_field %}
|
|
{% from "components/form.html" import form_wrapper %}
|
|
{% from "components/details/macro.njk" import govukDetails %}
|
|
|
|
{% macro stats_fields(channel, data) -%}
|
|
|
|
{% call field(border=False) %}
|
|
<span class="heading-medium">{{ channel.title() }}</span>
|
|
{% endcall %}
|
|
|
|
{% call field(align='right', border=False) %}
|
|
{{ big_number(data[channel]['sending'], smaller=True) }}
|
|
{% endcall %}
|
|
|
|
{% call field(align='right', border=False) %}
|
|
{{ big_number(data[channel]['delivered'], smaller=True) }}
|
|
{% endcall %}
|
|
|
|
{% call field(align='right', status='error' if data[channel]['failed'], border=False) %}
|
|
{{ big_number(data[channel]['failed'], smaller=True) }}
|
|
{% endcall %}
|
|
|
|
{%- endmacro %}
|
|
|
|
{% macro services_table(services, caption) %}
|
|
{% call(item, row_number) mapping_table(
|
|
caption=caption,
|
|
caption_visible=False,
|
|
field_headings=[
|
|
'Service',
|
|
hidden_field_heading('Type'),
|
|
right_aligned_field_heading('Sending'),
|
|
right_aligned_field_heading('Delivered'),
|
|
right_aligned_field_heading('Failed')
|
|
],
|
|
field_headings_visible=True
|
|
) %}
|
|
|
|
{% for service in services %}
|
|
|
|
{% call row_group() %}
|
|
|
|
{% call row() %}
|
|
{% call field(border=False) %}
|
|
<a href="{{ url_for('main.service_dashboard', service_id=service['id']) }}" class="browse-list-link">{{ service['name'] }}</a>
|
|
{% endcall %}
|
|
|
|
{{ stats_fields('email', service['stats']) }}
|
|
{% endcall %}
|
|
|
|
{% call row() %}
|
|
{% if not service['active'] %}
|
|
{% call field(status='default', border=False) %}
|
|
<span class="heading-medium">archived</span>
|
|
{% endcall %}
|
|
{% elif service['research_mode'] %}
|
|
{% call field(border=False) %}
|
|
<span class="research-mode">research mode</span>
|
|
{% endcall %}
|
|
{% elif not service['restricted'] %}
|
|
{% call field(status='error', border=False) %}
|
|
<span class="heading-medium">Live</span>
|
|
{% endcall %}
|
|
{% else %}
|
|
{% call field(border=False) %}
|
|
{% endcall %}
|
|
{% endif %}
|
|
|
|
{{ stats_fields('sms', service['stats']) }}
|
|
{% endcall %}
|
|
|
|
{% call row() %}
|
|
|
|
{% call field(border=False) %}
|
|
|
|
{% endcall %}
|
|
{{ stats_fields('letter', service['stats']) }}
|
|
|
|
{% endcall %}
|
|
|
|
{% endcall %}
|
|
|
|
{% endfor %}
|
|
|
|
{% endcall %}
|
|
{% endmacro %}
|
|
|
|
|
|
{% block per_page_title %}
|
|
{{ page_title|capitalize }}
|
|
{% endblock %}
|
|
|
|
{% block platform_admin_content %}
|
|
|
|
<h1 class="heading-large">
|
|
{{ page_title|capitalize }}
|
|
</h1>
|
|
|
|
|
|
{% set details_content %}
|
|
{% call form_wrapper(method="get") %}
|
|
{{ textbox(form.start_date, hint="Enter start date in format YYYY-MM-DD") }}
|
|
{{ textbox(form.end_date, hint="Enter end date in format YYYY-MM-DD") }}
|
|
{{ checkbox(form.include_from_test_key) }}
|
|
</br>
|
|
<button type="submit" class="button">Filter</button>
|
|
{% endcall %}
|
|
{% endset %}
|
|
|
|
{{ govukDetails({
|
|
"summaryText": "Apply filters",
|
|
"html": details_content
|
|
}) }}
|
|
|
|
{% include "views/platform-admin/_global_stats.html" %}
|
|
|
|
{{ services_table(services, page_title|capitalize) }}
|
|
|
|
{% endblock %}
|