Update all links to use GOVUK Frontend style

Includes:
- turning off :visited styles to match existing
  design
- swapping heading classes used to make links bold
  for the GOVUK Frontend bold override class
- adding visually hidden text to some links to
  make them work when isolated from their context

We may need to revisit whether some links, such as
those for documentation and features, may benefit
from having some indication that their target has
been visited.
This commit is contained in:
Tom Byers
2019-12-06 07:53:46 +00:00
parent 5ba5ee2502
commit cd36182ea6
123 changed files with 272 additions and 266 deletions

View File

@@ -1,6 +1,6 @@
{% macro big_number(number, label, link=None, currency='', smaller=False, smallest=False) %}
{% if link %}
<a class="big-number-link" href="{{ link }}">
<a class="govuk-link govuk-link--no-visited-state big-number-link" href="{{ link }}">
{% endif %}
<div class="big-number{% if smaller %}-smaller{% endif %}{% if smallest %}-smallest{% endif %}">
<div class="big-number-number">
@@ -42,7 +42,7 @@
<div class="big-number-status{% if danger_zone %}-failing{% endif %}">
{% if failures %}
{% if failure_link %}
<a href="{{ failure_link }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ failure_link }}">
{{ "{:,}".format(failures) }}
failed {{ failure_percentage }}%
</a>

View File

@@ -5,7 +5,7 @@
{% for item in items %}
{% if item.title and item.link %}
<li class="browse-list-item">
<a href="{{ item.link }}" class="browse-list-link{% if item.destructive %}-destructive{% endif %}">{{ item.title }}</a>
<a href="{{ item.link }}" class="govuk-link govuk-link--no-visited-state browse-list-link{% if item.destructive %}-destructive{% endif %}">{{ item.title }}</a>
{% if item.hint %}
<div class="browse-list-hint">
{{ item.hint }}

View File

@@ -32,7 +32,7 @@
</label>
{% if alternate_link and alternate_link_text %}
<span class="file-upload-alternate-link">
or <a href="{{ alternate_link }}">{{ alternate_link_text }}</a>
or <a class="govuk-link govuk-link--no-visited-state" href="{{ alternate_link }}">{{ alternate_link_text }}</a>
</span>
{% endif %}
<label class="file-upload-filename" for="{{ field.name }}"></label>

View File

@@ -17,12 +17,12 @@
{% else %}
{% if folder.id %}
{% if current_user.has_template_folder_permission(folder) %}
<a href="{{ url_for('.choose_template', service_id=service_id, template_type=template_type, template_folder_id=folder.id) }}" class="folder-heading-folder {% if loop.index < (loop.length - 1) %}folder-heading-folder-truncated{% endif %}" title="{{ folder.name }}">{{ folder.name }}</a>
<a href="{{ url_for('.choose_template', service_id=service_id, template_type=template_type, template_folder_id=folder.id) }}" class="govuk-link govuk-link--no-visited-state folder-heading-folder {% if loop.index < (loop.length - 1) %}folder-heading-folder-truncated{% endif %}" title="{{ folder.name }}">{{ folder.name }}</a>
{% else %}
<span class="folder-heading-folder">{{ folder.name }}</span>
{% endif %}
{% else %}
<a href="{{ url_for('.choose_template', service_id=service_id, template_type=template_type) }}" title="Templates" class="{% if loop.length > 2 %}folder-heading-folder-root-truncated{% endif %}">Templates</a>
<a href="{{ url_for('.choose_template', service_id=service_id, template_type=template_type) }}" title="Templates" class="govuk-link govuk-link--no-visited-state {% if loop.length > 2 %}folder-heading-folder-root-truncated{% endif %}">Templates</a>
{% endif %}
{% if not loop.last %}{{ folder_path_separator() }}{% endif %}
{% endif %}
@@ -40,7 +40,7 @@
{% if folder_path %}
<h2 class="heading-medium folder-heading">
{% if folder_path|length == 1 %}
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id) }}">Services</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.choose_template_to_copy', service_id=current_service_id) }}">Services</a>
{{ folder_path_separator() }}
{% endif %}
{% for folder in folder_path %}
@@ -51,15 +51,15 @@
{% else %}
{% if folder.id %}
{% if current_user.has_template_folder_permission(folder) %}
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id, from_folder=folder.id) }}" class="folder-heading-folder">{{ folder.name }}</a>
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id, from_folder=folder.id) }}" class="govuk-link govuk-link--no-visited-state folder-heading-folder">{{ folder.name }}</a>
{% else %}
<span class="folder-heading-folder">{{ folder.name }}</span>
{% endif %}
{% if not loop.last %}{{ folder_path_separator() }}{% endif %}
{% elif folder.parent_id == None %}
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id, from_folder=folder.id) }}" class="folder-heading-folder">{{ from_service.name }}</a> {% if not loop.last %}{{ folder_path_separator() }}{% endif %}
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id, from_folder=folder.id) }}" class="govuk-link govuk-link--no-visited-state folder-heading-folder">{{ from_service.name }}</a> {% if not loop.last %}{{ folder_path_separator() }}{% endif %}
{% else %}
<a href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id) }}">{{ from_service.name }}</a> {% if not loop.last %}{{ folder_path_separator() }}{% endif %}
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.choose_template_to_copy', service_id=current_service_id, from_service=from_service.id) }}">{{ from_service.name }}</a> {% if not loop.last %}{{ folder_path_separator() }}{% endif %}
{% endif %}
{% endif %}
{% endfor %}

View File

@@ -26,11 +26,11 @@
{% endif %}
{% if delete_link %}
<span class="page-footer-delete-link {% if not button_text %}page-footer-delete-link-without-button{% endif %}">
<a href="{{ delete_link }}">{{ delete_link_text }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ delete_link }}">{{ delete_link_text }}</a>
</span>
{% endif %}
{% if secondary_link and secondary_link_text %}
<a class="page-footer-secondary-link" href="{{ secondary_link }}">{{ secondary_link_text }}</a>
<a class="govuk-link govuk-link--no-visited-state page-footer-secondary-link" href="{{ secondary_link }}">{{ secondary_link_text }}</a>
{% endif %}
</div>
{% endmacro %}

View File

@@ -13,7 +13,7 @@
<div class='pill-selected-item{% if not show_count %} pill-centered-item{% endif %}' tabindex='0'>
{% else %}
<li aria-selected='false' role='tab'>
<a href="{{ link }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ link }}">
{% endif %}
{% if show_count %}
{{ big_number(count, **big_number_args) }}

View File

@@ -4,7 +4,7 @@
<ul class="group">
{% if previous_page %}
<li class="previous-page">
<a href="{{previous_page['url']}}" rel="previous" >
<a class="govuk-link govuk-link--no-visited-state" href="{{previous_page['url']}}" rel="previous" >
<span class="pagination-part-title">
<svg class="pagination-icon" xmlns="http://www.w3.org/2000/svg" height="13" width="17" viewBox="0 0 17 13">
<path fill="currentColor" d="m6.5938-0.0078125-6.7266 6.7266 6.7441 6.4062 1.377-1.449-4.1856-3.9768h12.896v-2h-12.984l4.2931-4.293-1.414-1.414z"/>
@@ -17,7 +17,7 @@
{% endif %}
{% if next_page %}
<li class="next-page">
<a href="{{next_page['url']}}" rel="next">
<a class="govuk-link govuk-link--no-visited-state" href="{{next_page['url']}}" rel="next">
<span class="pagination-part-title">
{{next_page['title']}}
<svg class="pagination-icon" xmlns="http://www.w3.org/2000/svg" height="13" width="17" viewBox="0 0 17 13">

View File

@@ -1,6 +1,6 @@
{% macro show_more(url, label, with_border=True) %}
<a
href="{{ url }}"
class="show-more{% if not with_border %}-no-border{% endif %}"
class="govuk-link govuk-link--no-visited-state show-more{% if not with_border %}-no-border{% endif %}"
><span>{{ label }}</span></a>
{% endmacro %}

View File

@@ -2,7 +2,7 @@
<div class="big-number-with-status">
<div class="big-number-status{% if failing %}-failing{% endif %}">
{% if url %}
<a href="{{ url }}">{{ number }} {{ label }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url }}">{{ number }} {{ label }}</a>
{% else %}
{{ number }} {{ label }}
{% endif %}

View File

@@ -4,7 +4,7 @@
itemscope
itemtype="http://schema.org/ListItem"
>
<a href="{{ url_for(item['link']) }}" itemprop="item">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for(item['link']) }}" itemprop="item">
<span itemprop="name">{{item['name']}}</span>
</a>
</li>

View File

@@ -117,14 +117,14 @@
{% macro link_field(text, link) -%}
{% call field() %}
<a href="{{ link }}">{{ text }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ link }}">{{ text }}</a>
{% endcall %}
{%- endmacro %}
{% macro edit_field(text, link, permissions=[]) -%}
{% call field(align='right') %}
{% if not permissions or current_user.has_permissions(*permissions) %}
<a href="{{ link }}">{{ text }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ link }}">{{ text }}</a>
{% endif %}
{% endcall %}
{%- endmacro %}
@@ -155,7 +155,7 @@
) %}
{% if displayed_on_single_line %}<span class="align-with-message-body">{% endif %}
{% if notification.status|format_notification_status_as_url(notification.notification_type) %}
<a href="{{ notification.status|format_notification_status_as_url(notification.notification_type) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ notification.status|format_notification_status_as_url(notification.notification_type) }}">
{% endif %}
{{ notification.status|format_notification_status(notification.template.template_type) }}
{% if notification.status|format_notification_status_as_url(notification.notification_type) %}

View File

@@ -1,6 +1,6 @@
{% macro task_list_item(completed, label, link) %}
<li class="task-list-item">
<span aria-describedby="{{ label|id_safe }}"><a href="{{ link }}">{{ label }}</a></span>
<span aria-describedby="{{ label|id_safe }}"><a class="govuk-link govuk-link--no-visited-state" href="{{ link }}">{{ label }}</a></span>
{% if completed %}
<strong class="task-list-indicator-completed" id="{{ label|id_safe }}">Completed</strong>
{% else %}

View File

@@ -58,7 +58,7 @@
{% endif %}
{% if help_link and help_link_text %}
<p class="textbox-help-link">
<a href='{{ help_link }}'>{{ help_link_text }}</a>
<a class="govuk-link govuk-link--no-visited-state" href='{{ help_link }}'>{{ help_link_text }}</a>
</p>
{% endif %}
</div>

View File

@@ -4,6 +4,6 @@
<div class="grid-row">
<div class="column-two-thirds">
<h1>Youre not authorised to see this page</h1>
<p><a href="{{ url_for('.sign_in' )}}">Sign in</a> to GOV.UK Notify and try again.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.sign_in' )}}">Sign in</a> to GOV.UK Notify and try again.</p>
</div>
{% endblock %}

View File

@@ -13,7 +13,7 @@
If you pasted the web address, check you copied the entire address.
</p>
<p>
If the web address is correct or you selected a link or button, <a href="{{ url_for('main.support') }}">contact us</a>.
If the web address is correct or you selected a link or button, <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.support') }}">contact us</a>.
</p>
</div>
</div>

View File

@@ -13,7 +13,7 @@
If you pasted the web address, check you copied the entire address.
</p>
<p>
If the web address is correct or you selected a link or button, <a href="{{ url_for('main.support') }}">contact us</a>.
If the web address is correct or you selected a link or button, <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.support') }}">contact us</a>.
</p>
</div>
</div>

View File

@@ -12,7 +12,7 @@
Files must be smaller than 5 MB.
</p>
<p>
<a href="javascript: history.go(-1)">Go back and try again.</a>
<a class="govuk-link govuk-link--no-visited-state" href="javascript: history.go(-1)">Go back and try again.</a>
</p>
</div>
</div>

View File

@@ -10,10 +10,10 @@
Try again later.
</p>
<p>
You can check our <a href="https://status.notifications.service.gov.uk">system status</a> page to see if there are any known issues.
You can check our <a class="govuk-link govuk-link--no-visited-state" href="https://status.notifications.service.gov.uk">system status</a> page to see if there are any known issues.
</p>
<p>
To report a problem, email <a href="mailto:notify-support@digital.cabinet-office.gov.uk">notify-support@digital.cabinet-office.gov.uk</a>
To report a problem, email <a class="govuk-link govuk-link--no-visited-state" href="mailto:notify-support@digital.cabinet-office.gov.uk">notify-support@digital.cabinet-office.gov.uk</a>
</p>
</div>
</div>

View File

@@ -5,32 +5,32 @@
<ul>
{% if current_user.has_permissions() %}
{% if current_user.has_permissions('view_activity') %}
<li><a href="{{ url_for('.service_dashboard', service_id=current_service.id) }}" {{ main_navigation.is_selected('dashboard') }}>Dashboard</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.service_dashboard', service_id=current_service.id) }}" {{ main_navigation.is_selected('dashboard') }}>Dashboard</a></li>
{% endif %}
<li><a href="{{ url_for('.choose_template', service_id=current_service.id) }}" {{ main_navigation.is_selected('templates') }}>Templates</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.choose_template', service_id=current_service.id) }}" {{ main_navigation.is_selected('templates') }}>Templates</a></li>
{% if current_user.has_permissions('view_activity') %}
{% if current_service.can_upload_letters %}
<li><a href="{{ url_for('main.uploads', service_id=current_service.id) }}" {{ main_navigation.is_selected('uploads') }}>Uploads</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.uploads', service_id=current_service.id) }}" {{ main_navigation.is_selected('uploads') }}>Uploads</a></li>
{% endif %}
{% else %}
<li><a href="{{ url_for('.view_notifications', service_id=current_service.id, status='sending,delivered,failed') }}" {{ casework_navigation.is_selected('sent-messages') }}>Sent messages</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_notifications', service_id=current_service.id, status='sending,delivered,failed') }}" {{ casework_navigation.is_selected('sent-messages') }}>Sent messages</a></li>
{% if current_service.has_jobs or current_service.can_upload_letters %}
<li><a href="{{ url_for('main.uploads', service_id=current_service.id) }}" {{ casework_navigation.is_selected('uploads') }}>Uploads</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.uploads', service_id=current_service.id) }}" {{ casework_navigation.is_selected('uploads') }}>Uploads</a></li>
{% endif %}
{% endif %}
<li><a href="{{ url_for('.manage_users', service_id=current_service.id) }}" {{ main_navigation.is_selected('team-members') }}>Team members</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.manage_users', service_id=current_service.id) }}" {{ main_navigation.is_selected('team-members') }}>Team members</a></li>
{% if current_user.has_permissions('manage_service', allow_org_user=True) %}
<li><a href="{{ url_for('.usage', service_id=current_service.id) }}" {{ main_navigation.is_selected('usage') }}>Usage</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.usage', service_id=current_service.id) }}" {{ main_navigation.is_selected('usage') }}>Usage</a></li>
{% endif %}
{% if current_user.has_permissions('manage_api_keys', 'manage_service') %}
<li><a href="{{ url_for('.service_settings', service_id=current_service.id) }}" {{ main_navigation.is_selected('settings') }}>Settings</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.service_settings', service_id=current_service.id) }}" {{ main_navigation.is_selected('settings') }}>Settings</a></li>
{% endif %}
{% if current_user.has_permissions('manage_api_keys') %}
<li><a href="{{ url_for('.api_integration', service_id=current_service.id) }}" {{ main_navigation.is_selected('api-integration') }}>API integration</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.api_integration', service_id=current_service.id) }}" {{ main_navigation.is_selected('api-integration') }}>API integration</a></li>
{% endif %}
{% elif current_user.has_permissions(allow_org_user=True) %}
<li><a href="{{ url_for('.usage', service_id=current_service.id) }}" {{ main_navigation.is_selected('usage') }}>Usage</a></li>
<li><a href="{{ url_for('.manage_users', service_id=current_service.id) }}" {{ main_navigation.is_selected('team-members') }}>Team members</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.usage', service_id=current_service.id) }}" {{ main_navigation.is_selected('usage') }}>Usage</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.manage_users', service_id=current_service.id) }}" {{ main_navigation.is_selected('team-members') }}>Team members</a></li>
{% endif %}
</ul>
</nav>

View File

@@ -1,10 +1,10 @@
<nav class="navigation">
<ul>
<li><a href="{{ url_for('.organisation_dashboard', org_id=current_org.id) }}" {{ org_navigation.is_selected('dashboard') }}>Usage</a></li>
<li><a href="{{ url_for('.manage_org_users', org_id=current_org.id) }}" {{ org_navigation.is_selected('team-members') }}>Team members</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.organisation_dashboard', org_id=current_org.id) }}" {{ org_navigation.is_selected('dashboard') }}>Usage</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.manage_org_users', org_id=current_org.id) }}" {{ org_navigation.is_selected('team-members') }}>Team members</a></li>
{% if current_user.platform_admin %}
<li><a href="{{ url_for('.organisation_settings', org_id=current_org.id) }}" {{ org_navigation.is_selected('settings') }}>Settings</a></li>
<li><a href="{{ url_for('.organisation_trial_mode_services', org_id=current_org.id) }}" {{ org_navigation.is_selected('trial-services') }}>Trial mode services</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.organisation_settings', org_id=current_org.id) }}" {{ org_navigation.is_selected('settings') }}>Settings</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.organisation_trial_mode_services', org_id=current_org.id) }}" {{ org_navigation.is_selected('trial-services') }}>Trial mode services</a></li>
{% endif %}
</ul>
</nav>

View File

@@ -8,12 +8,12 @@
<div class="govuk-width-container">
<div class="navigation-service">
{% if current_user.platform_admin %}
<a href="{{ url_for('.organisations') }}" class="navigation-organisation-link">All organisations</a>
<a href="{{ url_for('.organisations') }}" class="govuk-link govuk-link--no-visited-state navigation-organisation-link">All organisations</a>
{% endif %}
<div class="navigation-service-name">
{{ current_org.name }}
</div>
<a href="{{ url_for('main.choose_account') }}" class="navigation-service-switch">Switch service</a>
<a href="{{ url_for('main.choose_account') }}" class="govuk-link govuk-link--no-visited-state navigation-service-switch">Switch service</a>
</div>
<div class="grid-row govuk-!-padding-bottom-12">
<div class="column-one-quarter">

View File

@@ -7,6 +7,6 @@
{%- endif %}
</h1>
<p>
In <a href="{{ url_for('.trial_mode_new') }}">trial mode</a> you can only
In <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.trial_mode_new') }}">trial mode</a> you can only
send to yourself and members of your team
</p>

View File

@@ -8,7 +8,7 @@
<p>
You can only send {{ current_service.message_limit }} messages per day
{%- if current_service.trial_mode %}
in <a href="{{ url_for('.trial_mode_new')}}">trial mode</a>
in <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.trial_mode_new')}}">trial mode</a>
{%- endif -%}
.
</p>

View File

@@ -3,6 +3,6 @@
{{ 'this letter' if count_of_recipients == 1 else 'these letters' }}
</h1>
<p>
In <a href="{{ url_for('.trial_mode_new') }}">trial mode</a> you
In <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.trial_mode_new') }}">trial mode</a> you
can only preview how your letters will look
</p>

View File

@@ -7,7 +7,7 @@
<p>
Sending
<a href="{{ url_for('.view_template_version', service_id=current_service.id, template_id=job.template.id, version=job.template_version) }}">{{ job.template.name }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_template_version', service_id=current_service.id, template_id=job.template.id, version=job.template_version) }}">{{ job.template.name }}</a>
{{ job.scheduled_for|format_datetime_relative }}
</p>
<div class="page-footer">
@@ -34,7 +34,7 @@
</p>
{% elif notifications %}
<p class="{% if job.template.template_type != 'letter' %}bottom-gutter{% endif %}">
<a href="{{ download_link }}" download class="heading-small">Download this report</a>
<a href="{{ download_link }}" download class="govuk-link govuk-link--no-visited-state heading-small">Download this report</a>
&emsp;
<span id="time-left">{{ time_left }}</span>
</p>
@@ -55,7 +55,7 @@
field_headings_visible=False
) %}
{% call row_heading() %}
<a class="file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id, from_job=job.id) }}">{{ item.to }}</a>
<a class="govuk-link govuk-link--no-visited-state file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id, from_job=job.id) }}">{{ item.to }}</a>
<p class="file-list-hint">
{{ item.preview_of_content }}
</p>

View File

@@ -1,7 +1,7 @@
<div class="ajax-block-container">
<p class="notification-status {{ notification.status|format_notification_status_as_field_status(notification.notification_type) }}">
{% if notification.status|format_notification_status_as_url(notification.notification_type) %}
<a href="{{ notification.status|format_notification_status_as_url(notification.notification_type) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ notification.status|format_notification_status_as_url(notification.notification_type) }}">
{% endif %}
{{ notification.status|format_notification_status(
notification.template.template_type

View File

@@ -4,5 +4,5 @@
cost more.
</p>
<p>
See <a href="{{ url_for('.pricing') }}">pricing</a> for details.
See <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">pricing</a> for details.
</p>

View File

@@ -11,5 +11,5 @@
Royal Mail delivers from Monday to Saturday, excluding bank holidays.
</p>
<p>
See a list of <a href="{{ url_for('.pricing') + '#letters'}}">postage prices</a>.
See a list of <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') + '#letters'}}">postage prices</a>.
</p>

View File

@@ -9,4 +9,4 @@
Download your document at: ((link_to_document))
</p>
</div>
Next, use the API to upload your document. Follow the instructions to send a document by email in the <a href="{{ url_for('main.documentation') }}">API documentation</a>.
Next, use the API to upload your document. Follow the instructions to send a document by email in the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.documentation') }}">API documentation</a>.

View File

@@ -31,7 +31,7 @@
Notify delivers the message
</p>
{% if help == '3' %}
<a href='{{ url_for(".go_to_dashboard_after_tour", service_id=current_service.id, example_template_id=template.id) }}'>
<a class="govuk-link govuk-link--no-visited-state" href='{{ url_for(".go_to_dashboard_after_tour", service_id=current_service.id, example_template_id=template.id) }}'>
Now go to your dashboard
</a>
{% endif %}

View File

@@ -19,7 +19,7 @@
{% if item.status in ('pending-virus-check', 'virus-scan-failed') %}
<span class="file-list-filename loading-indicator">Checking</span>
{% else %}
<a class="file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id) }}">{{ item.to.splitlines()[0].lstrip().rstrip(' ,') if item.to else '' }}</a>
<a class="govuk-link govuk-link--no-visited-state file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id) }}">{{ item.to.splitlines()[0].lstrip().rstrip(' ,') if item.to else '' }}</a>
{% endif %}
<p class="file-list-hint">
{{ item.preview_of_content }}

View File

@@ -15,7 +15,7 @@
</h1>
<p>
<a href="{{ download_link }}">Download the agreement</a>{% if owner %} for {{ owner }}{% endif %}.
<a class="govuk-link govuk-link--no-visited-state" href="{{ download_link }}">Download the agreement</a>{% if owner %} for {{ owner }}{% endif %}.
</p>
<p>
The agreement contains commercially sensitive information. Do not share it outside your organisation.

View File

@@ -28,7 +28,7 @@
There are different agreements for crown and non-crown organisations.
</p>
<p>
<a href="{{ url_for('main.support') }}">Contact us</a> to tell us
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.support') }}">Contact us</a> to tell us
whether or not you work for a crown organisation. If youre not sure
well help you work it out.
</p>

View File

@@ -19,7 +19,7 @@
{{ current_service.organisation.name }} has already accepted the GOV.UK
Notify data sharing and financial agreement.
</p>
<p>For more information, you can <a href="{{ url_for('main.service_download_agreement', service_id=current_service.id) }}">download a copy of the agreement</a>.
<p>For more information, you can <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.service_download_agreement', service_id=current_service.id) }}">download a copy of the agreement</a>.
</p>
<p>
The agreement is confidential and should not be shared outside your organisation.

View File

@@ -26,7 +26,7 @@
Once accepted, the agreement covers all Notify services from {{ current_service.organisation.name }}.
</p>
<p>
<a href="{{ url_for('main.service_download_agreement', service_id=current_service.id) }}">Download a copy of the data sharing and financial agreement</a>.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.service_download_agreement', service_id=current_service.id) }}">Download a copy of the data sharing and financial agreement</a>.
</p>
<p>
The agreement is confidential and should not be shared outside your organisation.

View File

@@ -19,7 +19,7 @@
<p>
When you send an email or text message, we can tell you if Notify was able to deliver it.
Read the Callbacks section of our <a href="{{ url_for('main.documentation') }}">API documentation</a> for more information.
Read the Callbacks section of our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.documentation') }}">API documentation</a> for more information.
</p>
{% call form_wrapper() %}

View File

@@ -17,7 +17,7 @@
<div class="column-five-sixths">
<p>
When you receive a text message in Notify, we can forward it to your system.
Check the <a href="{{ url_for('.callbacks') }}"> callback documentation </a> for more information.
Check the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.callbacks') }}"> callback documentation </a> for more information.
</p>
{% call form_wrapper() %}

View File

@@ -16,13 +16,13 @@
<nav class="grid-row bottom-gutter-1-2">
<div class="column-one-third">
<a class="pill-separate-item" href="{{ url_for('.api_keys', service_id=current_service.id) }}">API keys</a>
<a class="govuk-link govuk-link--no-visited-state pill-separate-item" href="{{ url_for('.api_keys', service_id=current_service.id) }}">API keys</a>
</div>
<div class="column-one-third">
<a class="pill-separate-item" href="{{ url_for('.whitelist', service_id=current_service.id) }}">Whitelist</a>
<a class="govuk-link govuk-link--no-visited-state pill-separate-item" href="{{ url_for('.whitelist', service_id=current_service.id) }}">Whitelist</a>
</div>
<div class="column-one-third">
<a class="pill-separate-item" href="{{ url_for(callbacks_link, service_id=current_service.id) }}">Callbacks</a>
<a class="govuk-link govuk-link--no-visited-state pill-separate-item" href="{{ url_for(callbacks_link, service_id=current_service.id) }}">Callbacks</a>
</div>
</nav>
@@ -33,7 +33,7 @@
</h2>
</div>
<div class="column-half align-with-heading-copy-right">
<a href="{{ url_for('.api_integration', service_id=current_service.id) }}">Refresh</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.api_integration', service_id=current_service.id) }}">Refresh</a>
</div>
</div>
<div class="api-notifications">
@@ -77,7 +77,7 @@
{% endif %}
{% endfor %}
{% if notification.status not in ('pending-virus-check', 'virus-scan-failed') %}
<a class="api-notifications-item__view" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=notification.id) }}">View {{ message_count_label(1, notification.template.template_type, suffix='') }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=notification.id) }}">View {{ message_count_label(1, notification.template.template_type, suffix='') }}</a>
{% endif %}
</dl>
</div>

View File

@@ -46,7 +46,7 @@
{% endcall %}
{% else %}
{% call field(align='right', status='error') %}
<a href='{{ url_for('.revoke_api_key', service_id=current_service.id, key_id=item.id) }}'>Revoke</a>
<a class="govuk-link govuk-link--no-visited-state" href='{{ url_for('.revoke_api_key', service_id=current_service.id, key_id=item.id) }}'>Revoke</a>
{% endcall %}
{% endif %}
{% endcall %}

View File

@@ -22,12 +22,12 @@
<ul>
{% if form.email_addresses.errors %}
<li>
<a href="#{{ form.email_addresses.name }}">Enter valid email addresses</a>
<a class="govuk-link govuk-link--no-visited-state" href="#{{ form.email_addresses.name }}">Enter valid email addresses</a>
</li>
{% endif %}
{% if form.phone_numbers.errors %}
<li>
<a href="#{{ form.phone_numbers.name }}">Enter valid phone numbers</a>
<a class="govuk-link govuk-link--no-visited-state" href="#{{ form.phone_numbers.name }}">Enter valid phone numbers</a>
</li>
{% endif %}
</ul>
@@ -41,7 +41,7 @@
<p>
You and members of
<a href="{{ url_for('main.manage_users', service_id=current_service.id) }}">your team</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.manage_users', service_id=current_service.id) }}">your team</a>
are included in the whitelist automatically.
</p>

View File

@@ -9,7 +9,7 @@
{% set file_contents_header_id = 'file-preview' %}
{% macro skip_to_file_contents() %}
<p class="govuk-visually-hidden">
<a href="#{{ file_contents_header_id }}">Skip to file contents</a>
<a class="govuk-link govuk-link--no-visited-state" href="#{{ file_contents_header_id }}">Skip to file contents</a>
</p>
{% endmacro %}
@@ -150,7 +150,7 @@
) }}
{% endif %}
</div>
<a href="#content" class="back-to-top-link">Back to top</a>
<a href="#content" class="govuk-link govuk-link--no-visited-state back-to-top-link">Back to top</a>
</div>
{% if not request.args.from_test %}
@@ -176,7 +176,7 @@
(not errors or recipients.more_rows_than_can_send) and
displayed_index != preview_row
) %}
<a href="{{ url_for('.check_messages', service_id=current_service.id, template_id=template.id, upload_id=upload_id, row_index=displayed_index, original_file_name=original_file_name) }}">{{ displayed_index }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.check_messages', service_id=current_service.id, template_id=template.id, upload_id=upload_id, row_index=displayed_index, original_file_name=original_file_name) }}">{{ displayed_index }}</a>
{% else %}
{{ displayed_index }}
{% endif %}

View File

@@ -9,7 +9,7 @@
{% set file_contents_header_id = 'file-preview' %}
{% macro skip_to_file_contents() %}
<p class="govuk-visually-hidden">
<a href="#{{ file_contents_header_id }}">Skip to file contents</a>
<a class="govuk-link govuk-link--no-visited-state" href="#{{ file_contents_header_id }}">Skip to file contents</a>
</p>
{% endmacro %}
@@ -76,7 +76,7 @@
{% if (item.index + 2) == preview_row %}
{{ item.index + 2 }}
{% else %}
<a href="{{ url_for('.check_messages', service_id=current_service.id, template_id=template.id, upload_id=upload_id, row_index=(item.index + 2), original_file_name=original_file_name) }}">{{ item.index + 2 }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.check_messages', service_id=current_service.id, template_id=template.id, upload_id=upload_id, row_index=(item.index + 2), original_file_name=original_file_name) }}">{{ item.index + 2 }}</a>
{% endif %}
</span>
{% endcall %}

View File

@@ -9,7 +9,7 @@
{% set file_contents_header_id = 'file-preview' %}
{% macro skip_to_file_contents() %}
<p class="govuk-visually-hidden">
<a href="#{{ file_contents_header_id }}">Skip to file contents</a>
<a class="govuk-link govuk-link--no-visited-state" href="#{{ file_contents_header_id }}">Skip to file contents</a>
</p>
{% endmacro %}
@@ -55,7 +55,7 @@
button_text='Upload your file again'
) }}
</div>
<a href="#content" class="back-to-top-link">Back to top</a>
<a href="#content" class="govuk-link govuk-link--no-visited-state back-to-top-link">Back to top</a>
</div>
<div class="fullscreen-content" data-module="fullscreen-table">

View File

@@ -21,7 +21,7 @@
{% endif %}
{% for org in organisations %}
<li class="browse-list-item">
<a href="{{ url_for('.organisation_dashboard', org_id=org.id) }}" class="browse-list-link">{{ org.name }}</a>
<a href="{{ url_for('.organisation_dashboard', org_id=org.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ org.name }}</a>
<p class="browse-list-hint">
{{ org.count_of_live_services }}
live service{% if org.count_of_live_services != 1 %}s{% endif %}
@@ -30,7 +30,7 @@
{% endfor %}
{% for service in services %}
<li class="browse-list-item">
<a href="{{ url_for('.service_dashboard', service_id=service.id) }}" class="browse-list-link">{{ service.name }}</a>
<a href="{{ url_for('.service_dashboard', service_id=service.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ service.name }}</a>
</li>
{% endfor %}
{% if show_heading %}
@@ -64,7 +64,7 @@
</div>
<ul class="column-three-quarters">
<li class="browse-list-item">
<a href="{{ url_for('.organisations') }}" class="browse-list-link">All organisations</a>
<a href="{{ url_for('.organisations') }}" class="govuk-link govuk-link--no-visited-state browse-list-link">All organisations</a>
<p class="browse-list-hint">
{{ org_count|format_thousands }} organisations, {{ live_service_count|format_thousands }} live services
</p>

View File

@@ -24,7 +24,7 @@
{% if current_user.has_permissions('send_messages') %}
<p class="sms-message-reply-link">
<a href="{{ url_for('.conversation_reply', service_id=current_service.id, notification_id=notification_id) }}">Send a text message to this phone number</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.conversation_reply', service_id=current_service.id, notification_id=notification_id) }}">Send a text message to this phone number</a>
</p>
{% endif %}

View File

@@ -5,7 +5,7 @@
<div class="ajax-block-container">
{% if messages %}
<p class="bottom-gutter-2-3 top-gutter-1-2">
<a href="{{ url_for('.inbox_download', service_id=current_service.id) }}" download class="heading-small">Download these messages</a>
<a href="{{ url_for('.inbox_download', service_id=current_service.id) }}" download class="govuk-link govuk-link--no-visited-state govuk-!-font-weight-bold">Download these messages</a>
</p>
{% endif %}
{% call(item, row_number) list_table(
@@ -21,7 +21,7 @@
) %}
{% call field() %}
<a
class="file-list-filename"
class="govuk-link govuk-link--no-visited-state file-list-filename"
href="{{ url_for('.conversation', service_id=current_service.id, notification_id=item.id) }}#n{{ item.id }}"
>
{{ item.user_number | format_phone_number_human_readable }}

View File

@@ -20,9 +20,9 @@
{% call row_heading() %}
<div class="file-list">
{% if item.upload_type == 'letter' %}
<a class="file-list-filename" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id) }}">{{ item.original_file_name }}</a>
<a class="file-list-filename govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_notification', service_id=current_service.id, notification_id=item.id) }}">{{ item.original_file_name }}</a>
{% else %}
<a class="file-list-filename" href="{{ url_for('.view_job', service_id=current_service.id, job_id=item.id) }}">{{ item.original_file_name }}</a>
<a class="file-list-filename govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_job', service_id=current_service.id, job_id=item.id) }}">{{ item.original_file_name }}</a>
{% endif %}
<span class="file-list-hint">
Sent {{

View File

@@ -23,7 +23,7 @@
) %}
{% call row_heading() %}
<div class="file-list">
<a class="file-list-filename" href="{{ url_for('.view_job', service_id=current_service.id, job_id=item.id) }}">{{ item.original_file_name }}</a>
<a class="govuk-link govuk-link--no-visited-state file-list-filename" href="{{ url_for('.view_job', service_id=current_service.id, job_id=item.id) }}">{{ item.original_file_name }}</a>
<span class="file-list-hint">
Sending {{ item.scheduled_for|format_datetime_relative }}
</span>

View File

@@ -41,7 +41,7 @@
field_headings_visible=False
) %}
{% call row_heading() %}
<a class="template-statistics-table-template-name" href="{{ url_for('.view_template', service_id=current_service.id, template_id=item.id) }}">{{ item.name }}</a>
<a class="govuk-link govuk-link--no-visited-state template-statistics-table-template-name" href="{{ url_for('.view_template', service_id=current_service.id, template_id=item.id) }}">{{ item.name }}</a>
<span class="template-statistics-table-hint">
{{ message_count_label(1, item.type, suffix='template')|capitalize }}
</span>

View File

@@ -28,7 +28,7 @@
Letter
</span>
{% else %}
<a class="template-statistics-table-template-name" href="{{ url_for('.view_template', service_id=current_service.id, template_id=item.template_id) }}">{{ item.template_name }}</a>
<a class="govuk-link govuk-link--no-visited-state template-statistics-table-template-name" href="{{ url_for('.view_template', service_id=current_service.id, template_id=item.template_id) }}">{{ item.template_name }}</a>
<span class="template-statistics-table-hint">
{{ message_count_label(1, item.template_type, suffix='template')|capitalize }}
</span>

View File

@@ -1,7 +1,7 @@
<h2 class="heading-medium">Get started</h2>
<nav>
<a class="pill-separate-item" href="{{ url_for('.choose_template', service_id=current_service.id) }}">
<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 %}
Write an email, text message or letter
{% else %}

View File

@@ -19,12 +19,12 @@
('python', 'Python'),
('ruby', 'Ruby'),
] %}
<li><a href="https://docs.notifications.service.gov.uk/{{ key }}.html" target="_blank" rel="noopener">{{ label }}</a></li>
<li><a class="govuk-link govuk-link--no-visited-state" href="https://docs.notifications.service.gov.uk/{{ key }}.html" target="_blank" rel="noopener">{{ label }}</a></li>
{% endfor %}
</ul>
<p>A developer should be able to set up the API client and start sending test messages in around 30 minutes. A full integration can take a few days, depending on the other systems youre using.</p>
<h2 class="heading-medium">Integrate directly with the API</h2>
<p>If you cannot use the client libraries, you can integrate directly with the API instead.</p>
<p>Read the <a href="https://docs.notifications.service.gov.uk/rest-api.html" target="_blank" rel="noopener">REST API documentation</a> (this link opens in a new tab).</p>
<p>Read the <a class="govuk-link govuk-link--no-visited-state" href="https://docs.notifications.service.gov.uk/rest-api.html" target="_blank" rel="noopener">REST API documentation</a> (this link opens in a new tab).</p>
{% endblock %}

View File

@@ -25,11 +25,17 @@
) }}
<p>
{{ user.email_address }}&emsp;<a href="{{ url_for('.edit_user_email', service_id=current_service.id, user_id=user.id)}}">Change</a>
{{ user.email_address }}&emsp;
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.edit_user_email', service_id=current_service.id, user_id=user.id)}}">
Change<span class="govuk-visually-hidden"> email address</span>
</a>
</p>
{% if mobile_number %}
<p id="user_mobile_number">
{{ mobile_number }}&emsp;<a href="{{ url_for('.edit_user_mobile_number', service_id=current_service.id, user_id=user.id)}}">Change</a>
{{ mobile_number }}&emsp;
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.edit_user_mobile_number', service_id=current_service.id, user_id=user.id)}}">
Change<span class="govuk-visually-hidden"> mobile number</span>
</a>
</p>
{% endif %}
<div class="grid-row">

View File

@@ -15,7 +15,7 @@
{% for brand in email_brandings %}
<div class="email-brand">
<div class="message-name">
<a href="{{ url_for('.update_email_branding', branding_id=brand.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.update_email_branding', branding_id=brand.id) }}">
{{ brand.name or 'Unnamed' }}
</a>
</div>

View File

@@ -11,7 +11,7 @@
<div class="column-two-thirds">
<h1 class="heading-large">The link has expired</h1>
<p><a href="{{ url_for('main.sign_in') }}">Sign in again</a> to get a new link.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.sign_in') }}">Sign in again</a> to get a new link.</p>
</div>
</div>

View File

@@ -12,13 +12,13 @@
<p>If you work for central government, a local authority or the NHS, you can use GOV.UK Notify to keep your users updated.</p>
<p>Notify makes it easy to create, customise and send:</p>
<ul class="list list-bullet">
<li><a href="{{ url_for('main.features_email') }}">emails</a></li>
<li><a href="{{ url_for('main.features_sms') }}">text messages</a></li>
<li><a href="{{ url_for('main.features_letters') }}">letters</a></li>
<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>
</ul>
<p>You do not need any technical knowledge to use Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> for free and try it yourself.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.register') }}">Create an account</a> for free and try it yourself.</p>
{% endif %}
<h2 class="heading-medium" id="templates">Reusable message templates</h2>
@@ -34,11 +34,11 @@
<h2 class="heading-medium" id="api">API integration</h2>
<p>You can integrate the Notify API with your web application or back-office system to send messages automatically.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<p>Read our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h2 class="heading-medium" id="reporting">Reporting</h2>
<p>Notifys real-time dashboard lets you see the number of messages sent. You can also check the current status of any message to see when it was delivered.</p>
<p>Read more about the <a href="{{ url_for('main.message_status') }}">delivery status</a> of your messages.</p>
<p>Read more about the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.message_status') }}">delivery status</a> of your messages.</p>
<h2 class="heading-medium" id="permissions">Permissions</h2>
<p>Control which members of your team can see, create, edit and send messages.</p>
@@ -58,7 +58,7 @@
<p>We send messages through several different providers. If one provider fails, Notify switches to another so that your messages are not affected.</p>
<p>Visit GOV.UK Performance to <a href="https://www.gov.uk/performance/govuk-notify">see how Notify is performing</a>.</p>
<p>Visit GOV.UK Performance to <a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/performance/govuk-notify">see how Notify is performing</a>.</p>
<h2 class="heading-medium" id="security">Security</h2>
<p>Notify protects and manages data to meet the needs of government services.</p>
@@ -68,10 +68,10 @@
<h3 class="heading-small">Two-factor authentication</h3>
<p>Notify uses two-factor authentication (2FA) to keep your account secure. When you sign in, well send a unique one-time code to your phone and ask you to enter it before we let you use your account.</p>
<p>Read more about <a href="{{ url_for('main.security') }}">security</a>.
<p>Read more about <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.security') }}">security</a>.
<h2 class="heading-medium" id="support">Support</h2>
<p>Notify provides 24-hour online support. If you have an emergency outside office hours, well reply within 30 minutes.</p>
<p>Find out more about <a href="{{ url_for('.support') }}">support</a>.</p>
<p>Find out more about <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.support') }}">support</a>.</p>
{% endblock %}

View File

@@ -10,7 +10,7 @@
<h1 class="heading heading-large">Emails</h1>
<p>Send an unlimited number of emails for free with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
@@ -20,7 +20,7 @@
<li>personalise the content of your emails</li>
<li>send and schedule bulk messages</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send emails automatically.</p>
<p>You can also <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">integrate with our API</a> to send emails automatically.</p>
<h3 class="heading heading-small" id="branding">Email branding</h3>
<p>Add your organisations logo and brand colour to email templates.</p>
@@ -35,8 +35,8 @@
<!--<li>you can track when the recipient downloads your document</li>-->
<li>email attachments are often marked as spam</li>
</ul>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact us</a> if you want to send files by email.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact us</a> if you want to send files by email.</p>
<p>Read our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">API documentation</a> for more information.</p>
<h3 class="heading heading-small" id="reply-to">Add a reply-to address</h3>
<p>Notify lets you choose the email address that users reply to.</p>
@@ -45,6 +45,6 @@
<h2 class="heading heading-medium">Pricing</h2>
<p>Its free to send emails through Notify.</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -10,7 +10,7 @@
<h1 class="heading heading-large">Letters</h1>
<p>GOV.UK Notify will print, pack and post your letters for you.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
@@ -20,7 +20,7 @@
<li>personalise the content of your letter</li>
<li>send bulk mail</li>
</ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send letters automatically.</p>
<p>You can also <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">integrate with our API</a> to send letters automatically.</p>
<h3 class="heading-small" id="postage">Choose your postage</h3>
<p>Notify can send letters by first or second class post.</p>
@@ -33,7 +33,7 @@
<h3 class="heading heading-small" id="upload-letters">Upload your own letters</h3>
<p>You can create reusable letter templates in Notify, or upload and send your own letters with the Notify API.</p>
<p>Read our <a href="{{ url_for('.documentation') }}">documentation</a>.</p>
<p>Read our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">documentation</a>.</p>
<h2 class="heading heading-medium">Pricing</h2>
<p>It costs between 30p and 76p (plus VAT) to send a letter. Prices include:</p>
@@ -44,6 +44,6 @@
<li>first or second class postage</li>
</ul>
<p>Letters can be up to 10 pages long (5 double-sided sheets of paper).</p>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -10,7 +10,7 @@
<h1 class="heading heading-large">Text messages</h1>
<p>Send thousands of free text messages to UK and international numbers with GOV.UK Notify.</p>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.register') }}">Create an account</a> and try Notify for yourself.</p>
{% endif %}
<h2 class="heading heading-medium">Features</h2>
@@ -19,12 +19,12 @@
<li>create reusable text message templates</li>
<li>personalise the content of your texts</li>
<li>send and schedule bulk messages</li></ul>
<p>You can also <a href="{{ url_for('.documentation') }}">integrate with our API</a> to send text messages automatically.<p>
<p>You can also <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.documentation') }}">integrate with our API</a> to send text messages automatically.<p>
<h3 class="heading heading-small" id="receive">Receive text messages</h3>
<p>Let people send messages to your service or reply to your texts.</p>
<p>You can see and reply to the messages you receive when you sign in to Notify. If youre using our API, you can set up your own automated processes to manage replies.</p>
<p><a href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact us</a> to request a unique number for text message replies.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.feedback', ticket_type='ask-question-give-feedback') }}">Contact us</a> to request a unique number for text message replies.</p>
<h3 class="heading heading-small" id="sender">Show people who your texts are from</h3>
<p>When you send a text message with Notify, the sender name tells people who it's from.</p>
@@ -36,6 +36,6 @@
<ul class="list list-bullet">
<li>250,000 free text messages for central government services</li>
<li>25,000 free text messages for other public sector services</li></ul>
<p><a href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">See pricing</a> for more details.</p>
{% endblock %}

View File

@@ -43,7 +43,7 @@
<ul>
{% for service in services_found %}
<li class="browse-list-item">
<a href="{{url_for('.service_dashboard', service_id=service.id)}}" class="browse-list-link">{{ service.name }}</a>
<a href="{{url_for('.service_dashboard', service_id=service.id)}}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ service.name }}</a>
</li>
<hr>
{% endfor %}

View File

@@ -43,7 +43,7 @@
<ul>
{% for user in users_found %}
<li class="browse-list-item">
<a href="{{url_for('.user_information', user_id=user.id)}}" class="browse-list-link">{{ user.email_address }}</a>
<a href="{{url_for('.user_information', user_id=user.id)}}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ user.email_address }}</a>
<p class="browse-list-hint">{{ user.name }}</p>
</li>
<hr>

View File

@@ -19,7 +19,7 @@
<ul>
{% for service in user.live_services %}
<li class="browse-list-item">
<a class="browse-list-hint" href={{url_for('.service_dashboard', service_id=service.id)}}>{{ service.name }}</a>
<a class="govuk-link govuk-link--no-visited-state browse-list-hint" href={{url_for('.service_dashboard', service_id=service.id)}}>{{ service.name }}</a>
</li>
{% endfor %}
</ul>
@@ -35,7 +35,7 @@
<ul>
{% for service in user.trial_mode_services %}
<li class="browse-list-item">
<a class="browse-list-hint" href={{url_for('.service_dashboard', service_id=service.id)}}>{{ service.name }}</a>
<a class="govuk-link govuk-link--no-visited-state browse-list-hint" href={{url_for('.service_dashboard', service_id=service.id)}}>{{ service.name }}</a>
</li>
{% endfor %}
</ul>
@@ -62,7 +62,7 @@
{% endif %}
{% if user.state == 'active' %}
<span class="page-footer-delete-link page-footer-delete-link-without-button">
<a href="{{ url_for('main.archive_user', user_id=user.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.archive_user', user_id=user.id) }}">
Archive user
</a>
</span>

View File

@@ -14,7 +14,7 @@
<ol class="get-started-list">
<li class="get-started-list__item">
<h2 class="get-started-list__heading">Check if GOV.UK Notify is right for you</h2>
<p>Read about our <a href="{{ url_for('main.features') }}">features</a>, <a href="{{ url_for('.pricing') }}">pricing</a> and <a href="{{ url_for('main.roadmap') }}">roadmap</a>.</p>
<p>Read about our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features') }}">features</a>, <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">pricing</a> and <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.roadmap') }}">roadmap</a>.</p>
{{ govukDetails({
"summaryText": "Organisations that can use Notify",
"html": '''
@@ -35,32 +35,32 @@
<li class="get-started-list__item">
<h2 class="get-started-list__heading">Create an account</h2>
{% if not current_user.is_authenticated %}
<p><a href="{{ url_for('.register') }}">Create an account</a> for free and add your first Notify service. When you add a new service it will start in <a href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<p><a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.register') }}">Create an account</a> for free and add your first Notify service. When you add a new service it will start in <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
{% else %}
<p>Create an account for free and add your first Notify service. When you add a new service, it will start in <a href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<p>Create an account for free and add your first Notify service. When you add a new service, it will start in <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
{% endif %}
</li>
<li class="get-started-list__item">
<h2 class="get-started-list__heading">Write some messages</h2>
<p>Add <a href="{{ url_for('main.features', _anchor='templates') }}">message templates</a> with examples of the content you plan to send. You can use our <a href="{{ url_for('main.guidance_index') }}">guidance</a> to help you.</p>
<p>Add <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features', _anchor='templates') }}">message templates</a> with examples of the content you plan to send. You can use our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.guidance_index') }}">guidance</a> to help you.</p>
</li>
<li class="get-started-list__item">
<h2 class="get-started-list__heading">Set up your service</h2>
{% if not current_user.is_authenticated or not current_service %}
<p>Review your settings to add message branding, reply-to addresses and sender information.</p>
<p>Add team members and check their <a href="{{ url_for('main.features', _anchor='permissions') }}">permissions</a>.</p>
<p>Add team members and check their <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features', _anchor='permissions') }}">permissions</a>.</p>
{% else %}
<p>Review your <a href="{{ url_for('.service_settings', service_id=current_service.id) }}">settings</a> to add message branding, reply-to addresses and sender information.</p>
<p>Add <a href="{{ url_for('.manage_users', service_id=current_service.id) }}">team members</a> and check their <a href="{{ url_for('main.features', _anchor='permissions') }}">permissions</a>.</p>
<p>Review your <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.service_settings', service_id=current_service.id) }}">settings</a> to add message branding, reply-to addresses and sender information.</p>
<p>Add <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.manage_users', service_id=current_service.id) }}">team members</a> and check their <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.features', _anchor='permissions') }}">permissions</a>.</p>
{% endif %}
</li>
<li class="get-started-list__item">
<h2 class="get-started-list__heading">Set up an API integration (optional)</h2>
<p>You can use the Notify API to send messages automatically.</p>
<p>Our <a href="{{ url_for('main.documentation') }}">documentation</a> explains how to integrate the API with a web application or back office system.</p>
<p>Our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.documentation') }}">documentation</a> explains how to integrate the API with a web application or back office system.</p>
</li>
<li class="get-started-list__item">
@@ -68,9 +68,9 @@
{% if not current_user.is_authenticated or not current_service %}
<p>When youre ready to send messages to people outside your team, go to the <b class="govuk-!-font-weight-bold">Settings</b> page and select <b class="govuk-!-font-weight-bold">Request to go live</b>. Well approve your request within one working day.</p>
{% else %}
<p>You should <a href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">request to go live</a> when youre ready to send messages to people outside your team. Well approve your request within one working day.</p>
<p>You should <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">request to go live</a> when youre ready to send messages to people outside your team. Well approve your request within one working day.</p>
{% endif %}
<p>Check <a href="{{ url_for('main.how_to_pay') }}">how to pay</a> if youre planning to send letters or exceed the <a href="{{ url_for('.pricing', _anchor='text-messages') }}">free text message allowance</a>.</p>
<p>Check <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.how_to_pay') }}">how to pay</a> if youre planning to send letters or exceed the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing', _anchor='text-messages') }}">free text message allowance</a>.</p>
</li>
</ol>

View File

@@ -58,7 +58,7 @@ Inbound Numbers
{% endif %}
</th>
<th style="font-weight:normal;">
<a href="{{ url_for('main.service_dashboard', service_id=value.service.id) }}" class="browse-list-link">{{ value.service.name }}</a>
<a href="{{ url_for('main.service_dashboard', service_id=value.service.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ value.service.name }}</a>
</th>
</tr>
{% endfor %}

View File

@@ -14,7 +14,7 @@
<p>This information has moved.</p>
<p>
Refer to the <a href="{{ url_for('main.documentation') }}">documentation
Refer to the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.documentation') }}">documentation
for the client library you are using.
</p>

View File

@@ -25,7 +25,7 @@
<div class="js-stick-at-bottom-when-scrolling">
<div class="page-footer">
<span class="page-footer-delete-link page-footer-delete-link-without-button">
<a href="{{ url_for('main.cancel_letter_job', service_id=current_service.id, job_id=job.id) }}">Cancel sending these letters</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.cancel_letter_job', service_id=current_service.id, job_id=job.id) }}">Cancel sending these letters</a>
</span>
{% else %}
<div>&nbsp;</div>

View File

@@ -15,7 +15,7 @@
{% for brand in letter_brandings %}
<div class="letter-brand">
<div class="message-name">
<a href="{{ url_for('.update_letter_branding', branding_id=brand.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.update_letter_branding', branding_id=brand.id) }}">
{{ brand.name }}
</a>
</div>

View File

@@ -73,9 +73,9 @@
{% if current_user.has_permissions('manage_service') %}
<li class="tick-cross-list-edit-link">
{% if user.status == 'pending' %}
<a href="{{ url_for('.cancel_invited_user', service_id=current_service.id, invited_user_id=user.id)}}">Cancel invitation</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.cancel_invited_user', service_id=current_service.id, invited_user_id=user.id)}}">Cancel invitation</a>
{% elif user.state == 'active' and current_user.id != user.id %}
<a href="{{ url_for('.edit_user_permissions', service_id=current_service.id, user_id=user.id)}}">Change details</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.edit_user_permissions', service_id=current_service.id, user_id=user.id)}}">Change details</a>
{% endif %}
</li>
{% endif %}

View File

@@ -10,9 +10,9 @@
<h1 class="heading-large">Delivery status</h1>
<p>Notifys real-time dashboard lets you check the status of any message, to see when it was delivered.</p>
<p>For <a href="{{ url_for("main.security") }}">security</a>, this information is only available for 7 days after a message has been sent. You can download a report, including a list of sent messages, for your own records.</p>
<p>For <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for("main.security") }}">security</a>, this information is only available for 7 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 youll see when youre signed in to Notify.</p>
<p>If youre using the Notify API, read our <a href="{{ url_for('.documentation') }}">documentation</a> for a list of API statuses.<p>
<p>If youre using the Notify API, read our <a class="govuk-link govuk-link--no-visited-state" 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">

View File

@@ -72,7 +72,7 @@
{% if current_user.has_permissions('view_activity') %}
<p class="bottom-gutter">
<a href="{{ download_link }}" download="download" class="heading-small">Download this report</a>
<a href="{{ download_link }}" download="download" class="govuk-link govuk-link--no-visited-state govuk-!-font-weight-bold">Download this report</a>
&emsp;
Data available for {{ partials.service_data_retention_days }} days
</p>

View File

@@ -81,7 +81,7 @@
{{ govukButton({ "text": button_text }) }}
{% endif %}
{% if template.template_type == 'letter' %}
<a href="{{ url_for('no_cookie.check_notification_preview', service_id=current_service.id, template_id=template.id, filetype='pdf') }}" download class="page-footer-right-aligned-link{% if error %}-without-button{% endif %}">Download as a PDF</a>
<a href="{{ url_for('no_cookie.check_notification_preview', service_id=current_service.id, template_id=template.id, filetype='pdf') }}" download class="govuk-link govuk-link--no-visited-state page-footer-right-aligned-link{% if error %}-without-button{% endif %}">Download as a PDF</a>
{% endif %}
</form>
</div>

View File

@@ -22,7 +22,7 @@
{% if help %}
{{ template.name }}
{% else %}
<a href="{{ url_for('.view_template', service_id=current_service.id, template_id=template.id) }}">{{ template.name }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_template', service_id=current_service.id, template_id=template.id) }}">{{ template.name }}</a>
{% endif %}
was sent
{% endif %}
@@ -30,7 +30,7 @@
{% set destination =
{'letter': 'an address', 'email': 'an email address', 'sms': 'a phone number'} %}
to {{ destination[template.template_type] }} from
<a href="{{ url_for('.view_job', service_id=current_service.id, job_id=job.id) }}">{{ job.original_file_name }}</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.view_job', service_id=current_service.id, job_id=job.id) }}">{{ job.original_file_name }}</a>
{% elif created_by %}
by {{ created_by.name }}
{% endif %}
@@ -82,12 +82,12 @@
<div class="page-footer">
{% if show_cancel_button %}
<span class="page-footer-delete-link page-footer-delete-link-without-button">
<a href="{{ url_for('main.cancel_letter', service_id=current_service.id, notification_id=notification_id) }}">Cancel sending this letter</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.cancel_letter', service_id=current_service.id, notification_id=notification_id) }}">Cancel sending this letter</a>
</span>
{% else %}
<div>&nbsp;</div>
{% endif %}
<a class="page-footer-right-aligned-link-without-button" href="{{ url_for('main.view_letter_notification_as_preview', service_id=current_service.id, notification_id=notification_id, filetype='pdf') }}" download>Download as a PDF</a>
<a class="govuk-link govuk-link--no-visited-state page-footer-right-aligned-link-without-button" href="{{ url_for('main.view_letter_notification_as_preview', service_id=current_service.id, notification_id=notification_id, filetype='pdf') }}" download>Download as a PDF</a>
</div>
</div>
{% elif template.template_type == 'email' %}
@@ -100,7 +100,7 @@
{% if current_user.has_permissions('send_messages') and current_user.has_permissions('view_activity') and template.template_type == 'sms' and can_receive_inbound %}
<p>
<a href="{{ url_for('.conversation', service_id=current_service.id, notification_id=notification_id, _anchor='n{}'.format(notification_id)) }}">See all text messages sent to this phone number</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.conversation', service_id=current_service.id, notification_id=notification_id, _anchor='n{}'.format(notification_id)) }}">See all text messages sent to this phone number</a>
</p>
{% endif %}

View File

@@ -12,8 +12,8 @@
{% block main %}
<div class="govuk-width-container">
<div class="navigation-service">
<a href="{{ url_for('.organisations') }}" class="navigation-service-back-to">All organisations</a>
<a href="{{ url_for('main.choose_account') }}" class="navigation-service-switch">Switch service</a>
<a href="{{ url_for('.organisations') }}" class="govuk-link govuk-link--no-visited-state navigation-service-back-to">All organisations</a>
<a href="{{ url_for('main.choose_account') }}" class="govuk-link govuk-link--no-visited-state navigation-service-switch">Switch service</a>
</div>
<div class="grid-row">

View File

@@ -14,7 +14,7 @@
<div class="navigation-service-name">
&nbsp;
</div>
<a href="{{ url_for('main.choose_account') }}" class="navigation-service-switch">Switch service</a>
<a href="{{ url_for('main.choose_account') }}" class="govuk-link govuk-link--no-visited-state navigation-service-switch">Switch service</a>
</div>
<div class="grid-row top-gutter-2-3">
@@ -31,7 +31,7 @@
<ul>
{% for org in organisations %}
<li class="browse-list-item">
<a href="{{ url_for('main.organisation_dashboard', org_id=org.id) }}" class="browse-list-link">{{ org.name }}</a>
<a href="{{ url_for('main.organisation_dashboard', org_id=org.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ org.name }}</a>
<p class="browse-list-hint">
{{ org.count_of_live_services }}
live service{% if org.count_of_live_services != 1 %}s{% endif %}

View File

@@ -12,7 +12,7 @@
<ul>
{% for service in current_org.live_services %}
<li class="browse-list-item">
<a href="{{ url_for('main.usage', service_id=service.id) }}" class="browse-list-link">{{ service['name'] }}</a>
<a href="{{ url_for('main.usage', service_id=service.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ service['name'] }}</a>
</li>
{% endfor %}
</ul>

View File

@@ -14,7 +14,7 @@
<ul>
{% for service in current_org.trial_services %}
<li class="browse-list-item">
<a href="{{ url_for('main.service_dashboard', service_id=service.id) }}" class="browse-list-link">{{ service['name'] }}</a>
<a href="{{ url_for('main.service_dashboard', service_id=service.id) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ service['name'] }}</a>
</li>
{% endfor %}
</ul>

View File

@@ -44,7 +44,7 @@
<ul class="tick-cross-list">
<li class="tick-cross-list-edit-link">
{% if user.status == 'pending' %}
<a href="{{ url_for('.cancel_invited_org_user', org_id=current_org.id, invited_user_id=user.id)}}">Cancel invitation</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.cancel_invited_org_user', org_id=current_org.id, invited_user_id=user.id)}}">Cancel invitation</a>
{% endif %}
</li>
</ul>

View File

@@ -27,7 +27,7 @@
('Clear cache', url_for('main.clear_cache')),
] %}
<li>
<a href="{{ url }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url }}">
{{ link_text }}
</a>
</li>

View File

@@ -11,17 +11,17 @@
</h1>
<p>
<a target="_blank" href="{{ url_for('main.live_services_csv') }}">Download live services csv report</a>
<a class="govuk-link govuk-link--no-visited-state" target="_blank" href="{{ url_for('main.live_services_csv') }}">Download live services csv report</a>
</p>
<p>
<a target="_blank" href="{{ url_for('main.performance_platform_xlsx') }}">Download performance platform report (.xlsx)</a>
<a class="govuk-link govuk-link--no-visited-state" target="_blank" href="{{ url_for('main.performance_platform_xlsx') }}">Download performance platform report (.xlsx)</a>
<p>
<p>
<a href="{{ url_for('main.notifications_sent_by_service') }}">Monthly notification statuses for live services</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.notifications_sent_by_service') }}">Monthly notification statuses for live services</a>
<p>
<p>
<a href="{{ url_for('main.usage_for_all_services') }}">Usage for all services</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.usage_for_all_services') }}">Usage for all services</a>
</p>
{% endblock %}

View File

@@ -49,7 +49,7 @@
{% call row() %}
{% call field(border=False) %}
<a href="{{ url_for('main.service_dashboard', service_id=service['id']) }}" class="browse-list-link">{{ service['name'] }}</a>
<a href="{{ url_for('main.service_dashboard', service_id=service['id']) }}" class="govuk-link govuk-link--no-visited-state browse-list-link">{{ service['name'] }}</a>
{% endcall %}
{{ stats_fields('email', service['stats']) }}

View File

@@ -18,7 +18,7 @@
</p>
<ul class="list list-bullet">
<li>exceed the <a href="{{ url_for('.pricing') }}">free text message allowance</a></li>
<li>exceed the <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.pricing') }}">free text message allowance</a></li>
<li>send letters</li>
</ul>
@@ -51,7 +51,7 @@
</p>
<p>
<a href="{{ support_link }}">Contact us</a> if you need help raising a purchase order.
<a class="govuk-link govuk-link--no-visited-state" href="{{ support_link }}">Contact us</a> if you need help raising a purchase order.
</p>
{% endblock %}

View File

@@ -20,13 +20,13 @@
<p>
{% if not current_user.is_authenticated %}
<a href="{{ url_for('main.register') }}">Create an account</a> then add as many different services as you need to.</p>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.register') }}">Create an account</a> then add as many different services as you need to.</p>
{% else %}
You can add as many different services as you need to.
{% endif %}
</p>
<p>When you add a new service it will start in <a href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<p>When you add a new service it will start in <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.trial_mode_new') }}">trial mode</a>.</p>
<h2 class="heading-medium" id="emails">Emails</h2>
<p>Its free to send emails through Notify.</p>
@@ -40,7 +40,7 @@
<li>25,000 free text messages for other public sector services</li>
</ul>
<p>It costs 1.58 pence (plus VAT) for each text message you send after you've used your free allowance.</p>
<p>See <a href="{{ url_for('main.how_to_pay') }}">how to pay</a>.
<p>See <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.how_to_pay') }}">how to pay</a>.
<h3 class="heading-small" id="long-text-messages">Long text messages</h3>
<p>If a text message is longer than 160 characters (including spaces), itll be charged as more than one message:</p>

View File

@@ -23,7 +23,7 @@
<p>For the credentials used to access GOV.UK Notify, Cabinet Office is the data controller.</p>
<p>For more information see the Information Commissioners Office (ICO) <a href="https://ico.org.uk/esdwebpages/search">Data Protection Public Register</a>.
<p>For more information see the Information Commissioners Office (ICO) <a class="govuk-link govuk-link--no-visited-state" href="https://ico.org.uk/esdwebpages/search">Data Protection Public Register</a>.
The Cabinet Office registration number is: Z7414053</p>
<h2 class="heading-medium">What data we collect from you</h2>
@@ -120,7 +120,7 @@
<p>
GDS Privacy Team<br>
<a href="mailto:gds-privacy-office@digital.cabinet-office.gov.uk">gds-privacy-office@digital.cabinet-office.gov.uk</a>
<a class="govuk-link govuk-link--no-visited-state" href="mailto:gds-privacy-office@digital.cabinet-office.gov.uk">gds-privacy-office@digital.cabinet-office.gov.uk</a>
</p>
<p>
@@ -129,18 +129,18 @@
<p>
Data Protection Officer<br>
<a href="mailto:DPO@cabinetoffice.gov.uk">DPO@cabinetoffice.gov.uk</a><br>
<a class="govuk-link govuk-link--no-visited-state" href="mailto:DPO@cabinetoffice.gov.uk">DPO@cabinetoffice.gov.uk</a><br>
Data Protection Officer<br>
Cabinet Office<br>
70 Whitehall<br>
London SW1A 2AS
</p>
<p>If you have a complaint, you can also contact the <a href="https://ico.org.uk/">Information Commissioner's Office</a> (ICO). The ICO is an independent regulator set up to uphold information rights.</p>
<p>If you have a complaint, you can also contact the <a class="govuk-link govuk-link--no-visited-state" href="https://ico.org.uk/">Information Commissioner's Office</a> (ICO). The ICO is an independent regulator set up to uphold information rights.</p>
<p>
Information Commissioners Office<br>
<a href="mailto:casework@ico.org.uk">casework@ico.org.uk</a><br>
<a class="govuk-link govuk-link--no-visited-state" href="mailto:casework@ico.org.uk">casework@ico.org.uk</a><br>
0303 123 1113</br>
Wycliffe House<br>
Water Lane<br>

View File

@@ -12,7 +12,7 @@ Providers
<h2 class="heading-medium">SMS</h2>
<a href="{{ url_for('main.edit_sms_provider_ratio') }}">Change priority</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.edit_sms_provider_ratio') }}">Change priority</a>
{% call(item, row_number) list_table(
domestic_sms_providers,

View File

@@ -11,7 +11,7 @@
<p>The GOV.UK Notify roadmap shows the things were working on and when we hope to have them ready for you to use.</p>
<p>Notify is in public beta. This means its fully operational and supported, but were still adding new features. The roadmap is a guide to what we have planned, but some things might change.</p>
<p>You can <a href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> if you have any questions about the roadmap or suggestions for new features.</p>
<p>You can <a class="govuk-link govuk-link--no-visited-state" href="{{url_for('.feedback', ticket_type='ask-question-give-feedback')}}">contact us</a> if you have any questions about the roadmap or suggestions for new features.</p>
<h2 class="heading-medium">January to March 2020</h2>

View File

@@ -51,7 +51,7 @@
<li>your email address and password</li>
<li>a text message code that Notify sends to your phone</li>
</ul>
<p>If signing in with a text message is a problem for your team, <a href="https://www.notifications.service.gov.uk/">contact us</a> to find out about using an email link instead.</p>
<p>If signing in with a text message is a problem for your team, <a class="govuk-link govuk-link--no-visited-state" href="https://www.notifications.service.gov.uk/">contact us</a> to find out about using an email link instead.</p>
<h2 class="heading-medium">Information risk management</h2>
<p>Our approach to information risk management follows NCSC guidance. It assesses:</p>
@@ -65,8 +65,8 @@
<h2 class="heading-medium">How we manage risks on Notify</h2>
<p>Things we do to manage risks on Notify include:</p>
<ul class="list list-bullet">
<li>formal risk assessments based on <a href="http://www.iso.org/iso/catalogue_detail?csnumber=56742">ISO 2700:2011</a> and National Cyber Security Centre guidance</li>
<li><a href="https://www.cesg.gov.uk/articles/check-fundamental-principles">CHECK</a>-based testing, both annually and when any major changes are made to Notify</li>
<li>formal risk assessments based on <a class="govuk-link govuk-link--no-visited-state" href="http://www.iso.org/iso/catalogue_detail?csnumber=56742">ISO 2700:2011</a> and National Cyber Security Centre guidance</li>
<li><a class="govuk-link govuk-link--no-visited-state" href="https://www.cesg.gov.uk/articles/check-fundamental-principles">CHECK</a>-based testing, both annually and when any major changes are made to Notify</li>
<li>residual risk statement preparation and active management of the risk treatment plan</li>
<li>regular updates to the Privacy Impact Assessment</li>
<li>security impact assessments</li>
@@ -77,8 +77,8 @@
<p>Notify also has approval from the Office of the Governments SIRO to host data within the EEA.</p>
<h2 class="heading-medium">Classifications and security vetting</h2>
<p>You can use Notify to send messages classified as OFFICIAL or OFFICIAL-SENSITIVE under the <a href="https://www.gov.uk/government/publications/government-security-classifications">Government Security Classifications</a> policy.</p>
<p>You must not use Notify to send <a href="https://ico.org.uk/for-organisations/guide-to-data-protection/guide-to-the-general-data-protection-regulation-gdpr/lawful-basis-for-processing/special-category-data/">special category data</a>, as defined in the General Data Protection Regulation (GDPR).</p>
<p>The Notify team has Security Check (SC) level clearance from <a href="https://www.gov.uk/guidance/security-vetting-and-clearance">United Kingdom Security Vetting</a> (UKSV).</p>
<p>You can use Notify to send messages classified as OFFICIAL or OFFICIAL-SENSITIVE under the <a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/government/publications/government-security-classifications">Government Security Classifications</a> policy.</p>
<p>You must not use Notify to send <a class="govuk-link govuk-link--no-visited-state" href="https://ico.org.uk/for-organisations/guide-to-data-protection/guide-to-the-general-data-protection-regulation-gdpr/lawful-basis-for-processing/special-category-data/">special category data</a>, as defined in the General Data Protection Regulation (GDPR).</p>
<p>The Notify team has Security Check (SC) level clearance from <a class="govuk-link govuk-link--no-visited-state" href="https://www.gov.uk/guidance/security-vetting-and-clearance">United Kingdom Security Vetting</a> (UKSV).</p>
{% endblock %}

View File

@@ -31,13 +31,13 @@
</div>
{% if skip_link %}
<div class="column-one-third">
<a href="{{ skip_link[1] }}" class="top-gutter-4-3">{{ skip_link[0] }}</a>
<a href="{{ skip_link[1] }}" class="govuk-link govuk-link--no-visited-state top-gutter-4-3">{{ skip_link[0] }}</a>
</div>
{% endif %}
</div>
{% if link_to_upload %}
<p>
<a href="{{ url_for('.send_messages', service_id=current_service.id, template_id=template.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.send_messages', service_id=current_service.id, template_id=template.id) }}">
Upload a list of {{ recipient_count_label(999, template.template_type) }}
</a>
</p>

View File

@@ -46,7 +46,7 @@
{% endcall %}
</div>
<p class="table-show-more-link">
<a href="{{ url_for('.get_example_csv', service_id=current_service.id, template_id=template.id) }}" download>Download this example</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.get_example_csv', service_id=current_service.id, template_id=template.id) }}" download>Download this example</a>
</p>
<h2 class="heading-medium">Your file will populate this template ({{ template.name }})</h2>

View File

@@ -263,7 +263,7 @@
<p>
{% if current_user.has_permissions('manage_service') %}
To remove these restrictions, you can send us a
<a href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">request to go live</a>.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.request_to_go_live', service_id=current_service.id) }}">request to go live</a>.
{% else %}
Your service manager can ask to have these restrictions removed.
{% endif %}
@@ -279,7 +279,7 @@
</p>
<p>
Problems or comments?
<a href="{{ url_for('main.support') }}">Give feedback</a>.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.support') }}">Give feedback</a>.
</p>
{% endif %}
@@ -318,7 +318,7 @@
{{ text_field('Organisation')}}
{% call field() %}
{% if current_service.organisation_id %}
<a href="{{ url_for('main.organisation_dashboard', org_id=current_service.organisation_id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.organisation_dashboard', org_id=current_service.organisation_id) }}">
{{ current_service.organisation.name }}
</a>
{% else %}
@@ -375,13 +375,13 @@
{% if current_service.active and (current_service.trial_mode or current_user.platform_admin) %}
<p class="top-gutter-1-2">
<span class="page-footer-delete-link page-footer-delete-link-without-button">
<a href="{{ url_for('.archive_service', service_id=current_service.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.archive_service', service_id=current_service.id) }}">
Delete this service
</a>
</span>
{% if current_user.platform_admin %}
<span class="page-footer-delete-link">
<a href="{{ url_for('.suspend_service', service_id=current_service.id) }}" class="page-footer-delete-link">
<a href="{{ url_for('.suspend_service', service_id=current_service.id) }}" class="govuk-link govuk-link--no-visited-state page-footer-delete-link">
Suspend service
</a>
</span>
@@ -394,7 +394,7 @@
Service suspended
</div>
<span class="page-footer-delete-link page-footer-delete-link-without-button">
<a href="{{ url_for('.resume_service', service_id=current_service.id) }}">
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.resume_service', service_id=current_service.id) }}">
Resume service
</a>
</span>

View File

@@ -15,7 +15,7 @@
</p>
<p class="js-hidden">
<a href="{{ url_for('main.service_verify_reply_to_address', service_id=service_id, notification_id=notification_id, is_default=is_default, replace=replace) }}">Refresh</a>
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('main.service_verify_reply_to_address', service_id=service_id, notification_id=notification_id, is_default=is_default, replace=replace) }}">Refresh</a>
</p>
{% elif verification_status == "success" %}
{{ banner("{} is ready to use".format(reply_to_email_address), type='default', with_tick=True) }}

View File

@@ -31,7 +31,7 @@
</span>
</h3>
{% if current_user.has_permissions('manage_service') %}
<a class="user-list-edit-link" href="{{ url_for('.service_edit_email_reply_to', service_id =current_service.id, reply_to_email_id = item.id) }}">Change</a>
<a class="govuk-link govuk-link--no-visited-state user-list-edit-link" href="{{ url_for('.service_edit_email_reply_to', service_id =current_service.id, reply_to_email_id = item.id) }}">Change</a>
{% endif %}
{% if current_service.count_email_reply_to_addresses > 1 %}
{{ api_key(item.id, thing="ID") }}

View File

@@ -22,7 +22,7 @@
Blank
{% if current_service.default_letter_contact_block %}
{% if current_user.has_permissions('manage_service') %}
<a class="user-list-edit-link" href="{{ url_for('.service_make_blank_default_letter_contact', service_id =current_service.id) }}">Make default</a>
<a class="govuk-link govuk-link--no-visited-state user-list-edit-link" href="{{ url_for('.service_make_blank_default_letter_contact', service_id =current_service.id) }}">Make default</a>
{% endif %}
{% else %}
(default)
@@ -40,7 +40,7 @@
{% endif %}
</p>
{% if current_user.has_permissions('manage_service') %}
<a class="user-list-edit-link" href="{{ url_for('.service_edit_letter_contact', service_id =current_service.id, letter_contact_id = item.id) }}">Change</a>
<a class="govuk-link govuk-link--no-visited-state user-list-edit-link" href="{{ url_for('.service_edit_letter_contact', service_id =current_service.id, letter_contact_id = item.id) }}">Change</a>
{% endif %}
{% if letter_contact_details|length > 1 %}
{{ api_key(item.id, thing="ID") }}

View File

@@ -17,7 +17,7 @@
{{ form.hidden_tag() }}
<div class="page-footer">
{{ govukButton({ "text": "Save", "classes": "govuk-!-margin-right-2" }) }}
<a class="page-footer-back-link" href="{{ url_for('main.service_settings', service_id=service_id) }}">Back to service settings</a>
<a class="govuk-link govuk-link--no-visited-state page-footer-back-link" href="{{ url_for('main.service_settings', service_id=service_id) }}">Back to service settings</a>
</div>
</div>
{% endcall %}

View File

@@ -69,7 +69,7 @@
When we receive your request well get back to you within one working day.
</p>
<p class="bottom-gutter">
By requesting to go live youre agreeing to our <a href="{{ url_for('.terms') }}">terms of use</a>.
By requesting to go live youre agreeing to our <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.terms') }}">terms of use</a>.
</p>
{% call form_wrapper() %}
{{ page_footer('Request to go live') }}

View File

@@ -24,7 +24,7 @@
or an email link.
</p>
<p>
You can <a href="{{ url_for('.manage_users', service_id=current_service.id) }}">set the sign-in method for individual team members</a>.
You can <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.manage_users', service_id=current_service.id) }}">set the sign-in method for individual team members</a>.
</p>
{% else %}
<p class="heading-small bottom-gutter-2-3">
@@ -34,7 +34,7 @@
Your team members sign in with a text message code.
</p>
<p>
<a href="{{ url_for('.support') }}">Contact us</a> if signing in with a text message is a problem for your team.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.support') }}">Contact us</a> if signing in with a text message is a problem for your team.
</p>
{% endif %}
</div>

View File

@@ -23,17 +23,17 @@
You can still send text messages from a sender name if you need to, but users will not be able to reply to those messages.
</p>
<p>
<a href="{{ url_for('.support') }}">Contact us</a> if you want to switch this feature off.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.support') }}">Contact us</a> if you want to switch this feature off.
</p>
{% if current_user.has_permissions('manage_api_keys') %}
<p>
You can set up callbacks for received text messages on the
<a href="{{ url_for('.api_callbacks', service_id=current_service.id) }}">API integration page</a>.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.api_callbacks', service_id=current_service.id) }}">API integration page</a>.
</p>
{% endif %}
{% else %}
<p>
<a href="{{ url_for('.support') }}">Contact us</a> if you want to be able to receive text messages from your users.
<a class="govuk-link govuk-link--no-visited-state" href="{{ url_for('.support') }}">Contact us</a> if you want to be able to receive text messages from your users.
</p>
<p>
Well create a unique phone number for your service that they can reply to.

View File

@@ -20,7 +20,7 @@
Messages to international mobile numbers are charged at 1, 2, or
3 times the cost of messages to UK mobile numbers.</p>
<p>
See <a href="{{ url_for(".pricing") }}">pricing</a> for the list
See <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for(".pricing") }}">pricing</a> for the list
of rates.
</p>
{% call form_wrapper() %}

View File

@@ -20,7 +20,7 @@
It costs between 30p and 76p to send a letter using Notify.
</p>
<p>
See <a href="{{ url_for(".pricing", _anchor="letters") }}">pricing</a> for the list
See <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for(".pricing", _anchor="letters") }}">pricing</a> for the list
of rates.
</p>
{% call form_wrapper() %}

View File

@@ -26,7 +26,7 @@
after your free allowance.
</p>
<p>
See <a href="{{ url_for(".pricing", _anchor="letters") }}">pricing</a> for more details.
See <a class="govuk-link govuk-link--no-visited-state" href="{{ url_for(".pricing", _anchor="letters") }}">pricing</a> for more details.
</p>
{% call form_wrapper() %}
{{ radios(form.enabled) }}

View File

@@ -33,7 +33,7 @@
{% endif %}
</h3>
{% if current_user.has_permissions('manage_service') %}
<a class="user-list-edit-link" href="{{ url_for('.service_edit_sms_sender', service_id=current_service.id, sms_sender_id = item.id) }}">Change</a>
<a class="govuk-link govuk-link--no-visited-state user-list-edit-link" href="{{ url_for('.service_edit_sms_sender', service_id=current_service.id, sms_sender_id = item.id) }}">Change</a>
{% endif %}
{% if current_service.count_sms_senders > 1 %}
{{ api_key(item.id, thing="ID") }}

Some files were not shown because too many files have changed in this diff Show More