diff --git a/app/main/views/dashboard.py b/app/main/views/dashboard.py index 03938f4fd..1b904730b 100644 --- a/app/main/views/dashboard.py +++ b/app/main/views/dashboard.py @@ -49,6 +49,7 @@ def service_dashboard(service_id): return render_template( 'views/dashboard/dashboard.html', templates=service_api_client.get_service_templates(service_id)['data'], + updates_url=url_for(".service_dashboard_updates", service_id=service_id), **get_dashboard_statistics_for_service(service_id) ) diff --git a/app/main/views/jobs.py b/app/main/views/jobs.py index 931e03324..2cb602f4b 100644 --- a/app/main/views/jobs.py +++ b/app/main/views/jobs.py @@ -97,7 +97,13 @@ def view_job(service_id, job_id): prefix=current_service['name'] ), counts=_get_job_counts(job, request.args.get('help', 0)), - status=request.args.get('status', '') + status=request.args.get('status', ''), + updates_url=url_for( + ".view_job_updates", + service_id=service_id, + job_id=job['id'], + status=request.args.get('status', '') + ) ) diff --git a/app/templates/components/ajax-block.html b/app/templates/components/ajax-block.html new file mode 100644 index 000000000..6a60014db --- /dev/null +++ b/app/templates/components/ajax-block.html @@ -0,0 +1,15 @@ +{% macro ajax_block(url, key, interval=2, finished=False) %} + {% if not finished %} +
+ {% endif %} + {{ caller() }} + {% if not finished %} +
+ {% endif %} +{% endmacro %} diff --git a/app/templates/partials/jobs/notifications.html b/app/templates/partials/jobs/notifications.html index e20a37342..0ba32b741 100644 --- a/app/templates/partials/jobs/notifications.html +++ b/app/templates/partials/jobs/notifications.html @@ -1,6 +1,9 @@ {% from "components/table.html" import list_table, field, right_aligned_field_heading, date_field, row_heading %} -
+{% if notifications %} +
+{% endif %} + {% if notifications %}

Download as a CSV file @@ -34,4 +37,7 @@ {{ item.status|format_notification_status(item.template.template_type) }} {% endcall %} {% endcall %} -

+ +{% if notifications %} +
+{% endif %} diff --git a/app/templates/partials/jobs/status.html b/app/templates/partials/jobs/status.html index 92e51a37d..6c46bbaf2 100644 --- a/app/templates/partials/jobs/status.html +++ b/app/templates/partials/jobs/status.html @@ -1,3 +1,5 @@ -

- Uploaded by {{ job.created_by.name }} on {{ job.created_at|format_datetime_short }} -

+
+

+ Uploaded by {{ job.created_by.name }} on {{ job.created_at|format_datetime_short }} +

+
diff --git a/app/templates/views/dashboard/dashboard.html b/app/templates/views/dashboard/dashboard.html index 70de92640..6bf37dacf 100644 --- a/app/templates/views/dashboard/dashboard.html +++ b/app/templates/views/dashboard/dashboard.html @@ -4,6 +4,7 @@ {% from "components/show-more.html" import show_more %} {% from "components/message-count-label.html" import message_count_label %} {% from "components/table.html" import list_table, field, right_aligned_field_heading, hidden_field_heading %} +{% from "components/ajax-block.html" import ajax_block %} {% block page_title %} {{ current_service.name }} – GOV.UK Notify @@ -29,30 +30,18 @@ In the last 7 days -
+ {% call ajax_block(updates_url, 'totals') %} {% include 'views/dashboard/_totals.html' %} -
+ {% endcall %} {{ show_more( url_for('.weekly', service_id=current_service.id), 'Compare to previous weeks' ) }} {% if template_statistics|length %} -
+ {% call ajax_block(updates_url, 'template-statistics') %} {% include 'views/dashboard/template-statistics.html' %} -
+ {% endcall %} {{ show_more( url_for('.template_history', service_id=current_service.id), 'See all templates used this year' @@ -60,14 +49,9 @@ {% endif %} {% if jobs %} -
- {% include 'views/dashboard/_jobs.html' %} + {% call ajax_block(updates_url, 'jobs') %} + {% include 'views/dashboard/_jobs.html' %} + {% endcall %} {{ show_more( url_for('.view_jobs', service_id=current_service.id), 'See all uploaded files' @@ -76,15 +60,9 @@ {% if current_user.has_permissions(['manage_settings'], admin_override=True) %}

This year

-
+ {% call ajax_block(updates_url, 'usage') %} {% include 'views/dashboard/_usage.html' %} -
+ {% endcall %} {{ show_more( url_for(".usage", service_id=current_service['id']), 'See usage breakdown' diff --git a/app/templates/views/jobs/job.html b/app/templates/views/jobs/job.html index 74e01624e..663b81752 100644 --- a/app/templates/views/jobs/job.html +++ b/app/templates/views/jobs/job.html @@ -2,6 +2,7 @@ {% from "components/banner.html" import banner %} {% from "components/sms-message.html" import sms_message %} {% from "components/email-message.html" import email_message %} +{% from "components/ajax-block.html" import ajax_block %} {% block page_title %} {{ uploaded_file_name }} – GOV.UK Notify @@ -28,40 +29,16 @@ )}} {% endif %} -
+ {% call ajax_block(updates_url, 'status', finished=finished) %} {% include 'partials/jobs/status.html' %} -
+ {% endcall %} -
+ {% call ajax_block(updates_url, 'counts', finished=finished) %} {% include 'partials/jobs/count.html' %} -
+ {% endcall %} -
+ {% call ajax_block(updates_url, 'notifications', finished=finished) %} {% include 'partials/jobs/notifications.html' %} -
+ {% endcall %} {% endblock %}