Files
notifications-admin/app/templates/views/check/column-errors.html
T

164 lines
5.8 KiB
HTML
Raw Normal View History

2015-12-14 16:53:07 +00:00
{% extends "withnav_template.html" %}
{% from "components/banner.html" import banner_wrapper %}
{% from "components/radios.html" import radio_select %}
2016-04-05 11:16:29 +01:00
{% from "components/table.html" import list_table, field, text_field, index_field, hidden_field_heading %}
2016-02-17 14:20:55 +00:00
{% from "components/file-upload.html" import file_upload %}
2016-01-07 20:11:22 +00:00
{% from "components/page-footer.html" import page_footer %}
2016-06-03 14:48:21 +01:00
{% from "components/message-count-label.html" import message_count_label %}
2016-06-03 13:52:15 +01:00
2017-02-13 15:20:56 +00:00
{% set file_contents_header_id = 'file-preview' %}
{% macro skip_to_file_contents() %}
<p class="visually-hidden">
<a href="#{{ file_contents_header_id }}">Skip to file contents</a>
</p>
{% endmacro %}
2017-02-13 10:45:15 +00:00
{% block service_page_title %}
Error
{% endblock %}
2015-12-14 16:53:07 +00:00
{% block maincolumn_content %}
<div class="bottom-gutter">
{% call banner_wrapper(type='dangerous') %}
{% if recipients.too_many_rows %}
2017-07-20 11:28:26 +01:00
<h1 class='banner-title' data-module="track-error" data-error-type="Too many rows" data-error-label="{{ upload_id }}">
Your file has too many rows
</h1>
<p>
Notify can process up to
{{ "{:,}".format(recipients.max_rows) }} rows at once. Your
file has {{ "{:,}".format(recipients|length) }} rows.
</p>
{% elif not count_of_recipients %}
2017-02-27 14:46:01 +00:00
2017-07-20 11:28:26 +01:00
<h1 class='banner-title' data-module="track-error" data-error-type="No rows" data-error-label="{{ upload_id }}">
2017-02-27 14:46:01 +00:00
Your file is missing some rows
</h1>
<p>
It needs at least one row of data, and {{ recipients.missing_column_headers | sort() | formatted_list(
prefix='a column called',
prefix_plural='columns called'
) }}.
</p>
{% elif not recipients.has_recipient_columns %}
2016-06-03 13:52:15 +01:00
2017-07-20 11:28:26 +01:00
<h1 class='banner-title' data-module="track-error" data-error-type="Missing recipient columns" data-error-label="{{ upload_id }}">
Your file needs {{ recipients.recipient_column_headers | formatted_list(
prefix='a column called',
prefix_plural='columns called'
) }}
2016-06-03 13:52:15 +01:00
</h1>
<p>
Right now it has {{ recipients.column_headers | formatted_list(
2017-02-13 15:04:12 +00:00
prefix='one column, called ',
prefix_plural='columns called '
2016-06-03 13:52:15 +01:00
) }}.
</p>
{% elif recipients.missing_column_headers %}
2016-06-03 13:52:15 +01:00
2017-07-20 11:28:26 +01:00
<h1 class='banner-title' data-module="track-error" data-error-type="Missing placeholder columns" data-error-label="{{ upload_id }}">
2016-06-03 13:52:15 +01:00
The columns in your file need to match the double brackets in
your template
</h1>
<p>
Your file is missing {{ recipients.missing_column_headers | formatted_list(
conjunction='and',
2017-02-13 15:04:12 +00:00
prefix='a column called ',
prefix_plural='columns called '
2016-06-03 14:30:17 +01:00
) }}.
2016-06-03 13:52:15 +01:00
</p>
{% elif not recipients.allowed_to_send_to %}
{% with
count_of_recipients=count_of_recipients,
template_type_label=recipients.recipient_column_headers[0]
%}
{% include "partials/check/not-allowed-to-send-to.html" %}
{% endwith %}
{% elif recipients.more_rows_than_can_send %}
{% include "partials/check/too-many-messages.html" %}
{% endif %}
{{ skip_to_file_contents() }}
{% endcall %}
</div>
2017-02-13 15:20:56 +00:00
<div class="bottom-gutter-3-2">
{% if request.args.from_test %}
<a href="{{ back_link }}" class="page-footer-back-link">Back</a>
{% else %}
{{file_upload(form.file, button_text='Re-upload your file')}}
{% endif %}
2017-02-13 15:20:56 +00:00
</div>
{% if not request.args.from_test %}
2016-02-17 14:20:55 +00:00
<h2 class="heading-medium" id="{{ file_contents_header_id }}">{{ original_file_name }}</h2>
{% call(item, row_number) list_table(
recipients.initial_annotated_rows_with_errors if row_errors and not recipients.missing_column_headers else recipients.initial_annotated_rows,
caption=original_file_name,
caption_visible=False,
field_headings=[
'<span class="visually-hidden">Row in file</span><span aria-hidden="true">1</span>'|safe
] + recipients.column_headers
) %}
2017-05-23 14:21:59 +01:00
{% call index_field() %}
<span class="{% if item.index in recipients.rows_with_errors %}table-field-error{% endif %}">
{{ item.index + 2 }}
</span>
{% endcall %}
{% for column in recipients.column_headers %}
{% if item['columns'][column].error and not recipients.missing_column_headers %}
{% call field() %}
2017-05-23 14:21:59 +01:00
<span>
<span class="table-field-error-label">{{ item['columns'][column].error }}</span>
{{ item['columns'][column].data if item['columns'][column].data != None }}
</span>
{% endcall %}
{% elif item['columns'][column].ignore %}
{{ text_field(item['columns'][column].data or '', status='default') }}
{% else %}
{{ text_field(item['columns'][column].data or '') }}
{% endif %}
2016-05-16 15:31:35 +01:00
{% endfor %}
{% if item['columns'].get(None) %}
{% for column in item['columns'][None].data %}
{{ text_field(column, status='default') }}
{% endfor %}
{% endif %}
{% endcall %}
{% endif %}
{% if recipients.too_many_rows %}
<p class="table-show-more-link">
Cant show the contents of this file
</p>
{% elif count_of_displayed_recipients < count_of_recipients %}
<p class="table-show-more-link">
{% if row_errors and not recipients.missing_column_headers %}
2016-04-07 14:30:28 +01:00
Only showing the first {{ count_of_displayed_recipients }} rows with errors
{% else %}
Only showing the first {{ count_of_displayed_recipients }} rows
{% endif %}
</p>
{% elif row_errors and not recipients.missing_column_headers %}
2016-04-07 14:30:28 +01:00
<p class="table-show-more-link">
Only showing rows with errors
</p>
{% endif %}
<h2 class="heading-medium">Preview of {{ template.name }}</h2>
{{ template|string }}
{% endblock %}