Files
notifications-admin/app/templates/components/file-upload.html
T

45 lines
1.6 KiB
HTML
Raw Normal View History

{% from "components/button/macro.njk" import govukButton %}
{% macro file_upload(
field,
allowed_file_extensions,
action=None,
button_text="Choose file",
alternate_link=None,
2018-09-26 16:42:40 +01:00
alternate_link_text=None,
hint=None,
show_errors=True
2018-09-26 16:42:40 +01:00
) %}
<form method="post" enctype="multipart/form-data" {% if action %}action="{{ action }}"{% endif %} class="{% if field.errors and show_errors %}form-group-error{% endif %}" data-module="file-upload">
2016-02-02 17:28:30 +00:00
<label class="file-upload-label" for="{{ field.name }}">
2019-10-21 15:18:25 +01:00
<span class="govuk-visually-hidden">{{ field.label.text }}</span>
2016-02-02 17:28:30 +00:00
{% if hint %}
<span class="form-hint">
{{ hint }}
</span>
{% endif %}
{% if field.errors and show_errors %}
2016-02-02 17:28:30 +00:00
<span class="error-message">
{{ field.errors[0] }}
</span>
{% endif %}
</label>
{{ field(**{
'class': 'file-upload-field',
'accept': allowed_file_extensions|format_list_items('.{item}')|join(',')|e
2016-02-02 17:28:30 +00:00
}) }}
<label class="file-upload-button" for="{{ field.name }}">
2016-02-04 12:20:24 +00:00
{{ button_text }}
2016-02-02 17:28:30 +00:00
</label>
{% if alternate_link and alternate_link_text %}
<span class="file-upload-alternate-link">
or <a class="govuk-link govuk-link--no-visited-state" href="{{ alternate_link }}">{{ alternate_link_text }}</a>
</span>
{% endif %}
2016-02-02 17:28:30 +00:00
<label class="file-upload-filename" for="{{ field.name }}"></label>
2016-02-22 21:37:32 +00:00
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
{{ govukButton({ "text": "Submit", "classes": "file-upload-submit" }) }}
2016-02-22 21:37:32 +00:00
</form>
2016-02-02 17:28:30 +00:00
{% endmacro %}