mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-08-18 05:29:38 -04:00
This follows the pattern of what we’ve done with services, users and events. It gives us a way of neatly instantiating a model for each item in the list we get back from the API and reduces the complexity of the view layer code. Now is a good time to do this because we’re going to be making a bunch of changes to the jobs pages, and those changes will be easier to code and understand with a sensible model behind them.
48 lines
1.7 KiB
HTML
48 lines
1.7 KiB
HTML
{% from "components/table.html" import list_table, field, right_aligned_field_heading, row_heading %}
|
|
{% from "components/big-number.html" import big_number -%}
|
|
|
|
<div class='dashboard-table ajax-block-container'>
|
|
{% call(item, row_number) list_table(
|
|
jobs,
|
|
caption="Recent files uploaded",
|
|
caption_visible=False,
|
|
empty_message=(
|
|
'Upload a letter and Notify will print, pack and post it for you.' if current_service.can_upload_letters else 'You have not uploaded any files recently'
|
|
),
|
|
field_headings=[
|
|
'File',
|
|
'Sending',
|
|
'Delivered',
|
|
'Failed'
|
|
],
|
|
field_headings_visible=True if jobs else False
|
|
) %}
|
|
{% call row_heading() %}
|
|
<div class="file-list">
|
|
{% if item.upload_type == 'letter' %}
|
|
<a class="file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id) }}">{{ item.original_file_name }}</a>
|
|
{% else %}
|
|
<a class="file-list-filename" href="{{ url_for('.view_job', service_id=current_service.id, job_id=item.id) }}">{{ item.original_file_name }}</a>
|
|
{% endif %}
|
|
<span class="file-list-hint">
|
|
Sent {{
|
|
(item.scheduled_for or item.created_at)|format_datetime_relative
|
|
}}
|
|
</span>
|
|
</div>
|
|
{% endcall %}
|
|
{% call field() %}
|
|
{{ big_number(
|
|
item.notifications_sending,
|
|
smallest=True
|
|
) }}
|
|
{% endcall %}
|
|
{% call field() %}
|
|
{{ big_number(item.notifications_delivered, smallest=True) }}
|
|
{% endcall %}
|
|
{% call field(status='error' if item.high_failure_rate else '') %}
|
|
{{ big_number(item.notifications_failed, smallest=True) }}
|
|
{% endcall %}
|
|
{% endcall %}
|
|
</div>
|