mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-07-30 03:08:56 -04:00
We wouldn’t wan’t anyone just seeing the raw CSV data in their browser – it isn’t clear what a user would do with it at that point. And we wouldn’t want it navigating them away from the send page, because this might cause them to lose their place. This commit forces the file to download using the HTML5 `download` attribute: > This attribute instructs browsers to download a URL instead of navigating to it, so the user will be prompted to save it as a local file. – https://developer.mozilla.org/en-US/docs/Web/HTML/Element/a#attr-download
50 lines
1.5 KiB
HTML
50 lines
1.5 KiB
HTML
{% extends "withnav_template.html" %}
|
|
{% from "components/page-footer.html" import page_footer %}
|
|
{% from "components/file-upload.html" import file_upload %}
|
|
{% from "components/table.html" import list_table, text_field, index_field, index_field_heading %}
|
|
|
|
{% block service_page_title %}
|
|
Upload recipients
|
|
{% endblock %}
|
|
|
|
{% block maincolumn_content %}
|
|
|
|
<h1 class="heading-large">Upload recipients</h1>
|
|
|
|
<div class="page-footer bottom-gutter">
|
|
{{file_upload(
|
|
form.file,
|
|
button_text='Choose a file'
|
|
)}}
|
|
</div>
|
|
|
|
<h2 class="heading-medium">Your file needs to look like this example</h2>
|
|
<p class="hint">
|
|
Save your file as a
|
|
<acronym title="Comma Separated Values">CSV</acronym>,
|
|
<acronym title="Tab Separated Values">TSV</acronym>,
|
|
<acronym title="Open Document Spreadsheet">ODS</acronym>,
|
|
or Microsoft Excel spreadsheet
|
|
</p>
|
|
<div class="spreadsheet">
|
|
{% call(item, row_number) list_table(
|
|
example,
|
|
caption="Example",
|
|
caption_visible=False,
|
|
field_headings=[''] + column_headings
|
|
) %}
|
|
{{ index_field(row_number - 1) }}
|
|
{% for column in item %}
|
|
{{ text_field(column) }}
|
|
{% endfor %}
|
|
{% endcall %}
|
|
</div>
|
|
<p class="table-show-more-link">
|
|
<a href="{{ url_for('.get_example_csv', service_id=current_service.id, template_id=template.id) }}" download="download">Download this example</a>
|
|
</p>
|
|
|
|
<h2 class="heading-medium">Your file will populate this template ({{ template.name }})</h2>
|
|
{{ template|string }}
|
|
|
|
{% endblock %}
|