mirror of
https://github.com/GSA/notifications-admin.git
synced 2026-09-06 03:38:24 -04:00
merge from main
This commit is contained in:
@@ -22,54 +22,3 @@
|
||||
</a>
|
||||
{% endif %}
|
||||
{% endmacro %}
|
||||
|
||||
|
||||
{% macro big_number_with_status(
|
||||
number,
|
||||
label,
|
||||
failures,
|
||||
failure_percentage,
|
||||
danger_zone=False,
|
||||
failure_link=None,
|
||||
link=None,
|
||||
show_failures=True,
|
||||
smaller=False,
|
||||
smallest=False
|
||||
) %}
|
||||
<span class="big-number-with-status">
|
||||
{{ big_number(number, label, link=link, smaller=smaller, smallest=smallest) }}
|
||||
{% if show_failures %}
|
||||
<span class="big-number-status{% if danger_zone %} big-number-status--failing{% endif %}">
|
||||
{% if failures %}
|
||||
{% if failure_link %}
|
||||
<a class="usa-link" href="{{ failure_link }}">
|
||||
{{ "{:,}".format(failures) }}
|
||||
failed – {{ failure_percentage }}%
|
||||
</a>
|
||||
{% else %}
|
||||
{{ "{:,}".format(failures) }}
|
||||
failed – {{ failure_percentage }}%
|
||||
{% endif %}
|
||||
{% else %}
|
||||
No failures
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endmacro %}
|
||||
|
||||
|
||||
{% macro big_number_simple(number, label) %}
|
||||
<span class="big-number-dark bottom-gutter-2-3">
|
||||
<span class="big-number-number">
|
||||
{% if number is number %}
|
||||
{{ "{:,}".format(number) }}
|
||||
{% else %}
|
||||
{{ number }}
|
||||
{% endif %}
|
||||
</span>
|
||||
{% if label %}
|
||||
<span class="big-number-label">{{ label }}</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endmacro %}
|
||||
|
||||
@@ -1,7 +0,0 @@
|
||||
{% macro branding_preview(branding_style, endpoint) %}
|
||||
<iframe src="{{ url_for(endpoint, branding_style=branding_style) }}" class="branding-preview" scrolling="no"></iframe>
|
||||
{% endmacro %}
|
||||
|
||||
{% macro email_branding_preview(branding_style) %}
|
||||
{{ branding_preview(branding_style, 'main.email_template') }}
|
||||
{% endmacro %}
|
||||
@@ -1,15 +0,0 @@
|
||||
# Error message
|
||||
|
||||
## Installation
|
||||
|
||||
See the [main README quick start guide](https://github.com/alphagov/govuk-frontend#quick-start) for how to install this component.
|
||||
|
||||
## Guidance and Examples
|
||||
|
||||
Find out when to use the error message component in your service in the [GOV.UK Design System](https://design-system.service.gov.uk/components/error-message).
|
||||
|
||||
## Component options
|
||||
|
||||
Use options to customize the appearance, content and behavior of a component when using a macro, for example, changing the text.
|
||||
|
||||
See [options table](https://design-system.service.gov.uk/components/error-message/#options-example-default) for details.
|
||||
@@ -1,37 +0,0 @@
|
||||
[
|
||||
{
|
||||
"name": "text",
|
||||
"type": "string",
|
||||
"required": true,
|
||||
"description": "If `html` is set, this is not required. Text to use within the error message. If `html` is provided, the `text` argument will be ignored."
|
||||
},
|
||||
{
|
||||
"name": "html",
|
||||
"type": "string",
|
||||
"required": true,
|
||||
"description": "If `text` is set, this is not required. HTML to use within the error message. If `html` is provided, the `text` argument will be ignored."
|
||||
},
|
||||
{
|
||||
"name": "id",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Id attribute to add to the error message span tag."
|
||||
},
|
||||
{
|
||||
"name": "classes",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Classes to add to the error message span tag."
|
||||
},
|
||||
{
|
||||
"name": "attributes",
|
||||
"type": "object",
|
||||
"required": false,
|
||||
"description": "HTML attributes (for example data attributes) to add to the error message span tag"
|
||||
},
|
||||
{
|
||||
"name": "visuallyHiddenText",
|
||||
"type": "string",
|
||||
"description": "A visually hidden prefix used before the error message. Defaults to \"Error\"."
|
||||
}
|
||||
]
|
||||
@@ -1,3 +0,0 @@
|
||||
{% macro usaAlert(params) %}
|
||||
{%- include "./template.njk" -%}
|
||||
{% endmacro %}
|
||||
@@ -1,18 +0,0 @@
|
||||
{%- if params.slim %}
|
||||
<div class="usa-alert usa-alert--slim usa-alert--{{params.type}} {%- if params.classes %} {{ params.classes }}{% endif %}" {%- if params.id %} id="{{ params.id }}"{% endif %}>
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text">
|
||||
{{params.text}}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="usa-alert usa-alert--{{params.type}} {%- if params.classes %} {{ params.classes }}{% endif %}" {%- if params.id %} id="{{ params.id }}"{% endif %}>
|
||||
<div class="usa-alert__body">
|
||||
<h{{params.header_level}} class="usa-alert__heading">{{params.heading}}</h{{params.header_level}}>
|
||||
<p class="usa-alert__text">
|
||||
{{params.text | safe }}
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{% endif %}
|
||||
@@ -1,15 +0,0 @@
|
||||
# Textarea
|
||||
|
||||
## Installation
|
||||
|
||||
See the [main README quick start guide](https://github.com/alphagov/govuk-frontend#quick-start) for how to install this component.
|
||||
|
||||
## Guidance and Examples
|
||||
|
||||
Find out when to use the textarea component in your service in the [GOV.UK Design System](https://design-system.service.gov.uk/components/textarea).
|
||||
|
||||
## Component options
|
||||
|
||||
Use options to customize the appearance, content and behavior of a component when using a macro, for example, changing the text.
|
||||
|
||||
See [options table](https://design-system.service.gov.uk/components/textarea/#options-example-default) for details.
|
||||
@@ -1,85 +0,0 @@
|
||||
[
|
||||
{
|
||||
"name": "id",
|
||||
"type": "string",
|
||||
"required": true,
|
||||
"description": "The id of the textarea."
|
||||
},
|
||||
{
|
||||
"name": "name",
|
||||
"type": "string",
|
||||
"required": true,
|
||||
"description": "The name of the textarea, which is submitted with the form data."
|
||||
},
|
||||
{
|
||||
"name": "rows",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Optional number of textarea rows (default is 5 rows)."
|
||||
},
|
||||
{
|
||||
"name": "value",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Optional initial value of the textarea."
|
||||
},
|
||||
{
|
||||
"name": "describedBy",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "One or more element IDs to add to the `aria-describedby` attribute, used to provide additional descriptive information for screenreader users."
|
||||
},
|
||||
{
|
||||
"name": "label",
|
||||
"type": "object",
|
||||
"required": true,
|
||||
"description": "Options for the label component.",
|
||||
"isComponent": true
|
||||
},
|
||||
{
|
||||
"name": "hint",
|
||||
"type": "object",
|
||||
"required": false,
|
||||
"description": "Options for the hint component.",
|
||||
"isComponent": true
|
||||
},
|
||||
{
|
||||
"name": "errorMessage",
|
||||
"type": "object",
|
||||
"required": false,
|
||||
"description": "Options for the errorMessage component (e.g. text).",
|
||||
"isComponent": true
|
||||
},
|
||||
{
|
||||
"name": "formGroup",
|
||||
"type": "object",
|
||||
"required": false,
|
||||
"description": "Options for the form-group wrapper",
|
||||
"params": [
|
||||
{
|
||||
"name": "classes",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Classes to add to the form group (e.g. to show error state for the whole group)"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "classes",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Classes to add to the textarea."
|
||||
},
|
||||
{
|
||||
"name": "autocomplete",
|
||||
"type": "string",
|
||||
"required": false,
|
||||
"description": "Attribute to [identify input purpose](https://www.w3.org/WAI/WCAG21/Understanding/identify-input-purpose.html), for instance \"postal-code\" or \"username\". See [autofill](https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#autofill) for full list of attributes that can be used."
|
||||
},
|
||||
{
|
||||
"name": "attributes",
|
||||
"type": "object",
|
||||
"required": false,
|
||||
"description": "HTML attributes (for example data attributes) to add to the textarea."
|
||||
}
|
||||
]
|
||||
@@ -1,3 +0,0 @@
|
||||
{% macro govukTextarea(params) %}
|
||||
{%- include "./template.njk" -%}
|
||||
{% endmacro %}
|
||||
@@ -1,44 +0,0 @@
|
||||
{% from "../error-message/macro.njk" import usaErrorMessage -%}
|
||||
{% from "../hint/macro.njk" import usaHint %}
|
||||
{% from "../label/macro.njk" import usaLabel %}
|
||||
|
||||
{#- a record of other elements that we need to associate with the input using
|
||||
aria-describedby – for example hints or error messages -#}
|
||||
{% set describedBy = params.describedBy if params.describedBy else "" %}
|
||||
<div class="usa-form-group {%- if params.errorMessage %} usa-form-group--error{% endif %} {%- if params.formGroup.classes %} {{ params.formGroup.classes }}{% endif %}">
|
||||
{{ usaLabel({
|
||||
html: params.label.html,
|
||||
text: params.label.text,
|
||||
classes: params.label.classes,
|
||||
isPageHeading: params.label.isPageHeading,
|
||||
attributes: params.label.attributes,
|
||||
for: params.id
|
||||
}) | indent(2) | trim }}
|
||||
{% if params.hint %}
|
||||
{% set hintId = params.id + '-hint' %}
|
||||
{% set describedBy = describedBy + ' ' + hintId if describedBy else hintId %}
|
||||
{{ usaHint({
|
||||
id: hintId,
|
||||
classes: params.hint.classes,
|
||||
attributes: params.hint.attributes,
|
||||
html: params.hint.html,
|
||||
text: params.hint.text
|
||||
}) | indent(2) | trim }}
|
||||
{% endif %}
|
||||
{% if params.errorMessage %}
|
||||
{% set errorId = params.id + '-error' %}
|
||||
{% set describedBy = describedBy + ' ' + errorId if describedBy else errorId %}
|
||||
{{ usaErrorMessage({
|
||||
id: errorId,
|
||||
classes: params.errorMessage.classes,
|
||||
attributes: params.errorMessage.attributes,
|
||||
html: params.errorMessage.html,
|
||||
text: params.errorMessage.text,
|
||||
visuallyHiddenText: params.errorMessage.visuallyHiddenText
|
||||
}) | indent(2) | trim }}
|
||||
{% endif %}
|
||||
<textarea class="usa-textarea {{- ' usa-textarea--error' if params.errorMessage }} {{- ' ' + params.classes if params.classes}}" id="{{ params.id }}" name="{{ params.name }}" rows="{%if params.rows %} {{- params.rows -}} {% else %}5{%endif %}"
|
||||
{%- if describedBy %} aria-describedby="{{ describedBy }}"{% endif %}
|
||||
{%- if params.autocomplete %} autocomplete="{{ params.autocomplete}}"{% endif %}
|
||||
{%- for attribute, value in params.attributes %} {{attribute}}="{{value}}"{% endfor %}>{{ params.value }}</textarea>
|
||||
</div>
|
||||
@@ -1,6 +0,0 @@
|
||||
{% macro show_more(url, label, with_border=True) %}
|
||||
<a
|
||||
href="{{ url }}"
|
||||
class="usa-link show-more{% if not with_border %}-no-border{% endif %}"
|
||||
><span>{{ label }}</span></a>
|
||||
{% endmacro %}
|
||||
@@ -1,4 +1,3 @@
|
||||
{% from "components/big-number.html" import big_number %}
|
||||
{% from "components/pill.html" import pill %}
|
||||
|
||||
<div class="ajax-block-container">
|
||||
@@ -6,11 +5,40 @@
|
||||
<div class="grid-row ">
|
||||
{% for label, query_param, url, count in counts %}
|
||||
{% if query_param == 'pending' %}
|
||||
<div class="grid-col-3">{{ big_number(count, query_param, smaller=True) }}</div>
|
||||
<div class="grid-col-3">
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{% if count is number %}
|
||||
{% if currency %}
|
||||
{{ "{}{:,.2f}".format(currency, count) }}
|
||||
{% else %}
|
||||
{{ "{:,}".format(count) }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{{ count }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">{{ query_param }}</span>
|
||||
</span>
|
||||
</div>
|
||||
{% else %}
|
||||
<div class="grid-col-3">{{ big_number(count, label, smaller=True) }}</div>
|
||||
<div class="grid-col-3">
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{% if count is number %}
|
||||
{% if currency %}
|
||||
{{ "{}{:,.2f}".format(currency, count) }}
|
||||
{% else %}
|
||||
{{ "{:,}".format(count) }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{{ count }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">{{ label }}</span>
|
||||
</span>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% else %}
|
||||
|
||||
@@ -1,14 +0,0 @@
|
||||
Organization: {% if current_service.organization -%}
|
||||
{{ current_service.organization.name }}
|
||||
{%- else -%}
|
||||
Can’t tell (domain is {{ current_user.email_domain }})
|
||||
{%- endif %}
|
||||
Service: {{ current_service.name }}
|
||||
{{ url_for('main.service_dashboard', service_id=current_service.id, _external=True) }}
|
||||
|
||||
---
|
||||
Current branding: {{ current_branding }}
|
||||
Branding requested: {{ branding_requested }}
|
||||
{% if detail %}
|
||||
{{ detail }}
|
||||
{% endif %}
|
||||
@@ -4,7 +4,6 @@
|
||||
{% from "components/table.html" import mapping_table, row, field, text_field, index_field, hidden_field_heading %}
|
||||
{% from "components/file-upload.html" import file_upload %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/components/alert/macro.njk" import usaAlert %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Error
|
||||
|
||||
@@ -1,151 +0,0 @@
|
||||
{% extends "withoutnav_template.html" %}
|
||||
{% from "components/banner.html" import banner %}
|
||||
|
||||
{% block per_page_title %}
|
||||
Cookies
|
||||
{% endblock %}
|
||||
|
||||
{% block cookie_message %}{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-8">
|
||||
<div class="cookie-settings__confirmation banner banner-with-tick" data-cookie-confirmation="true" role="group" tabindex="-1">
|
||||
<h2 class="banner-title">Your cookie settings were saved</h2>
|
||||
<a class="govuk_link cookie-settings__prev-page" href="#" data-module="track-click" data-track-category="cookieSettings" data-track-action="Back to previous page">
|
||||
Go back to the page you were looking at
|
||||
</a>
|
||||
</div>
|
||||
<h1 class="font-body-2xl margin-bottom-3">Cookies</h1>
|
||||
<p class="summary">
|
||||
Cookies are small files saved on your phone, tablet, or computer when you visit a website.
|
||||
</p>
|
||||
<p>We use cookies to make Notify.gov work and collect information about how you use our service.</p>
|
||||
|
||||
<h2 class="font-body-lg" id="essential-cookies">Essential cookies</h2>
|
||||
<p>
|
||||
Essential cookies keep your information secure while you use Notify. We do not need to ask permission to use them.
|
||||
</p>
|
||||
<table>
|
||||
<caption class="usa-sr-only">Essential cookies</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Purpose</th>
|
||||
<th>Expires</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
notify_admin_session
|
||||
</td>
|
||||
<td width="50%">
|
||||
Used to keep you signed in
|
||||
</td>
|
||||
<td>
|
||||
20 hours
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
cookie_policy
|
||||
</td>
|
||||
<td width="50%">
|
||||
Saves your cookie consent settings
|
||||
</td>
|
||||
<td>
|
||||
1 year
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<h2 class="font-body-lg" id="analytics-cookies">Analytics cookies (optional)</h2>
|
||||
<p>
|
||||
With your permission, we use Google Analytics to collect data about how you use Notify. This information helps us to improve our service.
|
||||
</p>
|
||||
<p>
|
||||
Google is not allowed to use or share our analytics data with anyone.
|
||||
</p>
|
||||
<p>
|
||||
Google Analytics stores anonymized information about:
|
||||
</p>
|
||||
<ul class="usa-list usa-list--bullet">
|
||||
<li>how you got to Notify.gov</li>
|
||||
<li>the pages you visit on Notify and how long you spend on them</li>
|
||||
<li>any errors you see while using Notify</li>
|
||||
</ul>
|
||||
<table>
|
||||
<caption class="usa-sr-only">Google Analytics cookies</caption>
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Purpose</th>
|
||||
<th>Expires</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
_ga
|
||||
</td>
|
||||
<td width="50%">
|
||||
Checks if you’ve visited Notify before. This helps us count how many people visit our site.
|
||||
</td>
|
||||
<td>
|
||||
2 years
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
_gid
|
||||
</td>
|
||||
<td width="50%">
|
||||
Checks if you’ve visited Notify before. This helps us count how many people visit our site.
|
||||
</td>
|
||||
<td>
|
||||
24 hours
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div class="cookie-settings__no-js">
|
||||
<h2 class="govuk-heading-s">Do you want to accept analytics cookies?</h2>
|
||||
<p>We use Javascript to set our analytics cookies. Unfortunately Javascript is not running on your browser, so you cannot change your settings. You can try:</p>
|
||||
<ul class="usa-list usa-list--bullet">
|
||||
<li>reloading the page</li>
|
||||
<li>turning on Javascript in your browser</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div class="cookie-settings__form-wrapper">
|
||||
<form data-module="cookie-settings">
|
||||
<div class="usa-form-group">
|
||||
<fieldset class="usa-fieldset" aria-describedby="changed-name-hint">
|
||||
<legend class="usa-fieldset__legend usa-fieldset__legend--s">
|
||||
Do you want to accept analytics cookies?
|
||||
</legend>
|
||||
<div class="usa-radios usa-radios--inline">
|
||||
<div class="usa-radio">
|
||||
<input class="usa-radio__input" id="cookies-analytics-yes" name="cookies-analytics" type="radio" value="on">
|
||||
<label class="usa-radio__label" for="cookies-analytics-yes">
|
||||
Yes
|
||||
</label>
|
||||
</div>
|
||||
<div class="usa-radio">
|
||||
<input class="usa-radio__input" id="cookies-analytics-no" name="cookies-analytics" type="radio" value="off">
|
||||
<label class="usa-radio__label" for="cookies-analytics-no">
|
||||
No
|
||||
</label>
|
||||
</div>
|
||||
</div>
|
||||
</fieldset>
|
||||
</div>
|
||||
<button class="govuk-button" type="submit">Save cookie settings</button>
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,5 +1,4 @@
|
||||
{% from "components/table.html" import list_table, field, right_aligned_field_heading, row_heading %}
|
||||
{% from "components/big-number.html" import big_number -%}
|
||||
|
||||
<div class='dashboard-table ajax-block-container'>
|
||||
{% call(item, row_number) list_table(
|
||||
@@ -36,28 +35,78 @@
|
||||
{% endcall %}
|
||||
{% call field() %}
|
||||
{% if item.scheduled %}
|
||||
{{ big_number(
|
||||
item.notification_count,
|
||||
smallest=True,
|
||||
label=item.notification_count|message_count_label(
|
||||
item.template_type,
|
||||
suffix='waiting to send'
|
||||
)
|
||||
) }}
|
||||
{% if link %}
|
||||
<a class="usa-link display-flex" href="{{ link }}">
|
||||
{% endif %}
|
||||
<span class="big-number-smallest">
|
||||
<span class="big-number-number">
|
||||
{% if item.notification_count is number %}
|
||||
{% if currency %}
|
||||
{{ "{}{:,.2f}".format(currency, item.notification_count) }}
|
||||
{% else %}
|
||||
{{ "{:,}".format(item.notification_count) }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{{ item.notification_count }}
|
||||
{% endif %}
|
||||
</span>
|
||||
{% if item.notification_count %}
|
||||
<span class="big-number-label">{{ item.notification_count|message_count_label(item.template_type,suffix='waiting to send') }}</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
{% if link %}
|
||||
</a>
|
||||
{% endif %}
|
||||
{% else %}
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-4">
|
||||
{{ big_number(
|
||||
item.notifications_sending,
|
||||
smallest=True,
|
||||
label='pending',
|
||||
) }}
|
||||
{% if link %}
|
||||
<a class="usa-link display-flex" href="{{ link }}">
|
||||
{% endif %}
|
||||
<span class="big-number-smallest">
|
||||
<span class="big-number-number">
|
||||
{{ "{:,}".format(item.notifications_sending) }}
|
||||
</span>
|
||||
<span class="big-number-label">pending</span>
|
||||
</span>
|
||||
{% if link %}
|
||||
</a>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="grid-col-4">
|
||||
{{ big_number(item.notifications_delivered, smallest=True, label='delivered') }}
|
||||
<span class="big-number-smallest">
|
||||
<span class="big-number-number">
|
||||
{% if item.notifications_delivered is number %}
|
||||
{{ "{:,}".format(item.notifications_delivered) }}
|
||||
{% else %}
|
||||
{{ item.notifications_delivered }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">delivered</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="grid-col-4">
|
||||
{{ big_number(item.notifications_failed, smallest=True, label='failed') }}
|
||||
{% if link %}
|
||||
<a class="usa-link display-flex" href="{{ link }}">
|
||||
{% endif %}
|
||||
<span class="big-number-smallest">
|
||||
<span class="big-number-number">
|
||||
{% if item.notifications_failed is number %}
|
||||
{% if currency %}
|
||||
{{ "{}{:,.2f}".format(currency, item.notifications_failed) }}
|
||||
{% else %}
|
||||
{{ "{:,}".format(item.notifications_failed) }}
|
||||
{% endif %}
|
||||
{% else %}
|
||||
{{ item.notifications_failed }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">failed</span>
|
||||
</span>
|
||||
{% if link %}
|
||||
</a>
|
||||
{% endif %}
|
||||
|
||||
</div></div>
|
||||
|
||||
{% endif %}
|
||||
|
||||
@@ -1,18 +1,32 @@
|
||||
{% from "components/big-number.html" import big_number_with_status %}
|
||||
|
||||
<div class="ajax-block-container">
|
||||
<div class="grid-row grid-gap">
|
||||
<div id="total-sms" class="grid-col-12">
|
||||
{{ big_number_with_status(
|
||||
statistics['sms']['requested'],
|
||||
statistics['sms']['requested']|message_count_label('sms', suffix='sent'),
|
||||
statistics['sms']['failed'],
|
||||
statistics['sms']['failed_percentage'],
|
||||
statistics['sms']['show_warning'],
|
||||
failure_link=url_for(".view_notifications", service_id=service_id, message_type='sms', status='failed'),
|
||||
link=url_for(".view_notifications", service_id=service_id, message_type='sms', status='sending,delivered,failed'),
|
||||
smaller=True,
|
||||
) }}
|
||||
<span class="big-number-with-status">
|
||||
<a class="usa-link display-flex" href="{{ url_for('.view_notifications', service_id=service_id, message_type='sms', status='sending,delivered,failed') }}">
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{% if statistics['sms']['requested'] is number %}
|
||||
{{ "{:,}".format(statistics['sms']['requested']) }}
|
||||
{% else %}
|
||||
{{ statistics['sms']['requested'] }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">{{ statistics['sms']['requested']|message_count_label('sms', suffix='sent') }}</span>
|
||||
</span>
|
||||
</a>
|
||||
{% if show_failures %}
|
||||
<span class="big-number-status{% if statistics['sms']['show_warning'] is sameas true %} big-number-status--failing{% endif %}">
|
||||
{% if statistics['sms']['failed'] %}
|
||||
<a class="usa-link" href="{{ url_for('.view_notifications', service_id=service_id, message_type='sms', status='failed') }}">
|
||||
{{ "{:,}".format(statistics['sms']['failed']) }}
|
||||
failed – {{ statistics['sms']['failed_percentage'] }}%
|
||||
</a>
|
||||
{% else %}
|
||||
No failures
|
||||
{% endif %}
|
||||
</span>
|
||||
{% endif %}
|
||||
</span>
|
||||
</div>
|
||||
<!-- <div id="total-email" class="grid-col-6">
|
||||
<span class="big-number-with-status pilot-disabled">
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{% from "components/table.html" import list_table, field, right_aligned_field_heading, row_heading %}
|
||||
{% from "components/show-more.html" import show_more %}
|
||||
|
||||
<div class="ajax-block-container">
|
||||
{% if current_service.scheduled_job_stats.count %}
|
||||
|
||||
@@ -1,5 +1,3 @@
|
||||
{% from "components/big-number.html" import big_number %}
|
||||
|
||||
<div class='grid-row grid-gap ajax-block-container'>
|
||||
<div class='grid-col-12'>
|
||||
|
||||
@@ -15,17 +13,21 @@
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>{{ big_number(sms_sent, smaller=True) }}</td>
|
||||
<td><span class="big-number-smaller big-number-number">{{ "{:,}".format(sms_sent) }}</span></td>
|
||||
<td>
|
||||
{% if sms_cost %}
|
||||
{{ big_number(
|
||||
sms_cost,
|
||||
'spent on text messages',
|
||||
currency="$",
|
||||
smaller=True
|
||||
) }}
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{{ "{}{:,.2f}".format('$', sms_cost) }}
|
||||
</span>
|
||||
<span class="big-number-label">'spent on text messages'</span>
|
||||
</span>
|
||||
{% else %}
|
||||
{{ big_number(sms_allowance_remaining, smaller=True) }}
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{{ "{:,}".format(sms_allowance_remaining) }}
|
||||
</span>
|
||||
</span>
|
||||
{% endif %}
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
|
||||
{% from "components/show-more.html" import show_more %}
|
||||
{% from "components/table.html" import list_table, field, right_aligned_field_heading, hidden_field_heading %}
|
||||
{% from "components/ajax-block.html" import ajax_block %}
|
||||
|
||||
@@ -56,10 +55,10 @@
|
||||
{% if current_user.has_permissions('manage_service') %}
|
||||
<h3 class='margin-bottom-0' id="current-year"></h3>
|
||||
{{ ajax_block(partials, updates_url, 'usage') }}
|
||||
{{ show_more(
|
||||
url_for(".usage", service_id=current_service['id']),
|
||||
'See all usage'
|
||||
) }}
|
||||
<a
|
||||
href="{{ url_for('.usage', service_id=current_service['id']) }}"
|
||||
class="usa-link show-more"
|
||||
><span>See all usage</span></a>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/big-number.html" import big_number_with_status, big_number %}
|
||||
{% from "components/pill.html" import pill %}
|
||||
{% from "components/table.html" import list_table, field, hidden_field_heading, right_aligned_field_heading, row_heading %}
|
||||
|
||||
@@ -44,11 +43,16 @@
|
||||
(month.email_counts, 'email'),
|
||||
] %}
|
||||
{% call field(align='left') %}
|
||||
{{ big_number(
|
||||
counts.requested,
|
||||
counts.requested|message_count_label(template_type, suffix=''),
|
||||
smallest=True,
|
||||
) }}
|
||||
<span class="big-number-smallest">
|
||||
<span class="big-number-number">
|
||||
{% if counts.requested is number %}
|
||||
{{ "{:,}".format(counts.requested) }}
|
||||
{% else %}
|
||||
{{ counts.requested }}
|
||||
{% endif %}
|
||||
</span>
|
||||
<span class="big-number-label">{{ counts.requested|message_count_label(template_type, suffix='') }}</span>
|
||||
</span>
|
||||
{% if counts.requested %}
|
||||
<span class="{{ 'failure-highlight' if counts.show_warning else '' }}">
|
||||
{{ "{:,}".format(counts.failed) }} failed
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
{% from "components/big-number.html" import big_number %}
|
||||
{% from "components/big-number.html" import big_number %}
|
||||
{% from "components/table.html" import list_table, field, right_aligned_field_heading, row_heading, spark_bar_field %}
|
||||
{% from "components/show-more.html" import show_more %}
|
||||
|
||||
<div class="ajax-block-container">
|
||||
{% if template_statistics|length > 1 %}
|
||||
@@ -27,11 +24,10 @@
|
||||
|
||||
{{ spark_bar_field(item.count, most_used_template_count, id=item.template_id) }}
|
||||
{% endcall %}
|
||||
{{ show_more(
|
||||
url_for('.template_usage', service_id=current_service.id),
|
||||
'See templates used by month',
|
||||
with_border=False
|
||||
) }}
|
||||
<a
|
||||
href="{{ url_for('.template_usage', service_id=current_service.id) }}"
|
||||
class="usa-link show-more-no-border"
|
||||
><span>See templates used by month</span></a>
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
@@ -4,7 +4,6 @@
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/components/alert/macro.njk" import usaAlert %}
|
||||
|
||||
{% block service_page_title %}
|
||||
{{ heading_action }} text message template
|
||||
|
||||
@@ -1,46 +0,0 @@
|
||||
{% extends "views/platform-admin/_base_template.html" %}
|
||||
{% from "components/file-upload.html" import file_upload %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
|
||||
{% block service_page_title %}
|
||||
{{ '{} email branding'.format('Update' if email_branding else 'Create')}}
|
||||
{% endblock %}
|
||||
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({ "href": url_for('.email_branding') }) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block platform_admin_content %}
|
||||
|
||||
{{ page_header('{} email branding'.format('Update' if email_branding else 'Add')) }}
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-9">
|
||||
{% if logo %}
|
||||
<div id="logo-img">
|
||||
<img src="https://{{ cdn_url }}/{{ logo }}"/>
|
||||
</div>
|
||||
{% endif %}
|
||||
<p>
|
||||
Logos should be PNG files, 108px high
|
||||
</p>
|
||||
{{ file_upload(form.file, allowed_file_extensions=['png'], button_text='{} logo'.format('Update' if email_branding else 'Upload')) }}
|
||||
{% call form_wrapper() %}
|
||||
<div class="form-group">
|
||||
<div style='margin-top:15px;'>{{form.name}}</div>
|
||||
<div style='margin-top:15px;'>{{form.text}}</div>
|
||||
{{ form.colour }}
|
||||
{{ form.brand_type }}
|
||||
{{ page_footer(
|
||||
'Save',
|
||||
button_name='operation',
|
||||
button_value='email-branding-details'
|
||||
) }}
|
||||
</div>
|
||||
{% endcall %}
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,36 +0,0 @@
|
||||
{% extends "views/platform-admin/_base_template.html" %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/live-search.html" import live_search %}
|
||||
{% from "components/components/button/macro.njk" import usaButton %}
|
||||
|
||||
{% set page_title = "Email branding" %}
|
||||
|
||||
{% block per_page_title %}
|
||||
{{ page_title }}
|
||||
{% endblock %}
|
||||
|
||||
{% block platform_admin_content %}
|
||||
|
||||
<h1 class="font-body-2xl">{{ page_title }}</h1>
|
||||
{{ live_search(target_selector='.message-name', show=True, form=search_form, autofocus=True) }}
|
||||
<nav>
|
||||
<ul class="email-brand">
|
||||
{% for brand in email_brandings %}
|
||||
<li class="message-name">
|
||||
<a class="usa-link" href="{{ url_for('.update_email_branding', branding_id=brand.id) }}">
|
||||
{{ brand.name or 'Unnamed' }}
|
||||
</a>
|
||||
</li>
|
||||
{% endfor %}
|
||||
</ul>
|
||||
</nav>
|
||||
<div class="js-stick-at-bottom-when-scrolling">
|
||||
{{ usaButton({
|
||||
"element": "a",
|
||||
"text": "New brand",
|
||||
"href": url_for('.create_email_branding'),
|
||||
"classes": "govuk-button--secondary"
|
||||
}) }}
|
||||
</div>
|
||||
|
||||
{% endblock %}
|
||||
@@ -13,7 +13,6 @@
|
||||
<p class="usa-body">If you work for the government, you can use Notify.gov to keep your users updated.</p>
|
||||
<p class="usa-body">Notify makes it easy to create, customize, and send <a class="usa-link" href="{{ url_for('main.features_sms') }}">text messages</a>.</p>
|
||||
<!-- <ul class="list list-bullet">
|
||||
<li><a class="usa-link" href="{{ url_for('main.features_email') }}">emails</a></li>
|
||||
<li><a class="usa-link" href="{{ url_for('main.features_sms') }}">text messages</a></li>
|
||||
</ul> -->
|
||||
<p class="usa-body">You do not need any technical knowledge to use Notify.</p>
|
||||
|
||||
@@ -1,49 +0,0 @@
|
||||
{% extends "content_template.html" %}
|
||||
{% from "components/table.html" import mapping_table, row, text_field, edit_field, field with context %}
|
||||
|
||||
{% block per_page_title %}
|
||||
Emails
|
||||
{% endblock %}
|
||||
|
||||
{% block content_column_content %}
|
||||
|
||||
<h1 class="font-body-2xl">Emails</h1>
|
||||
<p>Send an unlimited number of emails for free with Notify.gov.</p>
|
||||
{% if not current_user.is_authenticated %}
|
||||
<p><a class="usa-link" href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
|
||||
{% endif %}
|
||||
|
||||
<h2 class="heading heading-medium">Features</h2>
|
||||
<p>Notify makes it easy to:</p>
|
||||
<ul class="list list-bullet">
|
||||
<li>create reusable email templates</li>
|
||||
<li>personalize the content of your emails</li>
|
||||
<li>send and schedule bulk messages</li>
|
||||
</ul>
|
||||
<p>You can also <a class="usa-link" href="{{ url_for('.documentation') }}">integrate with our API</a> to send emails automatically.</p>
|
||||
|
||||
<h3 class="font-body-md margin-bottom-2" id="branding">Email branding</h3>
|
||||
<p>Add your organization’s logo and brand color to email templates.</p>
|
||||
<p>See <a class="usa-link" href="{{ url_for('.branding_and_customisation', _anchor='email-branding') }}">how to change your email branding</a>.</p>
|
||||
|
||||
<h3 class="font-body-md margin-bottom-2" id="send-files">Send files by email</h3>
|
||||
<p>Notify offers a safe and reliable way to send files by email.</p>
|
||||
<p>Upload a file using our API, then send your users an email with a link to download it.</p>
|
||||
<p>Notify uses encrypted links instead of email attachments because:</p>
|
||||
<ul class="list list-bullet">
|
||||
<li>they’re more secure</li>
|
||||
<!--<li>you can track when the recipient downloads your document</li>-->
|
||||
<li>email attachments are often marked as spam</li>
|
||||
</ul>
|
||||
<p>Read our <a class="usa-link" href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
|
||||
|
||||
<h3 class="font-body-md margin-bottom-2" id="reply-to">Add a reply-to address</h3>
|
||||
<p>Notify lets you choose the email address that users reply to.</p>
|
||||
<p>Emails with a reply-to address seem more trustworthy and are less likely to be labelled as spam.</p>
|
||||
<p>See <a class="usa-link" href="{{ url_for('.branding_and_customisation', _anchor='reply-to-address') }}">how to add a reply-to address</a>.</p>
|
||||
|
||||
<h2 class="heading heading-medium">Pricing</h2>
|
||||
<p>It’s free to send emails through Notify.</p>
|
||||
<p><a class="usa-link" href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
|
||||
|
||||
{% endblock %}
|
||||
@@ -34,10 +34,10 @@
|
||||
<li class="usa-process-list__item padding-bottom-4">
|
||||
<h2 class="usa-process-list__heading line-height-sans-3">Set up your service</h2>
|
||||
{% if not current_user.is_authenticated or not current_service %}
|
||||
<p>Review your settings to add message branding and sender information.</p>
|
||||
<p>Review your settings to add message customization and sender information.</p>
|
||||
<p>Add team members and check their permissions.</p>
|
||||
{% else %}
|
||||
<p>Review your <a class="usa-link" href="{{ url_for('.service_settings', service_id=current_service.id) }}">settings</a> to add message branding and sender information.</p>
|
||||
<p>Review your <a class="usa-link" href="{{ url_for('.service_settings', service_id=current_service.id) }}">settings</a> to add message customization and sender information.</p>
|
||||
<p>Add <a class="usa-link" href="{{ url_for('.manage_users', service_id=current_service.id) }}">team members</a> and check their permissions.</p>
|
||||
{% endif %}
|
||||
</li>
|
||||
|
||||
@@ -1,55 +0,0 @@
|
||||
{% extends "content_template.html" %}
|
||||
{% from "components/service-link.html" import service_link %}
|
||||
|
||||
{% block per_page_title %}
|
||||
Branding and customization
|
||||
{% endblock %}
|
||||
|
||||
{% block content_column_content %}
|
||||
|
||||
<h1 class="font-body-2xl margin-bottom-3">Branding and customization</h1>
|
||||
|
||||
<!-- <p>This page explains how to:</p>
|
||||
|
||||
<ul class="list list-bullet">
|
||||
<li><a class="usa-link" href="#email-branding">change your email branding</a></li>
|
||||
<li><a class="usa-link" href="#reply-to-address">add a reply-to email address</a></li>
|
||||
<li><a class="usa-link" href="#text-message-sender">change the text message sender</a></li>
|
||||
</ul>
|
||||
|
||||
<h2 class="font-body-lg" id="email-branding">Change your email branding</h2>
|
||||
|
||||
<p>The default branding for email templates is the Notify.govlogo.</p>
|
||||
|
||||
<p>To change your email branding:</p>
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the <b class="bold">Email settings</b> section of the {{ service_link(current_service, 'main.service_settings', 'settings') }} page.</li>
|
||||
<li>Select <b class="bold">Change</b> on the <b class="bold">Email branding</b> row.</li>
|
||||
</ol>
|
||||
|
||||
<h2 class="font-body-lg" id="reply-to-address">Add a reply-to email address</h2>
|
||||
|
||||
<p>You can choose the email address that your users reply to. You must add at least one reply-to address for your service before you can <a class="usa-link" href="{{ url_for('main.trial_mode_new') }}">request to go live</a>.</p>
|
||||
|
||||
<p>To add a reply-to email address:</p>
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the <b class="bold">Email settings</b> section of the {{ service_link(current_service, 'main.service_settings', 'settings') }} page.</li>
|
||||
<li>Select <b class="bold">Manage</b> on the <b class="bold">Reply-to email addresses</b> row.</li>
|
||||
<li>Select <b class="bold">Add reply-to address</b>.</li>
|
||||
</ol> -->
|
||||
|
||||
<h2 class="font-body-lg" id="text-message-sender">Change the text message sender</h2>
|
||||
|
||||
<p>The text message sender tells your users who the message is from.</p>
|
||||
|
||||
<p>To change the text message sender from the default of ‘Notify.gov’:</p>
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the <b class="bold">Text message settings</b> section of the {{ service_link(current_service, 'main.service_settings', 'settings') }} page.</li>
|
||||
<li>Select <b class="bold">Manage</b> on the <b class="bold">Text message senders</b> row.</li>
|
||||
<li>Select <b class="bold">Change</b> or <b class="bold">Add text message sender</b>.</li>
|
||||
</ol>
|
||||
|
||||
{% endblock %}
|
||||
@@ -17,12 +17,12 @@
|
||||
|
||||
<ul class="list list-bullet">
|
||||
<li><a class="usa-link" href="#editandformat">edit and format messages</a></li>
|
||||
<li><a class="usa-link" href="#branding">add branding and customization</a></li>
|
||||
<li><a class="usa-link" href="#customization">add customization</a></li>
|
||||
<!-- <li><a class="usa-link" href="{{ url_for('.send_files_by_email') }}">send files by email</a></li> -->
|
||||
</ul>
|
||||
|
||||
<h2 class="font-body-lg" id="#formatting">Edit and format messages</h2>
|
||||
|
||||
|
||||
<p>This section explains how to:</p>
|
||||
<ul class="list list-bullet">
|
||||
<li><a class="usa-link" href="#formatting">format your content</a></li>
|
||||
@@ -30,42 +30,42 @@
|
||||
<li><a class="usa-link" href="#personalised-content">personalize your content</a></li>
|
||||
<li><a class="usa-link" href="#optional-content">add optional content</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3 class="font-body-lg" id="formatting">Format your content</h3>
|
||||
|
||||
|
||||
<p>You can see a list of formatting instructions on the edit template page:</p>
|
||||
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the {{ service_link(current_service, 'main.choose_template', 'templates') }} page.</li>
|
||||
<li>Add a new template or choose an existing template and select <b class="bold">Edit</b>.</li>
|
||||
</ol>
|
||||
|
||||
|
||||
<h3 class="font-body-lg" id="links">Add links</h3>
|
||||
|
||||
|
||||
<p>When composing a text message, write URLs in full and Notify will convert them into links for you.
|
||||
</p>
|
||||
|
||||
|
||||
<p>You cannot convert text into a link.
|
||||
<!-- Research shows that people like to check a URL looks genuine before clicking the link in an email. This is hard to do if the URL is hidden behind clickable link text.-->
|
||||
</p>
|
||||
|
||||
|
||||
<p>We do not recommend using a third-party link shortening service because:</p>
|
||||
|
||||
|
||||
<ul class="list list-bullet">
|
||||
<li>your users cannot see where the link will take them</li>
|
||||
<li>your link might stop working if there’s a service outage</li>
|
||||
<li>you can no longer control where the redirect goes</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h3 class="font-body-lg" id="personalised-content">Personalize your content</h3>
|
||||
|
||||
|
||||
<p>To personalize the content of your messages, add a placeholder to the template.</p>
|
||||
|
||||
|
||||
<p>Placeholders are filled in with details, like a name or reference number, each time you send a
|
||||
message.</p>
|
||||
|
||||
|
||||
<p>To add a placeholder to the template:</p>
|
||||
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the {{ service_link(current_service, 'main.choose_template', 'templates') }} page.</li>
|
||||
<li>Add a new template or choose an existing template and select <b class="bold">Edit</b>.</li>
|
||||
@@ -73,20 +73,20 @@
|
||||
((ref number)).</li>
|
||||
<li>Select <b class="bold">Save</b>.</li>
|
||||
</ol>
|
||||
|
||||
|
||||
<p>When you send a message you can either:</p>
|
||||
|
||||
|
||||
<ul class="list list-bullet">
|
||||
<li>manually fill in the placeholders yourself</li>
|
||||
<li>upload a list of personal details and let Notify do it for you</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>If you upload a list, the column names need to match the placeholders in your template.</p>
|
||||
|
||||
|
||||
<h3 class="font-body-lg" id="optional-content">Add optional content</h3>
|
||||
|
||||
|
||||
<p>To add optional content to your messages:</p>
|
||||
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the {{ service_link(current_service, 'main.choose_template', 'templates') }} page.</li>
|
||||
<li>Add a new template or choose an existing template and select <b class="bold">Edit</b>.</li>
|
||||
@@ -94,25 +94,25 @@
|
||||
who are under 18: ((under18??Please get your application signed by a parent or guardian.))</li>
|
||||
<li>Select <b class="bold">Save</b>.</li>
|
||||
</ol>
|
||||
|
||||
|
||||
<p>For each person you send this message to, specify ‘yes’ or ‘no’ to show or hide this content. You
|
||||
can either:</p>
|
||||
|
||||
|
||||
<ul class="list list-bullet">
|
||||
<li>do this yourself</li>
|
||||
<li>upload a list of personal details and let Notify do it for you</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<p>If you upload a list, the column names need to match the optional content in your template.</p>
|
||||
|
||||
<h2 class="font-body-lg" id="branding">Branding and customization</h2>
|
||||
|
||||
<h2 class="font-body-lg" id="customization">Message customization</h2>
|
||||
|
||||
<h3 class="font-body-lg">Change the text message sender</h3>
|
||||
|
||||
|
||||
<p>The text message sender tells your users who the message is from.</p>
|
||||
|
||||
|
||||
<p>To change the text message sender from the default of ‘Notify.gov’:</p>
|
||||
|
||||
|
||||
<ol class="list list-number">
|
||||
<li>Go to the <b class="bold">Text message settings</b> section of the {{
|
||||
service_link(current_service, 'main.service_settings', 'settings') }} page.</li>
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/banner.html" import banner %}
|
||||
{% from "components/ajax-block.html" import ajax_block %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
@@ -13,9 +12,44 @@
|
||||
|
||||
{{ page_header(job.original_file_name) }}
|
||||
|
||||
{{ ajax_block(partials, updates_url, 'status', finished=job.processing_finished) }}
|
||||
{{ ajax_block(partials, updates_url, 'counts', finished=job.processing_finished) }}
|
||||
{{ ajax_block(partials, updates_url, 'notifications', finished=job.processing_finished) }}
|
||||
{% if not job.processing_finished %}
|
||||
<div
|
||||
data-module="update-content"
|
||||
data-resource="{{ updates_url }}"
|
||||
data-key="status"
|
||||
data-form=""
|
||||
>
|
||||
{% endif %}
|
||||
{{ partials['status']|safe }}
|
||||
{% if not job.processing_finished %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if not finished %}
|
||||
<div
|
||||
data-module="update-content"
|
||||
data-resource="{{ updates_url }}"
|
||||
data-key="counts"
|
||||
data-form=""
|
||||
>
|
||||
{% endif %}
|
||||
{{ partials['counts']|safe }}
|
||||
{% if not finished %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
{% if not job.processing_finished %}
|
||||
<div
|
||||
data-module="update-content"
|
||||
data-resource="{{ updates_url }}"
|
||||
data-key="notifications"
|
||||
data-form=""
|
||||
>
|
||||
{% endif %}
|
||||
{{ partials['notifications']|safe }}
|
||||
{% if not job.processing_finished %}
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div> </div>
|
||||
|
||||
|
||||
@@ -13,12 +13,7 @@
|
||||
<p>For <a class="usa-link" href="{{ url_for("main.security") }}">security</a>, this information is only available for seven days after a message has been sent. You can download a report, including a list of sent messages, for your own records.</p>
|
||||
<p>This page describes the statuses you’ll see when you’re signed in to Notify.</p>
|
||||
|
||||
<h2 id="text-message-timezones" class="heading-medium">A note about timezones</h2>
|
||||
|
||||
<p>Notify currently uses UTC (Coordinated Universal Time) for managing and displaying all dates and times in the system. This means that when you're scheduling messages to send later, or are looking at the time a message was sent, it will be in the UTC timezone.</p>
|
||||
|
||||
<p>You can refer to <a href="https://en.wikipedia.org/wiki/Time_in_the_United_States#United_States_and_regional_time_zones">this chart for help</a> with converting UTC times to your local timezone.</p>
|
||||
<!-- <p>If you’re using the Notify API, read our <a class="usa-link" href="{{ url_for('.documentation') }}">documentation</a> for a list of API statuses.<p>
|
||||
<!-- <p>If you’re using the Notify API, read our <a class="usa-link" href="{{ url_for('.documentation') }}">documentation</a> for a list of API statuses.<p>
|
||||
|
||||
<h2 id="email-statuses" class="heading-medium">Emails</h2>
|
||||
<div class="bottom-gutter-3-2">
|
||||
|
||||
@@ -18,7 +18,6 @@
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header(page_title) }}
|
||||
|
||||
{{ ajax_block(
|
||||
partials,
|
||||
url_for('.get_notifications_as_json', service_id=current_service.id, message_type=message_type, status=status),
|
||||
@@ -51,8 +50,7 @@
|
||||
<button class="usa-button" type="submit">
|
||||
<span class="usa-search__submit-text">Search </span><img src="/assets/img/usa-icons-bg/search--white.svg"
|
||||
class="usa-search__submit-icon" alt="Search" />
|
||||
</button>
|
||||
|
||||
</button>
|
||||
{% endcall %}
|
||||
|
||||
|
||||
@@ -70,11 +68,6 @@
|
||||
 
|
||||
Data available for {{ partials.service_data_retention_days }} days
|
||||
</p>
|
||||
<p class="font-body-sm">
|
||||
<a href="https://en.wikipedia.org/wiki/Time_in_the_United_States#United_States_and_regional_time_zones">View timezone chart</a>
|
||||
 
|
||||
For help with understanding and converting UTC times
|
||||
</p>
|
||||
{% endif %}
|
||||
|
||||
{{ ajax_block(
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/radios.html" import radio, conditional_radio_panel %}
|
||||
{% from "components/select-input.html" import select_wrapper %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({ "href": url_for('main.request_to_go_live', service_id=current_service.id) }) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
{% call form_wrapper() %}
|
||||
{% call select_wrapper(form.same_as_service_name) %}
|
||||
{% for option in form.same_as_service_name %}
|
||||
{{ radio(option, data_target='custom-organization-name' if option.data == False else '') }}
|
||||
{% endfor %}
|
||||
{% endcall %}
|
||||
{% call conditional_radio_panel('custom-organization-name') %}
|
||||
{{ form.name }}
|
||||
{% endcall %}
|
||||
{{ page_footer('Continue') }}
|
||||
{% endcall %}
|
||||
{% endblock %}
|
||||
@@ -1,32 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import sticky_page_footer %}
|
||||
{% from "components/live-search.html" import live_search %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
|
||||
{% block per_page_title %}
|
||||
{{ page_title }}
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({ "href": url_for('main.request_to_go_live', service_id=current_service.id) }) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
{{ page_header(page_title) }}
|
||||
{% call form_wrapper() %}
|
||||
<p>
|
||||
{{ form.organizations.label.text }}
|
||||
</p>
|
||||
{{ live_search(
|
||||
target_selector='.usa-radio',
|
||||
show=True,
|
||||
form=search_form,
|
||||
label='Search by name',
|
||||
autofocus=True)
|
||||
}}
|
||||
{{ form.organizations }}
|
||||
{{ sticky_page_footer('Continue') }}
|
||||
{% endcall %}
|
||||
{% endblock %}
|
||||
@@ -67,16 +67,6 @@
|
||||
}}
|
||||
{% endcall %}
|
||||
|
||||
{% call row() %}
|
||||
{{ text_field('Default email branding') }}
|
||||
{{ text_field(current_org.email_branding_name) }}
|
||||
{{ edit_field(
|
||||
'Change',
|
||||
url_for('.edit_organization_email_branding', org_id=current_org.id),
|
||||
suffix='default email branding for the organization'
|
||||
)
|
||||
}}
|
||||
{% endcall %}
|
||||
{% call row() %}
|
||||
{{ text_field('Known email domains') }}
|
||||
{{ optional_text_field(current_org.domains or None, default='None') }}
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
{% extends "org_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/button/macro.njk" import usaButton %}
|
||||
{% from "components/branding-preview.html" import email_branding_preview %}
|
||||
|
||||
{% block org_page_title %}
|
||||
Preview email branding
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
<h1 class="font-body-2xl margin-bottom-3">Preview email branding</h1>
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12">
|
||||
{{ email_branding_preview(form.branding_style.data) }}
|
||||
{% call form_wrapper(action=action) %}
|
||||
<div class="form-group">
|
||||
{{ form.hidden_tag() }}
|
||||
<div class="page-footer">
|
||||
{{ usaButton({ "text": "Save" }) }}
|
||||
</div>
|
||||
</div>
|
||||
{% endcall %}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -1,43 +0,0 @@
|
||||
{% extends "org_template.html" %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/live-search.html" import live_search %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
|
||||
{% set page_title = "Default email branding" %}
|
||||
|
||||
{% block per_page_title %}
|
||||
{{ page_title }}
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({ "href": url_for('.organization_settings', org_id=current_org.id) }) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header(page_title) }}
|
||||
{% call form_wrapper(data_kwargs={'preview-type': 'email'}) %}
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12 preview-pane">
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12">
|
||||
{{ live_search(
|
||||
target_selector='.usa-radio',
|
||||
show=True,
|
||||
form=search_form,
|
||||
label='Search branding styles by name',
|
||||
autofocus=True
|
||||
) }}
|
||||
{{ form.branding_style }}
|
||||
</div>
|
||||
</div>
|
||||
<div class="js-stick-at-bottom-when-scrolling">
|
||||
{{ page_footer('Preview') }}
|
||||
</div>
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -26,7 +26,6 @@
|
||||
('Trial mode services', ('main.trial_services')),
|
||||
('Organizations', ('main.organizations')),
|
||||
('Reports', ('main.platform_admin_reports')),
|
||||
('Email branding', ('main.email_branding')),
|
||||
('Inbound SMS numbers', ('main.inbound_sms_admin')),
|
||||
('Find services by name', ('main.find_services_by_name')),
|
||||
('Find users by email', ('main.find_users_by_email')),
|
||||
|
||||
@@ -1,24 +1,64 @@
|
||||
{% from "components/big-number.html" import big_number_with_status %}
|
||||
|
||||
<div class="grid-row bottom-gutter">
|
||||
<div class="grid-col-6">
|
||||
{{ big_number_with_status(
|
||||
global_stats.email.delivered + global_stats.email.failed,
|
||||
global_stats.email.delivered|message_count_label('email'),
|
||||
global_stats.email.failed,
|
||||
global_stats.email.failure_rate,
|
||||
global_stats.email.failure_rate|float > 3,
|
||||
smaller=True
|
||||
) }}
|
||||
<span class="big-number-with-status">
|
||||
{% if link %}
|
||||
<a class="usa-link display-flex" href="{{ link }}">
|
||||
{% endif %}
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{{ "{:,}".format(global_stats.email.delivered + global_stats.email.failed) }}
|
||||
</span>
|
||||
<span class="big-number-label">{{ global_stats.email.delivered|message_count_label('email') }}</span>
|
||||
</span>
|
||||
{% if link %}
|
||||
</a>
|
||||
{% endif %}
|
||||
<span class="big-number-status{% if (global_stats.email.failure_rate|float > 3) is sameas true %} big-number-status--failing{% endif %}">
|
||||
{% if global_stats.email.failed %}
|
||||
{% if failure_link %}
|
||||
<a class="usa-link" href="{{ failure_link }}">
|
||||
{{ "{:,}".format(global_stats.email.failed) }}
|
||||
failed – {{ global_stats.email.failure_rate }}%
|
||||
</a>
|
||||
{% else %}
|
||||
{{ "{:,}".format(global_stats.email.failed) }}
|
||||
failed – {{ global_stats.email.failure_rate }}%
|
||||
{% endif %}
|
||||
{% else %}
|
||||
No failures
|
||||
{% endif %}
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
<div class="grid-col-6">
|
||||
{{ big_number_with_status(
|
||||
global_stats.sms.delivered + global_stats.sms.failed,
|
||||
global_stats.sms.delivered|message_count_label('sms'),
|
||||
global_stats.sms.failed,
|
||||
global_stats.sms.failure_rate,
|
||||
global_stats.sms.failure_rate|float > 3,
|
||||
smaller=True
|
||||
) }}
|
||||
<span class="big-number-with-status">
|
||||
{% if link %}
|
||||
<a class="usa-link display-flex" href="{{ link }}">
|
||||
{% endif %}
|
||||
<span class="big-number-smaller">
|
||||
<span class="big-number-number">
|
||||
{{ "{:,}".format( global_stats.sms.delivered + global_stats.sms.failed ) }}
|
||||
</span>
|
||||
<span class="big-number-label">{{ global_stats.sms.delivered|message_count_label('sms') }}</span>
|
||||
</span>
|
||||
{% if link %}
|
||||
</a>
|
||||
{% endif %}
|
||||
<span class="big-number-status{% if (global_stats.sms.failure_rate|float > 3) is sameas true %} big-number-status--failing{% endif %}">
|
||||
{% if global_stats.sms.failed %}
|
||||
{% if failure_link %}
|
||||
<a class="usa-link" href="{{ failure_link }}">
|
||||
{{ "{:,}".format(global_stats.sms.failed) }}
|
||||
failed – {{ global_stats.sms.failure_rate }}%
|
||||
</a>
|
||||
{% else %}
|
||||
{{ "{:,}".format(global_stats.sms.failed) }}
|
||||
failed – {{ global_stats.sms.failure_rate }}%
|
||||
{% endif %}
|
||||
{% else %}
|
||||
No failures
|
||||
{% endif %}
|
||||
</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
{% extends "views/platform-admin/_base_template.html" %}
|
||||
{% from "components/big-number.html" import big_number_simple %}
|
||||
{% from "components/status-box.html" import status_box %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/details/macro.njk" import usaDetails %}
|
||||
@@ -33,10 +32,14 @@
|
||||
<div class="grid-row bottom-gutter">
|
||||
{% for noti_type in global_stats %}
|
||||
<div class="grid-col-6">
|
||||
{{ big_number_simple(
|
||||
noti_type.black_box.number,
|
||||
noti_type.black_box.number|message_count_label(noti_type.black_box.notification_type)
|
||||
) }}
|
||||
<span class="big-number-dark bottom-gutter-2-3">
|
||||
<span class="big-number-number">
|
||||
{{ "{:,}".format(noti_type.black_box.number) }}
|
||||
</span>
|
||||
<span class="big-number-label">
|
||||
{{ noti_type.black_box.number|message_count_label(noti_type.black_box.notification_type) }}
|
||||
</span>
|
||||
</span>
|
||||
|
||||
{% for item in noti_type.other_data %}
|
||||
{{ status_box(
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
{% extends "views/platform-admin/_base_template.html" %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/big-number.html" import big_number, big_number_with_status %}
|
||||
{% from "components/big-number.html" import big_number %}
|
||||
{% from "components/table.html" import mapping_table, field, stats_fields, row_group, row, right_aligned_field_heading, hidden_field_heading, text_field %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/button/macro.njk" import usaButton %}
|
||||
|
||||
@@ -162,23 +162,6 @@
|
||||
}}
|
||||
{% endcall %}
|
||||
|
||||
{% if email_branding_options.something_else_is_only_option %}
|
||||
{% set email_request_url = url_for('.email_branding_something_else', service_id=current_service.id) %}
|
||||
{% else %}
|
||||
{% set email_request_url = url_for('.email_branding_request', service_id=current_service.id) %}
|
||||
{% endif %}
|
||||
|
||||
{% call settings_row(if_has_permission='email') %}
|
||||
{{ text_field('Email branding') }}
|
||||
{{ text_field(current_service.email_branding_name) }}
|
||||
{{ edit_field(
|
||||
'Change',
|
||||
email_request_url,
|
||||
permissions=['manage_service'],
|
||||
suffix='email branding',
|
||||
)}}
|
||||
{% endcall %}
|
||||
|
||||
{% call settings_row(if_has_permission='email') %}
|
||||
{{ text_field('Send files by email') }}
|
||||
{{ optional_text_field(current_service.contact_link, default="Not set up", truncate=true) }}
|
||||
@@ -303,11 +286,6 @@
|
||||
{{ text_field('{:,} per year'.format(current_service.free_sms_fragment_limit)) }}
|
||||
{{ edit_field('Change', url_for('.set_free_sms_allowance', service_id=current_service.id), suffix='free text message allowance') }}
|
||||
{% endcall %}
|
||||
{% call row() %}
|
||||
{{ text_field('Email branding' )}}
|
||||
{{ text_field(current_service.email_branding_name) }}
|
||||
{{ edit_field('Change', url_for('.service_set_email_branding', service_id=current_service.id), suffix='email branding (admin view)') }}
|
||||
{% endcall %}
|
||||
{% call row() %}
|
||||
{{ text_field('Custom data retention')}}
|
||||
{% call field() %}
|
||||
|
||||
@@ -1,36 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Before you request new branding
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({
|
||||
"href": url_for('.email_branding_request', service_id=current_service.id)
|
||||
}) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header('Before you request new branding') }}
|
||||
|
||||
<p>You can only use Notify.gov branding if people go to Notify.gov to access your service.</p>
|
||||
|
||||
<p>
|
||||
You cannot use Notify.gov branding if your organization is
|
||||
<a class="usa-link"
|
||||
href="https://www.gov.uk/government/publications/govuk-proposition/govuk-proposition#organizations-independent-from-government">independent
|
||||
from government</a>.
|
||||
</p>
|
||||
|
||||
<p>We’ll email you once your branding’s ready to use, or if we need any more information.</p>
|
||||
|
||||
{% call form_wrapper() %}
|
||||
{{ page_footer('Request new branding') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,43 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/branding-preview.html" import email_branding_preview %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Check your new branding
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({
|
||||
"href": url_for('.email_branding_request', service_id=current_service.id)
|
||||
}) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header('Check your new branding') }}
|
||||
|
||||
<p>
|
||||
Emails from {{ current_service.name }} will look like this.
|
||||
</p>
|
||||
|
||||
{{ email_branding_preview('__NONE__') }}
|
||||
|
||||
<h2 class="font-body-lg">Before you continue</h2>
|
||||
|
||||
<p>You can only use Notify.gov branding if people go to Notify.gov to access your service.</p>
|
||||
|
||||
<p>
|
||||
You cannot use Notify.gov branding if your organization is
|
||||
<a class="usa-link"
|
||||
href="https://www.gov.uk/government/publications/govuk-proposition/govuk-proposition#organizations-independent-from-government">independent
|
||||
from government</a>.
|
||||
</p>
|
||||
|
||||
{% call form_wrapper() %}
|
||||
{{ page_footer('Use this branding') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,48 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/radios.html" import radio %}
|
||||
{% from "components/select-input.html" import select_wrapper %}
|
||||
{% from "components/textbox.html" import textbox %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/branding-preview.html" import email_branding_preview %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Change email branding
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({
|
||||
"href": url_for('.service_settings', service_id=current_service.id)
|
||||
}) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header('Change email branding') }}
|
||||
|
||||
<p>
|
||||
Your emails currently have {{ branding_name }} branding.
|
||||
</p>
|
||||
|
||||
{{ email_branding_preview(
|
||||
current_service.email_branding_id if current_service.email_branding else '__NONE__'
|
||||
) }}
|
||||
|
||||
{% if current_service.needs_to_change_email_branding %}
|
||||
<p>
|
||||
You should be using your own branding instead.
|
||||
</p>
|
||||
{% endif %}
|
||||
|
||||
{% call form_wrapper() %}
|
||||
{% call select_wrapper(form.options) %}
|
||||
{% for option in form.options %}
|
||||
{{ radio(option) }}
|
||||
{% endfor %}
|
||||
{% endcall %}
|
||||
{{ page_footer('Continue') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,31 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
|
||||
{% block service_page_title %}
|
||||
When you request new branding
|
||||
{% endblock %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({
|
||||
"href": url_for('.email_branding_request', service_id=current_service.id)
|
||||
}) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header('When you request new branding') }}
|
||||
|
||||
<p>We’ll check if we already have the {{organization}} logo.</p>
|
||||
|
||||
<p>If we do, we’ll let you know when your new branding is ready to use.</p>
|
||||
|
||||
<p>If we don’t, we’ll email you to ask for more information.</p>
|
||||
|
||||
{% call form_wrapper() %}
|
||||
{{ page_footer('Request new branding') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,30 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/textbox.html" import textbox %}
|
||||
{% from "components/components/textarea/macro.njk" import govukTextarea %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Describe the branding you want
|
||||
{% endblock %}
|
||||
|
||||
{% if branding_options.something_else_is_only_option %}
|
||||
{% set back_url = url_for('.service_settings', service_id=current_service.id) %}
|
||||
{% else %}
|
||||
{% set back_url = url_for('.email_branding_request', service_id=current_service.id) %}
|
||||
{% endif %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({"href": back_url}) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{% call form_wrapper() %}
|
||||
{{ form.something_else }}
|
||||
<p class="form-group">We’ll email you when your branding is ready, or if we need any more information.</p>
|
||||
{{ page_footer('Request new branding') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -1,26 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/button/macro.njk" import usaButton %}
|
||||
{% from "components/branding-preview.html" import email_branding_preview %}
|
||||
|
||||
{% block service_page_title %}
|
||||
Preview email branding
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
<h1 class="font-body-2xl margin-bottom-3">Preview email branding</h1>
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12">
|
||||
{{ email_branding_preview(form.branding_style.data) }}
|
||||
{% call form_wrapper(action=action) %}
|
||||
<div class="form-group">
|
||||
{{ form.hidden_tag() }}
|
||||
<div class="page-footer">
|
||||
{{ usaButton({ "text": "Save" }) }}
|
||||
</div>
|
||||
</div>
|
||||
{% endcall %}
|
||||
</div>
|
||||
</div>
|
||||
{% endblock %}
|
||||
@@ -1,41 +0,0 @@
|
||||
{% extends "withnav_template.html" %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import page_footer, sticky_page_footer %}
|
||||
{% from "components/live-search.html" import live_search %}
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/components/back-link/macro.njk" import usaBackLink %}
|
||||
|
||||
{% set page_title = "Set email branding" %}
|
||||
|
||||
{% block backLink %}
|
||||
{{ usaBackLink({ "href": url_for('.service_settings', service_id=current_service.id) }) }}
|
||||
{% endblock %}
|
||||
|
||||
{% block service_page_title %}
|
||||
{{ page_title }}
|
||||
{% endblock %}
|
||||
|
||||
{% block maincolumn_content %}
|
||||
|
||||
{{ page_header(page_title) }}
|
||||
{% call form_wrapper(data_kwargs={'preview-type': 'email'}) %}
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12 preview-pane">
|
||||
</div>
|
||||
</div>
|
||||
<div class="grid-row">
|
||||
<div class="grid-col-12">
|
||||
{{ live_search(
|
||||
target_selector='.usa-radio',
|
||||
show=True,
|
||||
form=search_form,
|
||||
label='Search branding styles by name',
|
||||
autofocus=True
|
||||
) }}
|
||||
{{ form.branding_style }}
|
||||
</div>
|
||||
</div>
|
||||
{{ sticky_page_footer('Preview') }}
|
||||
{% endcall %}
|
||||
|
||||
{% endblock %}
|
||||
@@ -4,7 +4,6 @@
|
||||
{% from "components/form.html" import form_wrapper %}
|
||||
{% from "components/page-header.html" import page_header %}
|
||||
{% from "components/page-footer.html" import page_footer %}
|
||||
{% from "components/components/alert/macro.njk" import usaAlert %}
|
||||
|
||||
|
||||
{% extends "withnav_template.html" %}
|
||||
@@ -23,7 +22,7 @@
|
||||
|
||||
<p>
|
||||
Every message starts with a template. You can change it later.
|
||||
|
||||
|
||||
{% if current_user.has_permissions('manage_templates') %}
|
||||
You need a template before you can
|
||||
{% else %}
|
||||
@@ -36,11 +35,13 @@
|
||||
|
||||
<div class="grid-row">
|
||||
<div class="{% if current_user.has_permissions('manage_templates') %} grid-col-10 {% else %} grid-col-12 {% endif %}">
|
||||
{{ usaAlert({
|
||||
"text": "Every message starts with a template. To send, choose or create a template.",
|
||||
"slim": true,
|
||||
"type": "info",
|
||||
}) }}
|
||||
<div class="usa-alert usa-alert--slim usa-alert--info">
|
||||
<div class="usa-alert__body">
|
||||
<p class="usa-alert__text">
|
||||
Every message starts with a template. To send, choose or create a template.
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
{{ folder_path(
|
||||
folders=template_folder_path,
|
||||
service_id=current_service.id,
|
||||
|
||||
@@ -21,7 +21,6 @@
|
||||
<ul class="list list-bullet">
|
||||
<li><a class="usa-link" href="{{ url_for('main.trial_mode_new') }}">trial mode</a></li>
|
||||
<li><a class="usa-link" href="{{ url_for('main.message_status') }}">message status types</a></li>
|
||||
<li><a class="usa-link" href="{{ url_for('main.features_email') }}">email replies</a></li>
|
||||
<li><a class="usa-link" href="{{ url_for('main.features_sms') }}">text message replies</a></li>
|
||||
</ul>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user