mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-07-26 21:58:28 -04:00
This commit parameterises all methods in the send view so that they can send either emails or SMS messages. It works out what kind of message it is sending from the `template_type` property of the template object. This means that the `Template` util class needs to know about these properties, which means that this commit depends on: https://github.com/alphagov/notifications-utils/pull/2 This commit does _not_ add tests for sending emails. The existing tests for sending SMS still pass, but actually sending emails is outside the scope of this story.
79 lines
2.4 KiB
HTML
79 lines
2.4 KiB
HTML
{% extends "withnav_template.html" %}
|
||
{% from "components/sms-message.html" import sms_message %}
|
||
{% from "components/table.html" import list_table, field %}
|
||
{% from "components/placeholder.html" import placeholder %}
|
||
{% from "components/file-upload.html" import file_upload %}
|
||
{% from "components/page-footer.html" import page_footer %}
|
||
|
||
{% block page_title %}
|
||
Check and confirm – GOV.UK Notify
|
||
{% endblock %}
|
||
|
||
{% block maincolumn_content %}
|
||
|
||
|
||
{% if template.additional_data %}
|
||
{{ banner(
|
||
"Remove these columns from your CSV file:" + ", ".join(template.missing_data),
|
||
type="dangerous"
|
||
) }}
|
||
{% elif not upload_result.valid %}
|
||
{{ banner(
|
||
"Your CSV file contained missing or invalid data",
|
||
type="dangerous"
|
||
) }}
|
||
{% endif %}
|
||
|
||
<h1 class="heading-large">
|
||
{{ "Check and confirm" if upload_result.valid else "Send text messages" }}
|
||
</h1>
|
||
|
||
<div class="grid-row">
|
||
<div class="column-two-thirds">
|
||
{% if template.missing_data or template.additional_data %}
|
||
{{ sms_message(template.formatted_as_markup)}}
|
||
{% else %}
|
||
{{ sms_message(template.replaced)}}
|
||
{% endif %}
|
||
</div>
|
||
</div>
|
||
|
||
{% if upload_result.valid %}
|
||
<form method="post" enctype="multipart/form-data">
|
||
<input type="hidden" name="csrf_token" value="{{ csrf_token() }}" />
|
||
<input type="submit" class="button" value="{{ "Send {} text message{}".format(upload_result.rows|count, '' if upload_result.rows|count == 1 else 's') }}" />
|
||
<a href="{{url_for('.send_messages', service_id=service_id, template_id=template.id)}}" class="page-footer-back-link">Back</a>
|
||
</form>
|
||
{% else %}
|
||
{{file_upload(form.file, button_text='Upload a CSV file')}}
|
||
{% endif %}
|
||
|
||
{% call(item) list_table(
|
||
upload_result.rows,
|
||
caption=original_file_name,
|
||
field_headings=column_headers
|
||
) %}
|
||
{% if item.phone|valid_phone_number %}
|
||
{% call field() %}
|
||
{{ item.phone }}
|
||
{% endcall %}
|
||
{% else %}
|
||
{% call field(status='missing') %}
|
||
{{ item.phone }}
|
||
{% endcall %}
|
||
{% endif %}
|
||
{% for column in template.placeholders %}
|
||
{% if item.get(column) %}
|
||
{% call field() %}
|
||
{{ item.get(column) }}
|
||
{% endcall %}
|
||
{% else %}
|
||
{% call field(status='missing') %}
|
||
missing
|
||
{% endcall %}
|
||
{% endif %}
|
||
{% endfor %}
|
||
{% endcall %}
|
||
|
||
{% endblock %}
|