Merge branch 'main' into stvnrlly-remove-broadcasts

This commit is contained in:
stvnrlly
2022-10-26 01:27:44 +00:00
41 changed files with 378 additions and 546 deletions

View File

@@ -12,6 +12,7 @@
<li><a class="govuk-link govuk-link--no-visited-state{{ casework_navigation.is_selected('sent-messages') }}" href="{{ url_for('.view_notifications', service_id=current_service.id, status='sending,delivered,failed') }}">Sent messages</a></li>
{% endif %}
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('uploads') }} demo-tooltip" data-demo-tooltip="⚠️ This feature is not available in demo mode" href="{{ url_for('main.uploads', service_id=current_service.id) }}">Letters</a></li>
<!-- <li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('uploads') }} demo-tooltip" data-demo-tooltip="⚠️ This feature is not available in demo mode" href="{{ url_for('main.uploads', service_id=current_service.id) }}">Letters</a></li> -->
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('team-members') }}" href="{{ url_for('.manage_users', service_id=current_service.id) }}">Team members</a></li>
{% if current_user.has_permissions('manage_service', allow_org_user=True) %}
<li><a class="govuk-link govuk-link--no-visited-state{{ main_navigation.is_selected('usage') }}" href="{{ url_for('.usage', service_id=current_service.id) }}">Usage</a></li>

View File

@@ -2,7 +2,7 @@
<div class="ajax-block-container">
<div class="govuk-grid-row">
<div id="total-email" class="govuk-grid-column-one-third">
<div id="total-email" class="govuk-grid-column-one-half">
{{ big_number_with_status(
statistics['email']['requested'],
statistics['email']['requested']|message_count_label('email', suffix='sent'),
@@ -14,7 +14,7 @@
smaller=True,
) }}
</div>
<div id="total-sms" class="govuk-grid-column-one-third">
<div id="total-sms" class="govuk-grid-column-one-half">
{{ big_number_with_status(
statistics['sms']['requested'],
statistics['sms']['requested']|message_count_label('sms', suffix='sent'),
@@ -26,7 +26,7 @@
smaller=True,
) }}
</div>
<div id="total-letters" class="govuk-grid-column-one-third">
<!-- <div id="total-letters" class="govuk-grid-column-one-third">
{{ big_number_with_status(
statistics['letter']['requested'],
statistics['letter']['requested']|message_count_label('letter', suffix='sent'),
@@ -37,6 +37,6 @@
link=url_for(".view_notifications", service_id=service_id, message_type='letter', status=''),
smaller=True,
) }}
</div>
</div> -->
</div>
</div>

View File

@@ -1,18 +1,18 @@
{% from "components/big-number.html" import big_number %}
<div class='govuk-grid-row ajax-block-container'>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<div class="keyline-block">
{{ big_number("Unlimited", 'free email allowance', smaller=True) }}
</div>
</div>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<div class="keyline-block">
{% if sms_cost %}
{{ big_number(
sms_cost,
'spent on text messages',
currency="£",
currency="$",
smaller=True
) }}
{% else %}
@@ -20,14 +20,14 @@
{% endif %}
</div>
</div>
<div class='govuk-grid-column-one-third'>
<!-- <div class='govuk-grid-column-one-third'>
<div class="keyline-block">
{{ big_number(
letter_cost,
'spent on letters',
currency="£",
currency="$",
smaller=True
) }}
</div>
</div>
</div> -->
</div>

View File

@@ -2,10 +2,10 @@
<nav>
<a class="govuk-link govuk-link--no-visited-state pill-separate-item" href="{{ url_for('.choose_template', service_id=current_service.id) }}">
{% if 'letter' in current_service.permissions %}
<!-- {% if 'letter' in current_service.permissions %}
Write an email, text message or letter
{% else %}
{% else %} -->
Write an email or text message
{% endif %}
<!-- {% endif %} -->
</a>
</nav>

View File

@@ -14,7 +14,7 @@
<ul class="list list-bullet">
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features_email') }}">emails</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features_sms') }}">text messages</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features_letters') }}">letters</a></li>
<!-- <li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features_letters') }}">letters</a></li> -->
</ul>
<p class="govuk-body">You do not need any technical knowledge to use Notify.</p>
{% if not current_user.is_authenticated %}
@@ -22,7 +22,7 @@
{% endif %}
<h2 class="heading-medium" id="templates">Reusable message templates</h2>
<p class="govuk-body">To send an email, text or letter with Notify, you need to create a reusable message template first.</p>
<p class="govuk-body">To send an email or text with Notify, you need to create a reusable message template first.</p>
<p class="govuk-body">Templates let you send the same thing to lots of people, as often as you need to, without writing a new message each time.</p>
<h2 class="heading-medium" id="personalised-messages">Personalised content</h2>
@@ -53,10 +53,10 @@
<p class="govuk-body">Notify commits to:</p>
<ul class="list list-bullet">
<li>sending 95% of emails and text messages within 10 seconds</li>
<li>printing and posting letters by 3pm the next working day (if you send them to us before 5:30pm)</li>
<!-- <li>printing and posting letters by 3pm the next working day (if you send them to us before 5:30pm)</li> -->
</ul>
<p class="govuk-body">We send messages through several different providers. If one provider fails, Notify switches to another so that your messages are not affected.</p>
<!-- <p class="govuk-body">We send messages through several different providers. If one provider fails, Notify switches to another so that your messages are not affected.</p> -->
<p class="govuk-body">Visit our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.performance') }}">performance data</a> page to see how Notify is performing.</p>

View File

@@ -10,7 +10,7 @@
<h1 class="heading-large">Guidance</h1>
<p class="govuk-body">This guidance is for teams using US Notify to send emails, text messages and letters.</p>
<p class="govuk-body">This guidance is for teams using US Notify to send emails and text messages.</p>
<p class="govuk-body">It explains how to:</p>
@@ -18,16 +18,16 @@
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.edit_and_format_messages') }}">edit and format messages</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.branding_and_customisation') }}">add branding and customisation</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.send_files_by_email') }}">send files by email</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.upload_a_letter') }}">upload a letter</a></li>
<!-- <li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.upload_a_letter') }}">upload a letter</a></li> -->
</ul>
<h2 class="heading-medium">More information</h2>
<p class="govuk-body">The US NotifyService Manual has advice on:</p>
<p class="govuk-body">The US Notify Service Manual has advice on:</p>
<ul class="list list-bullet">
<li><a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/service-manual/design/sending-emails-and-text-messages">planning and writing text messages and emails</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/service-manual/design/writing-effective-letters">writing effective letters</a></li>
<!-- <li><a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/service-manual/design/writing-effective-letters">writing effective letters</a></li> -->
<li><a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/service-manual/technology/how-to-email-your-users">sending emails from your service domain</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/service-manual/technology/sending-text-messages-securely">sending text messages securely</a></li>
</ul>

View File

@@ -33,7 +33,7 @@
{{ big_number(
total_sms_cost,
'spent',
currency="£",
currency="$",
smaller=True
) }}
</div>
@@ -44,7 +44,7 @@
{{ big_number(
total_letter_cost,
'spent',
currency="£",
currency="$",
smaller=True
) }}
</div>
@@ -82,7 +82,7 @@
{{ big_number(
service.sms_cost,
'spent on text messages',
currency="£",
currency="$",
smallest=True
) }}
{% else %}
@@ -97,7 +97,7 @@
{{ big_number(
service.letter_cost,
'spent on letters',
currency="£",
currency="$",
smallest=True
) }}
</div>

View File

@@ -109,7 +109,7 @@
)
}}
{% endcall %}
{% call row() %}
<!-- {% call row() %}
{{ text_field('Default letter branding') }}
{{ optional_text_field(
current_org.letter_branding.name,
@@ -121,7 +121,7 @@
suffix='default letter branding for the organisation'
)
}}
{% endcall %}
{% endcall %} -->
{% call row() %}
{{ text_field('Known email domains') }}
{{ optional_text_field(current_org.domains or None, default='None') }}

View File

@@ -22,10 +22,10 @@
<p class="govuk-body">US Notify is free to use unless you:</p>
<ul class="list list-bullet">
<li>exceed your <a class="govuk-link govuk-link--no-visited-state" href="#text-messages">free text message allowance</a></li>
<li>send <a class="govuk-link govuk-link--no-visited-state" href="#letters">letters</a></li>
<!-- <li>send <a class="govuk-link govuk-link--no-visited-state" href="#letters">letters</a></li> -->
</ul>
<p class="govuk-body">Youll only pay for the additional text messages or letters that you send. Theres no monthly charge, no setup fee and no procurement cost.</p>
<p class="govuk-body">Youll only pay for the additional text messages that you send. Theres no monthly charge, no setup fee and no procurement cost.</p>
<p class="govuk-body">
{% if not current_user.is_authenticated %}
@@ -229,7 +229,7 @@
"html": smsIntRates
}) }}
<h2 class="heading-medium" id="letters">Letters</h2>
<!-- <h2 class="heading-medium" id="letters">Letters</h2>
<p class="govuk-body">The cost of sending a letter depends on the postage you choose and how many sheets of paper you need.</p>
<p class="govuk-body">Prices include:</p>
@@ -238,9 +238,9 @@
<li>postage</li>
<li>double-sided colour printing</li>
<li>C5 size envelopes with an address window</li>
</ul>
</ul> -->
<div>
<!-- <div>
{% call mapping_table(
caption='Letter pricing',
field_headings=['Paper', 'Second class', 'First class', 'International'],
@@ -262,6 +262,6 @@
{% endcall %}
{% endfor %}
{% endcall %}
</div>
</div> -->
{% endblock %}

View File

@@ -19,7 +19,7 @@
<h2 class="heading-medium" id="who-we-are">Who we are</h2>
<p class="govuk-body">US Notify is a service that lets public service teams in the UK send emails, text messages, and letters
<p class="govuk-body">US Notify is a service that lets public service teams in the United States send text messages
to users of their service.</p>
<p class="govuk-body">US Notify is provided by the Government Digital Service (GDS) which is part of the Cabinet Office.</p>

View File

@@ -198,75 +198,76 @@
{% endcall %}
{% call mapping_table(
caption='Letter settings',
field_headings=['Label', 'Value', 'Action'],
field_headings_visible=False,
caption_visible=True
) %}
<!-- {% call mapping_table(
caption='Letter settings',
field_headings=['Label', 'Value', 'Action'],
field_headings_visible=False,
caption_visible=True
) %}
{% call row() %}
{{ text_field('Send letters') }}
{{ boolean_field('letter' in current_service.permissions) }}
{{ edit_field(
'Change',
url_for(
'.service_set_channel',
channel='letter',
service_id=current_service.id
),
permissions=['manage_service'],
suffix='your settings for sending letters',
)}}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Send international letters') }}
{{ boolean_field(current_service.has_permission('international_letters')) }}
{{ edit_field(
'Change',
url_for('.service_set_international_letters', service_id=current_service.id),
permissions=['manage_service']
)}}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Sender addresses') }}
{% call field(status='' if current_service.count_letter_contact_details else 'default') %}
{% if current_service.default_letter_contact_block %}
{{ current_service.default_letter_contact_block_html }}
{% elif current_service.count_letter_contact_details %}
Blank
{% else %}
Not set
{% endif %}
{% if current_service.count_letter_contact_details > 1 %}
<div class="hint">
{{ '…and %d more' | format(current_service.count_letter_contact_details - 1) }}
</div>
{% endif %}
{% call row() %}
{{ text_field('Send letters') }}
{{ boolean_field('letter' in current_service.permissions) }}
{{ edit_field(
'Change',
url_for(
'.service_set_channel',
channel='letter',
service_id=current_service.id
),
permissions=['manage_service'],
suffix='your settings for sending letters',
)}}
{% endcall %}
{{ edit_field(
'Manage',
url_for('.service_letter_contact_details', service_id=current_service.id),
permissions=['manage_service','manage_api_keys'],
suffix='sender addresses',
)
}}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Letter branding') }}
{{ optional_text_field(current_service.letter_branding.name) }}
{{ edit_field(
'Change',
url_for('.letter_branding_request', service_id=current_service.id),
permissions=['manage_service'],
suffix='letter branding',
)}}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Send international letters') }}
{{ boolean_field(current_service.has_permission('international_letters')) }}
{{ edit_field(
'Change',
url_for('.service_set_international_letters', service_id=current_service.id),
permissions=['manage_service']
)}}
{% endcall %}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Sender addresses') }}
{% call field(status='' if current_service.count_letter_contact_details else 'default') %}
{% if current_service.default_letter_contact_block %}
{{ current_service.default_letter_contact_block_html }}
{% elif current_service.count_letter_contact_details %}
Blank
{% else %}
Not set
{% endif %}
{% if current_service.count_letter_contact_details > 1 %}
<div class="hint">
{{ '…and %d more' | format(current_service.count_letter_contact_details - 1) }}
</div>
{% endif %}
{% endcall %}
{{ edit_field(
'Manage',
url_for('.service_letter_contact_details', service_id=current_service.id),
permissions=['manage_service','manage_api_keys'],
suffix='sender addresses',
)
}}
{% endcall %}
{% call settings_row(if_has_permission='letter') %}
{{ text_field('Letter branding') }}
{{ optional_text_field(current_service.letter_branding.name) }}
{{ edit_field(
'Change',
url_for('.letter_branding_request', service_id=current_service.id),
permissions=['manage_service'],
suffix='letter branding',
)}}
{% endcall %}
{% endcall %} -->
</div>
{% if current_service.trial_mode %}
@@ -277,7 +278,7 @@
<ul class='list list-bullet'>
<li>send {{ current_service.message_limit }} text messages and emails per day</li>
<li>send messages to yourself and other people in your team</li>
<li>create letter templates, but not send them</li>
<!-- <li>create letter templates, but not send them</li> -->
</ul>
<p class="govuk-body">

View File

@@ -2,7 +2,7 @@
{% from "components/button/macro.njk" import govukButton %}
{% block meta %}
<meta name="description" content="US Notify lets you send emails, text messages and letters to your users. Try it now if you work in federal, state or local government.">
<meta name="description" content="US Notify lets you send text messages and email to your users. Try it now if you work in federal, state or local government.">
{% endblock %}
{% block pageTitle %}
@@ -26,7 +26,7 @@
<div class="govuk-grid-row">
<div class="govuk-grid-column-two-thirds">
<h1>
Send emails, text messages and letters to your users
Send text messages and email to your users
</h1>
<p class="govuk-body">
Try US Notify now if you work in federal, state or local government.
@@ -115,16 +115,6 @@
</div>
</div>
</div>
<div class="product-page-section">
<h2 class="with-keyline">
Introducing US Notify
</h2>
<div class="responsive-embed responsive-embed--16by9 responsive-embed--bordered bottom-gutter-2">
<div class="responsive-embed__wrapper">
<iframe title="US Notify introduction video" width="560" height="315" src="https://www.youtube-nocookie.com/embed/_90cv1YgQo4" frameborder="0" allowfullscreen></iframe>
</div>
</div>
</div>
<div class="product-page-section">
<div class="with-keyline bottom-gutter-2" id="whos-using-notify">
<h2>Whos using US Notify</h2>
@@ -147,7 +137,7 @@
</p>
</div>
</div>
<div class="product-page-section">
<!-- <div class="product-page-section">
<div class="with-keyline bottom-gutter-2">
<h2>Pricing</h2>
<div class="govuk-grid-row bottom-gutter">
@@ -176,7 +166,7 @@
</div>
</div>
</div>
</div>
</div> -->
<div class="product-page-section">
<div class="govuk-grid-row">
<div class="govuk-grid-column-one-half">

View File

@@ -13,7 +13,7 @@
<ul class="list list-bullet">
<li>send 50 text messages and emails per day</li>
<li>send messages to yourself and other people in your team</li>
<li>create letter templates, but not send them</li>
<!-- <li>create letter templates, but not send them</li> -->
</ul>
{% if current_service and current_service.trial_mode %}

View File

@@ -18,14 +18,14 @@
</div>
<div id='pill-selected-item'>
<div class='govuk-grid-row'>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<h2 class='heading-small'>Emails</h2>
<div class="keyline-block">
{{ big_number(emails_sent, 'sent', smaller=True) }}
{{ big_number("Unlimited", 'free allowance', smaller=True) }}
</div>
</div>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<h2 class='heading-small'>Text messages</h2>
<div class="keyline-block">
{{ big_number(sms_sent, 'sent', smaller=True) }}
@@ -44,40 +44,40 @@
{% endfor %}
</div>
</div>
<div class='govuk-grid-column-one-third'>
<!-- <div class='govuk-grid-column-one-third'>
<h2 class='heading-small'>Letters</h2>
<div class="keyline-block">
{{ big_number(letter_sent, 'sent', smaller=True) }}
</div>
</div>
</div> -->
</div>
<div class='govuk-grid-row'>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<div class="keyline-block">
&nbsp;
</div>
</div>
<div class='govuk-grid-column-one-third'>
<div class='govuk-grid-column-one-half'>
<div class="keyline-block">
{{ big_number(
sms_cost,
'spent',
currency="£",
currency="$",
smaller=True
) }}
</div>
</div>
<div class='govuk-grid-column-one-third'>
<!-- <div class='govuk-grid-column-one-third'>
<div class="keyline-block">
{{ big_number(
letter_cost,
'spent',
currency="£",
currency="$",
smaller=True
) }}
</div>
</div>
</div> -->
</div>
@@ -100,7 +100,7 @@
{% call field(align='left') %}
{{ big_number(
item.sms_cost + item.letter_cost,
currency="£",
currency="$",
smallest=True
) }}
<ul>
@@ -111,12 +111,12 @@
<li class="tabular-numbers">{{ sms.charged_units|message_count('sms') }} at
{{- ' {:.2f}p'.format(sms.rate * 100) }}</li>
{% endfor %}
{% for letter in item.letter_breakdown %}
<!-- {% for letter in item.letter_breakdown %}
{% if letter.sent %}
<li class="tabular-numbers">{{ "{:,} {}".format(letter.sent, letter.postage_description) }} {{ letter.sent|message_count_label('letter', suffix='') }} at
{{ letter.rate | format_number_in_pounds_as_currency }}</li>
{% endif %}
{% endfor %}
{% endfor %} -->
{% if not (item.sms_free_allowance_used or item.sms_cost or item.letter_breakdown) %}
<li aria-hidden="true"></li>
{% endif %}