mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-13 10:28:51 -04:00
The link to download a CSV of notifications looks like `/endpoint?download=csv`. This not not very web idiomatic. The service manual recommends: > Only use query strings for URLs with unordered parameters like options > to search pages. The CSV is a different representation of the same data, it does not perform searching or filtering on the data. The proper way (as we do elsewhere in this app) is to put an extension on the endpoint to indicate an alternate representation, eg `/endpoint.csv`
78 lines
2.4 KiB
HTML
78 lines
2.4 KiB
HTML
{% extends "withnav_template.html" %}
|
||
{% from "components/table.html" import list_table, field, text_field, link_field, right_aligned_field_heading, hidden_field_heading %}
|
||
{% from "components/previous-next-navigation.html" import previous_next_navigation %}
|
||
{% from "components/page-footer.html" import page_footer %}
|
||
{% from "components/pill.html" import pill %}
|
||
{% from "components/message-count-label.html" import message_count_label %}
|
||
|
||
{% block page_title %}
|
||
{{ message_count_label(99, message_type, suffix='') | capitalize }} – GOV.UK Notify
|
||
{% endblock %}
|
||
|
||
{% block maincolumn_content %}
|
||
|
||
<h1 class="heading-large">
|
||
|
||
<span class="visually-hidden">
|
||
{%- if request_args.get('status') != 'delivered,failed' -%}
|
||
{%- for label, option, _ in status_filters -%}
|
||
{%- if request_args.get('status', 'delivered,failed') == option -%}{{label}} {% endif -%}
|
||
{%- endfor -%}
|
||
{%- endif -%}
|
||
</span>
|
||
|
||
{{- message_count_label(99, message_type, suffix='') | capitalize }}
|
||
|
||
</h1>
|
||
|
||
<div class='bottom-gutter'>
|
||
{{ pill(
|
||
'Status',
|
||
status_filters,
|
||
request_args.get('status', '')
|
||
) }}
|
||
</div>
|
||
|
||
{% if notifications %}
|
||
<p class="bottom-gutter">
|
||
<a href="{{ download_link }}" download="download" class="heading-small">Download as a CSV file</a>
|
||
 
|
||
Delivery information is available for 7 days
|
||
</p>
|
||
{% endif %}
|
||
|
||
{% call(item, row_number) list_table(
|
||
notifications,
|
||
caption="Recent activity",
|
||
caption_visible=False,
|
||
empty_message='No messages found',
|
||
field_headings=['Recipient', 'Status', 'Started'],
|
||
field_headings_visible=False
|
||
) %}
|
||
|
||
{% call field() %}
|
||
<p>
|
||
{{ item.to }}
|
||
</p>
|
||
<p class="hint">
|
||
<a href="{{ url_for('.view_template_version', service_id=current_service.id, template_id=item.template.id, version=item.template_version) }}">{{ item.template.name }}</a>
|
||
sent from
|
||
{% if item.job %}
|
||
<a href="{{ url_for(".view_job", service_id=current_service.id, job_id=item.job.id) }}">{{ item.job.original_file_name }}</a>
|
||
{% else %}
|
||
an API call
|
||
{% endif %}
|
||
</p>
|
||
{% endcall %}
|
||
|
||
{{ text_field(item.status|format_notification_status) }}
|
||
|
||
{% call field(align='right') %}
|
||
{{ (item.updated_at or item.created_at)|format_datetime_short }}
|
||
{% endcall %}
|
||
{% endcall %}
|
||
|
||
{{ previous_next_navigation(prev_page, next_page) }}
|
||
|
||
{% endblock %}
|