metadata_presenter 3.3.10 → 3.3.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/app/controllers/metadata_presenter/engine_controller.rb +7 -0
- data/app/models/metadata_presenter/saved_form.rb +2 -3
- data/app/validators/metadata_presenter/base_validator.rb +13 -3
- data/app/views/layouts/metadata_presenter/application.html.erb +2 -2
- data/app/views/metadata_presenter/analytics/_cookie_banner_confirmation.html.erb +2 -2
- data/app/views/metadata_presenter/attribute/_external_start_page_info.html.erb +2 -2
- data/app/views/metadata_presenter/component/_conditional_component_banner.html.erb +1 -1
- data/app/views/metadata_presenter/component/_upload.html.erb +1 -1
- data/app/views/metadata_presenter/footer/_meta.html.erb +3 -1
- data/app/views/metadata_presenter/footer/footer.html.erb +5 -3
- data/app/views/metadata_presenter/header/show.html.erb +8 -20
- data/app/views/metadata_presenter/page/checkanswers.html.erb +3 -3
- data/app/views/metadata_presenter/page/content.html.erb +5 -4
- data/app/views/metadata_presenter/page/multiplequestions.html.erb +7 -5
- data/app/views/metadata_presenter/page/singlequestion.html.erb +4 -4
- data/app/views/metadata_presenter/save_and_return/email_confirmation.html.erb +2 -2
- data/app/views/metadata_presenter/save_and_return/resume_from_start.html.erb +1 -1
- data/app/views/metadata_presenter/save_and_return/resume_progress.html.erb +2 -2
- data/app/views/metadata_presenter/save_and_return/return.html.erb +2 -2
- data/app/views/metadata_presenter/save_and_return/show.html.erb +1 -1
- data/app/views/metadata_presenter/session/_timeout_fallback.html.erb +2 -3
- data/config/locales/cy.yml +181 -0
- data/config/locales/en.yml +39 -9
- data/default_metadata/string/error.accept.json +2 -1
- data/default_metadata/string/error.address.json +2 -1
- data/default_metadata/string/error.autocomplete.json +2 -1
- data/default_metadata/string/error.catch_all.json +2 -1
- data/default_metadata/string/error.date.json +2 -1
- data/default_metadata/string/error.date_after.json +2 -1
- data/default_metadata/string/error.date_before.json +2 -1
- data/default_metadata/string/error.email.json +2 -1
- data/default_metadata/string/error.max_files.json +2 -1
- data/default_metadata/string/error.max_length.json +2 -1
- data/default_metadata/string/error.max_size.json +2 -1
- data/default_metadata/string/error.max_word.json +2 -1
- data/default_metadata/string/error.maximum.json +2 -1
- data/default_metadata/string/error.min_length.json +2 -1
- data/default_metadata/string/error.min_word.json +2 -1
- data/default_metadata/string/error.minimum.json +2 -1
- data/default_metadata/string/error.multiupload.json +2 -1
- data/default_metadata/string/error.number.json +2 -1
- data/default_metadata/string/error.postcode.json +2 -1
- data/default_metadata/string/error.required.json +2 -2
- data/default_metadata/string/error.virus_scan.json +2 -2
- data/lib/metadata_presenter/version.rb +1 -1
- data/schemas/definition/component.json +7 -0
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 11d20716802ffbf7047c3957c4e75aac212bf07161dc5d9a7628d12d22beaacc
|
4
|
+
data.tar.gz: 0bd0019535d81245f79c70c43b98cd1da6ae008a93ed3314e2263dd58e2ff4e7
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 0c610d9eee4512a7823d95f3257416bc5547c862cd763879d53c87d4f0269b377bac95bb41e0f1721e0c33cbc0fb63c3a396362476447cbb2bbd78c18ebdfe64
|
7
|
+
data.tar.gz: 5818639f77709dc762fffc9ffd686424496b6d458266638ca7d9b8f29d4f8b344416a33385f00eca41721743d3a4215cefbd31f6134971a764faafc13565a722
|
@@ -5,6 +5,7 @@ module MetadataPresenter
|
|
5
5
|
helper MetadataPresenter::ApplicationHelper
|
6
6
|
default_form_builder GOVUKDesignSystemFormBuilder::FormBuilder
|
7
7
|
|
8
|
+
around_action :switch_locale
|
8
9
|
before_action :show_maintenance_page
|
9
10
|
|
10
11
|
def reload_user_data
|
@@ -137,6 +138,12 @@ module MetadataPresenter
|
|
137
138
|
render template: 'errors/500', status: :internal_server_error
|
138
139
|
end
|
139
140
|
|
141
|
+
def switch_locale(&action)
|
142
|
+
I18n.with_locale(
|
143
|
+
service.metadata&.[]('locale') || I18n.default_locale, &action
|
144
|
+
)
|
145
|
+
end
|
146
|
+
|
140
147
|
def redirect_to_page(url)
|
141
148
|
redirect_to File.join(request.script_name, url)
|
142
149
|
end
|
@@ -21,9 +21,8 @@ module MetadataPresenter
|
|
21
21
|
:created_at,
|
22
22
|
:updated_at
|
23
23
|
|
24
|
-
validates :secret_question, :secret_answer, :page_slug, :service_version, :user_id, :user_token,
|
25
|
-
|
26
|
-
def initialize; end
|
24
|
+
validates :secret_question, :secret_answer, :page_slug, :service_version, :user_id, :user_token,
|
25
|
+
presence: true, allow_blank: false
|
27
26
|
|
28
27
|
def populate_param_values(params)
|
29
28
|
self.email = params['email']
|
@@ -68,7 +68,7 @@ module MetadataPresenter
|
|
68
68
|
|
69
69
|
# The default error message will be look using the schema key.
|
70
70
|
# Assuming the schema key is 'grogu' then the default message
|
71
|
-
# will look for 'error.grogu.value'.
|
71
|
+
# will look for 'error.grogu.value:en' or 'error.grogu.value:cy'.
|
72
72
|
#
|
73
73
|
# @return [String] returns the default error message
|
74
74
|
# @raise [MetadataPresenter::NoDefaultMessage] raises no default message if
|
@@ -80,9 +80,9 @@ module MetadataPresenter
|
|
80
80
|
.default_metadata[default_error_message_key]
|
81
81
|
|
82
82
|
if default_message.present?
|
83
|
-
default_message[
|
83
|
+
default_message[error_key] % error_message_hash.merge(params)
|
84
84
|
else
|
85
|
-
raise NoDefaultMessage, "No default message found for key '#{default_error_message_key}'."
|
85
|
+
raise NoDefaultMessage, "No default '#{error_key}' message found for key '#{default_error_message_key}'."
|
86
86
|
end
|
87
87
|
end
|
88
88
|
|
@@ -106,6 +106,16 @@ module MetadataPresenter
|
|
106
106
|
@schema_key ||= self.class.name.demodulize.gsub('Validator', '').underscore
|
107
107
|
end
|
108
108
|
|
109
|
+
# The key to use when retrieving localised error messages.
|
110
|
+
# This key will be `value:locale` i.e. `value:en` for English or
|
111
|
+
# `value:cy` for Welsh.
|
112
|
+
#
|
113
|
+
# @return [String] value key to be looked in the default error metadata
|
114
|
+
#
|
115
|
+
def error_key
|
116
|
+
@error_key ||= ['value', I18n.locale].join(':').freeze
|
117
|
+
end
|
118
|
+
|
109
119
|
# Error message hash that will be interpolate with the custom message or
|
110
120
|
# the default metadata
|
111
121
|
#
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<!DOCTYPE html>
|
2
|
-
<html lang="
|
2
|
+
<html lang="<%= I18n.locale %>" class="govuk-template">
|
3
3
|
<head>
|
4
4
|
<meta charset="utf-8">
|
5
5
|
<title><%= service.service_name %></title>
|
@@ -42,7 +42,7 @@
|
|
42
42
|
<div class="govuk-width-container govuk-body-m">
|
43
43
|
<main class="govuk-main-wrapper govuk-main-wrapper--auto-spacing" id="main-content" role="main">
|
44
44
|
<% if back_link.present? %>
|
45
|
-
<a class="govuk-back-link" href="<%= back_link %>"
|
45
|
+
<a class="govuk-back-link" href="<%= back_link %>"><%= t('presenter.back') %></a>
|
46
46
|
<% end %>
|
47
47
|
<% if !allowed_page? %>
|
48
48
|
<%= render partial: 'metadata_presenter/session/timeout_fallback' %>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<div class="govuk-grid-column-two-thirds">
|
6
6
|
<div class="govuk-cookie-banner__content">
|
7
7
|
<p class="govuk-body">
|
8
|
-
<%= t('presenter.analytics.confirmation
|
8
|
+
<%= t('presenter.analytics.confirmation.accepted') %>
|
9
9
|
</p>
|
10
10
|
</div>
|
11
11
|
</div>
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<div class="govuk-grid-column-two-thirds">
|
19
19
|
<div class="govuk-cookie-banner__content">
|
20
20
|
<p class="govuk-body">
|
21
|
-
<%= t('presenter.analytics.confirmation
|
21
|
+
<%= t('presenter.analytics.confirmation.rejected') %>
|
22
22
|
</p>
|
23
23
|
</div>
|
24
24
|
</div>
|
@@ -1,7 +1,7 @@
|
|
1
1
|
<div class="govuk-notification-banner" role="region" aria-labelledby="govuk-notification-banner-title" data-module="govuk-notification-banner">
|
2
2
|
<div class="govuk-notification-banner__header">
|
3
3
|
<h2 class="govuk-notification-banner__title" id="govuk-notification-banner-title">
|
4
|
-
<%= I18n.t('presenter.
|
4
|
+
<%= I18n.t('presenter.notification_banners.important') %>
|
5
5
|
</h2>
|
6
6
|
</div>
|
7
7
|
<div class="govuk-notification-banner__content">
|
@@ -9,4 +9,4 @@
|
|
9
9
|
<%= I18n.t('presenter.external_start_page_info.content', href: govuk_link_to(I18n.t('presenter.external_start_page_info.link_text'), 'https://moj-forms.service.justice.gov.uk/building-and-editing/#start-page')).html_safe %>
|
10
10
|
</p>
|
11
11
|
</div>
|
12
|
-
</div>
|
12
|
+
</div>
|
@@ -1,5 +1,5 @@
|
|
1
1
|
<% if single_page_preview? && !editable? && @page.conditional_components.any? %>
|
2
|
-
<%= govuk_notification_banner(title_text: '
|
2
|
+
<%= govuk_notification_banner(title_text: t('presenter.notification_banners.important')) do |nb|
|
3
3
|
nb.with_heading(text: t('presenter.conditional_content.notification'))
|
4
4
|
end %>
|
5
5
|
<% end%>
|
@@ -6,7 +6,7 @@
|
|
6
6
|
<p><%= @page_answers.send(component.id)['original_filename'] %></p>
|
7
7
|
|
8
8
|
<p>
|
9
|
-
<%= link_to '
|
9
|
+
<%= link_to t('presenter.questions.upload.remove_file'), remove_file_path(component.id), class: 'govuk-link' %>
|
10
10
|
</p>
|
11
11
|
<% else %>
|
12
12
|
<%= f.govuk_file_field component.id.to_sym,
|
@@ -2,7 +2,9 @@
|
|
2
2
|
<ul class="govuk-footer__inline-list">
|
3
3
|
<% service.meta.items.each do |item| %>
|
4
4
|
<li class="govuk-footer__inline-list-item">
|
5
|
-
<a class="govuk-footer__link" href=<%= external_or_relative_link(item.href)
|
5
|
+
<a class="govuk-footer__link" href=<%= external_or_relative_link(item.href) %>>
|
6
|
+
<%= t(item._id, scope: [:presenter, :meta], default: item.text) %>
|
7
|
+
</a>
|
6
8
|
</li>
|
7
9
|
<% end %>
|
8
10
|
</ul>
|
@@ -9,12 +9,14 @@
|
|
9
9
|
<path fill="currentColor" d="M421.5 142.8V.1l-50.7 32.3v161.1h112.4v-50.7zm-122.3-9.6A47.12 47.12 0 0 1 221 97.8c0-26 21.1-47.1 47.1-47.1 16.7 0 31.4 8.7 39.7 21.8l42.7-27.2A97.63 97.63 0 0 0 268.1 0c-36.5 0-68.3 20.1-85.1 49.7A98 98 0 0 0 97.8 0C43.9 0 0 43.9 0 97.8s43.9 97.8 97.8 97.8c36.5 0 68.3-20.1 85.1-49.7a97.76 97.76 0 0 0 149.6 25.4l19.4 22.2h3v-87.8h-80l24.3 27.5zM97.8 145c-26 0-47.1-21.1-47.1-47.1s21.1-47.1 47.1-47.1 47.2 21 47.2 47S123.8 145 97.8 145" />
|
10
10
|
</svg>
|
11
11
|
<span class="govuk-footer__licence-description">
|
12
|
-
|
13
|
-
<a class="govuk-footer__link" href="https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/" rel="license">Open Government Licence v3.0</a>, except where otherwise stated
|
12
|
+
<%= t('presenter.meta.license_html') %>
|
14
13
|
</span>
|
15
14
|
</div>
|
16
15
|
<div class="govuk-footer__meta-item">
|
17
|
-
<a class="govuk-footer__link govuk-footer__copyright-logo"
|
16
|
+
<a class="govuk-footer__link govuk-footer__copyright-logo"
|
17
|
+
href="https://www.nationalarchives.gov.uk/information-management/re-using-public-sector-information/uk-government-licensing-framework/crown-copyright/">
|
18
|
+
<%= t('presenter.meta.copyright') %>
|
19
|
+
</a>
|
18
20
|
</div>
|
19
21
|
</div>
|
20
22
|
</div>
|
@@ -1,24 +1,14 @@
|
|
1
|
-
<
|
2
|
-
|
1
|
+
<a href="#main-content" class="govuk-skip-link" data-module="govuk-skip-link">
|
2
|
+
<%= t('presenter.header.skip') %>
|
3
|
+
</a>
|
3
4
|
|
5
|
+
<header class="govuk-header" role="banner" data-module="govuk-header">
|
4
6
|
<div class="govuk-header__container govuk-width-container">
|
5
7
|
<div class="govuk-header__logo">
|
6
|
-
<a href="
|
8
|
+
<a href="<%= t('presenter.header.govuk_url') %>" class="govuk-header__link govuk-header__link--homepage">
|
7
9
|
<span class="govuk-header__logotype">
|
8
|
-
<svg
|
9
|
-
|
10
|
-
focusable="false"
|
11
|
-
class="govuk-header__logotype-crown"
|
12
|
-
xmlns="http://www.w3.org/2000/svg"
|
13
|
-
viewbox="0 0 132 97"
|
14
|
-
height="30"
|
15
|
-
width="36"
|
16
|
-
>
|
17
|
-
<path
|
18
|
-
fill="currentColor" fill-rule="evenodd"
|
19
|
-
d="M25 30.2c3.5 1.5 7.7-.2 9.1-3.7 1.5-3.6-.2-7.8-3.9-9.2-3.6-1.4-7.6.3-9.1 3.9-1.4 3.5.3 7.5 3.9 9zM9 39.5c3.6 1.5 7.8-.2 9.2-3.7 1.5-3.6-.2-7.8-3.9-9.1-3.6-1.5-7.6.2-9.1 3.8-1.4 3.5.3 7.5 3.8 9zM4.4 57.2c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.5-1.5-7.6.3-9.1 3.8-1.4 3.5.3 7.6 3.9 9.1zm38.3-21.4c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.6-1.5-7.6.3-9.1 3.8-1.3 3.6.4 7.7 3.9 9.1zm64.4-5.6c-3.6 1.5-7.8-.2-9.1-3.7-1.5-3.6.2-7.8 3.8-9.2 3.6-1.4 7.7.3 9.2 3.9 1.3 3.5-.4 7.5-3.9 9zm15.9 9.3c-3.6 1.5-7.7-.2-9.1-3.7-1.5-3.6.2-7.8 3.7-9.1 3.6-1.5 7.7.2 9.2 3.8 1.5 3.5-.3 7.5-3.8 9zm4.7 17.7c-3.6 1.5-7.8-.2-9.2-3.8-1.5-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.3 3.5-.4 7.6-3.9 9.1zM89.3 35.8c-3.6 1.5-7.8-.2-9.2-3.8-1.4-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.4 3.6-.3 7.7-3.9 9.1zM69.7 17.7l8.9 4.7V9.3l-8.9 2.8c-.2-.3-.5-.6-.9-.9L72.4 0H59.6l3.5 11.2c-.3.3-.6.5-.9.9l-8.8-2.8v13.1l8.8-4.7c.3.3.6.7.9.9l-5 15.4v.1c-.2.8-.4 1.6-.4 2.4 0 4.1 3.1 7.5 7 8.1h.2c.3 0 .7.1 1 .1.4 0 .7 0 1-.1h.2c4-.6 7.1-4.1 7.1-8.1 0-.8-.1-1.7-.4-2.4V34l-5.1-15.4c.4-.2.7-.6 1-.9zM66 92.8c16.9 0 32.8 1.1 47.1 3.2 4-16.9 8.9-26.7 14-33.5l-9.6-3.4c1 4.9 1.1 7.2 0 10.2-1.5-1.4-3-4.3-4.2-8.7L108.6 76c2.8-2 5-3.2 7.5-3.3-4.4 9.4-10 11.9-13.6 11.2-4.3-.8-6.3-4.6-5.6-7.9 1-4.7 5.7-5.9 8-.5 4.3-8.7-3-11.4-7.6-8.8 7.1-7.2 7.9-13.5 2.1-21.1-8 6.1-8.1 12.3-4.5 20.8-4.7-5.4-12.1-2.5-9.5 6.2 3.4-5.2 7.9-2 7.2 3.1-.6 4.3-6.4 7.8-13.5 7.2-10.3-.9-10.9-8-11.2-13.8 2.5-.5 7.1 1.8 11 7.3L80.2 60c-4.1 4.4-8 5.3-12.3 5.4 1.4-4.4 8-11.6 8-11.6H55.5s6.4 7.2 7.9 11.6c-4.2-.1-8-1-12.3-5.4l1.4 16.4c3.9-5.5 8.5-7.7 10.9-7.3-.3 5.8-.9 12.8-11.1 13.8-7.2.6-12.9-2.9-13.5-7.2-.7-5 3.8-8.3 7.1-3.1 2.7-8.7-4.6-11.6-9.4-6.2 3.7-8.5 3.6-14.7-4.6-20.8-5.8 7.6-5 13.9 2.2 21.1-4.7-2.6-11.9.1-7.7 8.8 2.3-5.5 7.1-4.2 8.1.5.7 3.3-1.3 7.1-5.7 7.9-3.5.7-9-1.8-13.5-11.2 2.5.1 4.7 1.3 7.5 3.3l-4.7-15.4c-1.2 4.4-2.7 7.2-4.3 8.7-1.1-3-.9-5.3 0-10.2l-9.5 3.4c5 6.9 9.9 16.7 14 33.5 14.8-2.1 30.8-3.2 47.7-3.2z"
|
20
|
-
></path>
|
21
|
-
<image src="{{ params.assetsPath | default('/assets/images') }}/govuk-logotype-crown.png" xlink:href="" class="govuk-header__logotype-crown-fallback-image" width="36" height="32"></image>
|
10
|
+
<svg aria-hidden="true" focusable="false" class="govuk-header__logotype-crown" xmlns="http://www.w3.org/2000/svg" viewbox="0 0 132 97" height="30" width="36">
|
11
|
+
<path fill="currentColor" fill-rule="evenodd" d="M25 30.2c3.5 1.5 7.7-.2 9.1-3.7 1.5-3.6-.2-7.8-3.9-9.2-3.6-1.4-7.6.3-9.1 3.9-1.4 3.5.3 7.5 3.9 9zM9 39.5c3.6 1.5 7.8-.2 9.2-3.7 1.5-3.6-.2-7.8-3.9-9.1-3.6-1.5-7.6.2-9.1 3.8-1.4 3.5.3 7.5 3.8 9zM4.4 57.2c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.5-1.5-7.6.3-9.1 3.8-1.4 3.5.3 7.6 3.9 9.1zm38.3-21.4c3.5 1.5 7.7-.2 9.1-3.8 1.5-3.6-.2-7.7-3.9-9.1-3.6-1.5-7.6.3-9.1 3.8-1.3 3.6.4 7.7 3.9 9.1zm64.4-5.6c-3.6 1.5-7.8-.2-9.1-3.7-1.5-3.6.2-7.8 3.8-9.2 3.6-1.4 7.7.3 9.2 3.9 1.3 3.5-.4 7.5-3.9 9zm15.9 9.3c-3.6 1.5-7.7-.2-9.1-3.7-1.5-3.6.2-7.8 3.7-9.1 3.6-1.5 7.7.2 9.2 3.8 1.5 3.5-.3 7.5-3.8 9zm4.7 17.7c-3.6 1.5-7.8-.2-9.2-3.8-1.5-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.3 3.5-.4 7.6-3.9 9.1zM89.3 35.8c-3.6 1.5-7.8-.2-9.2-3.8-1.4-3.6.2-7.7 3.9-9.1 3.6-1.5 7.7.3 9.2 3.8 1.4 3.6-.3 7.7-3.9 9.1zM69.7 17.7l8.9 4.7V9.3l-8.9 2.8c-.2-.3-.5-.6-.9-.9L72.4 0H59.6l3.5 11.2c-.3.3-.6.5-.9.9l-8.8-2.8v13.1l8.8-4.7c.3.3.6.7.9.9l-5 15.4v.1c-.2.8-.4 1.6-.4 2.4 0 4.1 3.1 7.5 7 8.1h.2c.3 0 .7.1 1 .1.4 0 .7 0 1-.1h.2c4-.6 7.1-4.1 7.1-8.1 0-.8-.1-1.7-.4-2.4V34l-5.1-15.4c.4-.2.7-.6 1-.9zM66 92.8c16.9 0 32.8 1.1 47.1 3.2 4-16.9 8.9-26.7 14-33.5l-9.6-3.4c1 4.9 1.1 7.2 0 10.2-1.5-1.4-3-4.3-4.2-8.7L108.6 76c2.8-2 5-3.2 7.5-3.3-4.4 9.4-10 11.9-13.6 11.2-4.3-.8-6.3-4.6-5.6-7.9 1-4.7 5.7-5.9 8-.5 4.3-8.7-3-11.4-7.6-8.8 7.1-7.2 7.9-13.5 2.1-21.1-8 6.1-8.1 12.3-4.5 20.8-4.7-5.4-12.1-2.5-9.5 6.2 3.4-5.2 7.9-2 7.2 3.1-.6 4.3-6.4 7.8-13.5 7.2-10.3-.9-10.9-8-11.2-13.8 2.5-.5 7.1 1.8 11 7.3L80.2 60c-4.1 4.4-8 5.3-12.3 5.4 1.4-4.4 8-11.6 8-11.6H55.5s6.4 7.2 7.9 11.6c-4.2-.1-8-1-12.3-5.4l1.4 16.4c3.9-5.5 8.5-7.7 10.9-7.3-.3 5.8-.9 12.8-11.1 13.8-7.2.6-12.9-2.9-13.5-7.2-.7-5 3.8-8.3 7.1-3.1 2.7-8.7-4.6-11.6-9.4-6.2 3.7-8.5 3.6-14.7-4.6-20.8-5.8 7.6-5 13.9 2.2 21.1-4.7-2.6-11.9.1-7.7 8.8 2.3-5.5 7.1-4.2 8.1.5.7 3.3-1.3 7.1-5.7 7.9-3.5.7-9-1.8-13.5-11.2 2.5.1 4.7 1.3 7.5 3.3l-4.7-15.4c-1.2 4.4-2.7 7.2-4.3 8.7-1.1-3-.9-5.3 0-10.2l-9.5 3.4c5 6.9 9.9 16.7 14 33.5 14.8-2.1 30.8-3.2 47.7-3.2z"></path>
|
22
12
|
</svg>
|
23
13
|
<span class="govuk-header__logotype-text">
|
24
14
|
GOV.UK
|
@@ -28,9 +18,7 @@
|
|
28
18
|
</div>
|
29
19
|
<% if service.service_name.present? %>
|
30
20
|
<div class="govuk-header__content">
|
31
|
-
|
32
|
-
<%= service.service_name %>
|
33
|
-
</a>
|
21
|
+
<%= link_to service.service_name, start_page_url, class: %w[govuk-header__link govuk-header__service-name] %>
|
34
22
|
</div>
|
35
23
|
<% end %>
|
36
24
|
</div>
|
@@ -49,7 +49,7 @@
|
|
49
49
|
editable? ? '#' : change_answer_path(url: page_answers_presenter.url),
|
50
50
|
class: 'govuk-link'
|
51
51
|
) do %>
|
52
|
-
|
52
|
+
<%= t('presenter.actions.change_html', question: page_answers_presenter.humanised_title) %>
|
53
53
|
<% end %>
|
54
54
|
</dd>
|
55
55
|
</div>
|
@@ -102,9 +102,9 @@
|
|
102
102
|
<%= t('presenter.actions.submit') -%></button>
|
103
103
|
<% if save_and_return_enabled? %>
|
104
104
|
<% if editor_preview? || editable? %>
|
105
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later_check_answers', disabled: true %>
|
105
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later_check_answers', disabled: true %>
|
106
106
|
<% else %>
|
107
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later_check_answers', value: 'true' %>
|
107
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later_check_answers', value: 'true' %>
|
108
108
|
<% end %>
|
109
109
|
<% end %>
|
110
110
|
</div>
|
@@ -36,14 +36,15 @@
|
|
36
36
|
} %>
|
37
37
|
|
38
38
|
<div class="govuk-button-group">
|
39
|
-
<%= f.govuk_submit(disabled: editable?) %>
|
39
|
+
<%= f.govuk_submit(t('presenter.actions.continue'), disabled: editable?) %>
|
40
40
|
<% if save_and_return_enabled? %>
|
41
41
|
<% if editor_preview? || editable? %>
|
42
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
42
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
43
43
|
<% else %>
|
44
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', value: 'true' %>
|
44
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', value: 'true' %>
|
45
45
|
<% end %>
|
46
|
-
<% end %>
|
46
|
+
<% end %>
|
47
|
+
</div>
|
47
48
|
<% end %>
|
48
49
|
</div>
|
49
50
|
</div>
|
@@ -12,7 +12,7 @@
|
|
12
12
|
|
13
13
|
<%= form_for @page_answers, as: :answers, url: @page.url, method: :post, authenticity_token: false do |f| %>
|
14
14
|
<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>
|
15
|
-
<%= f.govuk_error_summary %>
|
15
|
+
<%= f.govuk_error_summary(t('presenter.errors.summary_heading')) %>
|
16
16
|
|
17
17
|
<%= render partial: 'metadata_presenter/component/components', locals: {
|
18
18
|
f: f,
|
@@ -24,14 +24,16 @@
|
|
24
24
|
}
|
25
25
|
%>
|
26
26
|
<div class="govuk-button-group">
|
27
|
-
<%= f.govuk_submit(disabled: editable?) %>
|
27
|
+
<%= f.govuk_submit(t('presenter.actions.continue'), disabled: editable?) %>
|
28
|
+
|
28
29
|
<% if save_and_return_enabled? && show_save_and_return %>
|
29
30
|
<% if editor_preview? || editable? %>
|
30
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
31
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
31
32
|
<% else %>
|
32
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later'
|
33
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', value: 'true' %>
|
33
34
|
<% end %>
|
34
|
-
<% end %>
|
35
|
+
<% end %>
|
36
|
+
</div>
|
35
37
|
<% end %>
|
36
38
|
</div>
|
37
39
|
</div>
|
@@ -9,7 +9,7 @@
|
|
9
9
|
<%= render 'metadata_presenter/attribute/section_heading' %>
|
10
10
|
|
11
11
|
<%= form_for @page_answers, as: :answers, url: @page.url, method: :post, authenticity_token: false do |f| %>
|
12
|
-
<%= f.govuk_error_summary %>
|
12
|
+
<%= f.govuk_error_summary(t('presenter.errors.summary_heading')) %>
|
13
13
|
<%= hidden_field_tag :authenticity_token, form_authenticity_token -%>
|
14
14
|
<% @page.components.each_with_index do |component, index| %>
|
15
15
|
<div class="fb-editable"
|
@@ -27,13 +27,13 @@
|
|
27
27
|
<% end %>
|
28
28
|
|
29
29
|
<div class="govuk-button-group">
|
30
|
-
<%= f.govuk_submit(disabled: editable?) %>
|
30
|
+
<%= f.govuk_submit(t('presenter.actions.continue'), disabled: editable?) %>
|
31
31
|
|
32
32
|
<% if save_and_return_enabled? && show_save_and_return %>
|
33
33
|
<% if editor_preview? || editable? %>
|
34
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
34
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', disabled: true %>
|
35
35
|
<% else %>
|
36
|
-
<%= button_to t('presenter.save_and_return.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', value: 'true' %>
|
36
|
+
<%= button_to t('presenter.save_and_return.actions.save'), '/', params: { page_slug:request.env['PATH_INFO'] }, method: :post, class: "govuk-button govuk-button--secondary", name: 'save_for_later', value: 'true' %>
|
37
37
|
<% end %>
|
38
38
|
<% end %>
|
39
39
|
</div>
|
@@ -3,7 +3,7 @@
|
|
3
3
|
<div class="govuk-grid-column-two-thirds">
|
4
4
|
<a class="govuk-back-link" href="<%= :back %>"><%= t('presenter.back') %></a>
|
5
5
|
<%= form_for @email_confirmation do |f| %>
|
6
|
-
<%= f.govuk_error_summary %>
|
6
|
+
<%= f.govuk_error_summary(t('presenter.errors.summary_heading')) %>
|
7
7
|
<div class="govuk-form-group">
|
8
8
|
<%=
|
9
9
|
f.govuk_email_field :email_confirmation,
|
@@ -18,7 +18,7 @@
|
|
18
18
|
<br/>
|
19
19
|
<div class="govuk-button-group">
|
20
20
|
<%= f.govuk_submit t('presenter.save_and_return.show.continue') %> <%= link_to t('presenter.save_and_return.show.cancel'), page_slug, class: "govuk-button govuk-button--secondary" %>
|
21
|
-
|
21
|
+
</div>
|
22
22
|
<% end %>
|
23
23
|
</div>
|
24
24
|
</div>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<p class="govuk-hint"><%= t('presenter.save_and_return.resume.from_start.info_1') %></p>
|
6
6
|
<br/>
|
7
7
|
<p class="govuk-hint"><%= t('presenter.save_and_return.resume.from_start.info_2') %></p>
|
8
|
-
<%= link_to t('presenter.save_and_return.
|
8
|
+
<%= link_to t('presenter.save_and_return.actions.continue'), root_path, class: "govuk-button" %>
|
9
9
|
</div>
|
10
10
|
</div>
|
11
11
|
</div>
|
@@ -27,7 +27,7 @@
|
|
27
27
|
editable? ? '#' : page_answers_presenter.url,
|
28
28
|
class: 'govuk-link'
|
29
29
|
) do %>
|
30
|
-
|
30
|
+
<%= t('presenter.actions.change_html', question: page_answers_presenter.humanised_title) %>
|
31
31
|
<% end %>
|
32
32
|
</dd>
|
33
33
|
</div>
|
@@ -42,7 +42,7 @@
|
|
42
42
|
</dl>
|
43
43
|
|
44
44
|
<div class="govuk-button-group">
|
45
|
-
<%= link_to t('presenter.save_and_return.
|
45
|
+
<%= link_to t('presenter.save_and_return.actions.continue'), page_slug, class: "govuk-button" %> <a href="<%= save_path(:page_slug=>page_slug) %>" class="govuk-button govuk-button--secondary" data-module="govuk-button" data-component="save-button"><%= t('presenter.save_and_return.actions.save') %></a>
|
46
46
|
</div>
|
47
47
|
<% end %>
|
48
48
|
</div>
|
@@ -4,7 +4,7 @@
|
|
4
4
|
<h1 id="page-heading" class="govuk-heading-xl"><%= t('presenter.save_and_return.resume.heading', service_name: get_service_name) %></h1>
|
5
5
|
<p><%= t('presenter.save_and_return.resume.content') %></p>
|
6
6
|
<%= form_for @resume_form do |f| %>
|
7
|
-
<%= f.govuk_error_summary %>
|
7
|
+
<%= f.govuk_error_summary(t('presenter.errors.summary_heading')) %>
|
8
8
|
<%= f.hidden_field(:uuid, value: get_uuid) %>
|
9
9
|
<div class="govuk-form-group">
|
10
10
|
<%=
|
@@ -20,7 +20,7 @@
|
|
20
20
|
<%= t('presenter.save_and_return.resume.information') %>
|
21
21
|
</strong>
|
22
22
|
</div>
|
23
|
-
<%= f.govuk_submit t('presenter.save_and_return.
|
23
|
+
<%= f.govuk_submit t('presenter.save_and_return.actions.continue') %><% end %>
|
24
24
|
</div>
|
25
25
|
</div>
|
26
26
|
</div>
|
@@ -5,7 +5,7 @@
|
|
5
5
|
<p class="mojf-settings-screen__description"><%= t('presenter.save_and_return.show.description') %></p>
|
6
6
|
|
7
7
|
<%= form_for @saved_form do |f| %>
|
8
|
-
<%= f.govuk_error_summary %>
|
8
|
+
<%= f.govuk_error_summary(t('presenter.errors.summary_heading')) %>
|
9
9
|
<div class="govuk-form-group">
|
10
10
|
<%= f.hidden_field(:page_slug, value: page_slug) %>
|
11
11
|
<%=
|
@@ -1,8 +1,7 @@
|
|
1
1
|
<div class="govuk-warning-text govuk-timeout-warning-fallback">
|
2
2
|
<span class="govuk-warning-text__icon" aria-hidden="true">!</span>
|
3
3
|
<strong class="govuk-warning-text__text">
|
4
|
-
<span class="govuk-warning-text__assistive"
|
5
|
-
<%= t('presenter.session_timeout_warning.timer_fallback'
|
6
|
-
<%= t('presenter.session_timeout_warning.timer_extra') %>
|
4
|
+
<span class="govuk-warning-text__assistive"><%= t('presenter.notification_banners.warning') %></span>
|
5
|
+
<%= t('presenter.session_timeout_warning.timer_fallback', expiry_time: timeout_fallback(session_expiry_time)) %>
|
7
6
|
</strong>
|
8
7
|
</div>
|
@@ -0,0 +1,181 @@
|
|
1
|
+
cy:
|
2
|
+
date:
|
3
|
+
day_names: [ Dydd Sul, Dydd Llun, Dydd Mawrth, Dydd Mercher, Dydd Iau, Dydd Gwener, Dydd Sadwrn ]
|
4
|
+
abbr_day_names: [ Sul, Llun, Maw, Mer, Iau, Gwe, Sad ]
|
5
|
+
month_names: [ ~, Ionawr, Chwefror, Mawrth, Ebrill, Mai, Mehefin, Gorffennaf, Awst, Medi, Hydref, Tachwedd, Rhagfyr ]
|
6
|
+
abbr_month_names: [ ~, Ion, Chw, Maw, Ebr, Mai, Meh, Gor, Awst, Med, Hyd, Tach, Rha ]
|
7
|
+
time:
|
8
|
+
am: yb
|
9
|
+
pm: yh
|
10
|
+
|
11
|
+
presenter:
|
12
|
+
back: Yn ôl
|
13
|
+
actions:
|
14
|
+
start: Dechrau nawr
|
15
|
+
continue: Parhau
|
16
|
+
submit: (cy) Submit
|
17
|
+
upload_options: (cy) Upload options
|
18
|
+
change_html: (cy) Change <span class="govuk-visually-hidden">Your answer for %{question}</span>
|
19
|
+
errors:
|
20
|
+
summary_heading: Mae yna broblem
|
21
|
+
notification_banners:
|
22
|
+
important: (cy) Important
|
23
|
+
warning: (cy) Warning
|
24
|
+
analytics:
|
25
|
+
heading: (cy) Cookies on %{service_name}
|
26
|
+
body_1: (cy) We use some essential cookies to make this service work.
|
27
|
+
body_2: (cy) We'd also like to use analytics cookies so we can understand how you use the service and make improvements.
|
28
|
+
accept: (cy) Accept analytics cookies
|
29
|
+
reject: (cy) Reject analytics cookies
|
30
|
+
view_cookies: (cy) View cookies
|
31
|
+
confirmation:
|
32
|
+
accepted: (cy) You've accepted analytics cookies.
|
33
|
+
rejected: (cy) You've rejected analytics cookies.
|
34
|
+
hide: (cy) Hide this message
|
35
|
+
external_start_page_info:
|
36
|
+
content: (cy) Your form has a %{href}. Links to your form's 'home' page, such as your form's name in the header, will not work until the GOV.UK page has been published.
|
37
|
+
link_text: (cy) GOV.UK start page
|
38
|
+
maintenance:
|
39
|
+
maintenance_page_heading: (cy) Sorry, this form is unavailable
|
40
|
+
maintenance_page_content: "(cy) If you were in the middle of completing the form, your data has not been saved.\r\n\r\nThe form will be available again from 9am on Monday 19 November 2018.\r\n\r\n\r\n\r\n### Other ways to apply\r\n\r\nContact us if your application is urgent \r\n\r\nEmail: \r\nTelephone: \r\nMonday to Friday, 9am to 5pm \r\n[Find out about call charges](https://www.gov.uk/call-charges)"
|
41
|
+
session_timeout_warning:
|
42
|
+
heading: (cy) Do you need more time?
|
43
|
+
timer: (cy) We will reset your form and delete your information if you do not continue in
|
44
|
+
timer_fallback: (cy) We will reset your form and delete your information if you do not complete the page and press continue by %{expiry_time}.
|
45
|
+
redirect: (cy) You are about to be redirected
|
46
|
+
close_button: (cy) Close
|
47
|
+
button: Parhau
|
48
|
+
session_expired:
|
49
|
+
title: (cy) Your form has been reset
|
50
|
+
content: "(cy) To protect your personal information, we have reset the form and cleared your answers.\r\n\r\nThis is because you were inactive for 30 minutes."
|
51
|
+
restart_link: (cy) Start again
|
52
|
+
session_complete:
|
53
|
+
title: (cy) Submission complete
|
54
|
+
content: "(cy) This form has already been submitted.\r\n\r\nTo protect your personal information, we have reset the form and cleared your answers."
|
55
|
+
restart_link: (cy) Start again
|
56
|
+
confirmation:
|
57
|
+
reference_number: '(cy) Your reference number is:'
|
58
|
+
payment_enabled: (cy) You still need to pay
|
59
|
+
continue_to_pay_button: (cy) Continue to pay
|
60
|
+
application_complete: '(cy) Application complete'
|
61
|
+
email_disclaimer_email_question: '(cy) We will use this address to send you a confirmation email with a copy of your answers.'
|
62
|
+
email_basic_disclaimer_html: '(cy) We will send a confirmation email with a copy of these answers to %{email_provided}'
|
63
|
+
confirmation_email:
|
64
|
+
table_heading: (cy) Your answers
|
65
|
+
questions:
|
66
|
+
upload:
|
67
|
+
remove_file: (cy) Remove file
|
68
|
+
multiupload:
|
69
|
+
remove_file: '(cy) Delete'
|
70
|
+
add_another: '(cy) Add another file'
|
71
|
+
single_upload: '(cy) Maximum file size 7MB'
|
72
|
+
answered_singular: '(cy) You can add 1 more file (maximum 7MB per file)'
|
73
|
+
answered_plural: '(cy) You can add %{num} more files (maximum 7MB per file)'
|
74
|
+
answered_count_singular: '(cy) You have added 1 file'
|
75
|
+
answered_count_plural: '(cy) You have added %{num} files'
|
76
|
+
singular: '(cy) You can add 1 more file (maximum 7MB)'
|
77
|
+
plural: '(cy) You can add up to %{num} files (maximum 7MB per file)'
|
78
|
+
none: "(cy) You can't add any more files. Remove a file if you need to add a different one."
|
79
|
+
conditional_content:
|
80
|
+
notification: "(cy) Some content on this page will be hidden under certain conditions. Preview the full form or publish to Test to check."
|
81
|
+
save_and_return:
|
82
|
+
actions:
|
83
|
+
save: (cy) Save for later
|
84
|
+
continue: Parhau
|
85
|
+
show:
|
86
|
+
heading: '(cy) Save for later'
|
87
|
+
description: '(cy) We will send you a one-off link that you can use to resume this form within 28 days.'
|
88
|
+
email: '(cy) Email address'
|
89
|
+
email_hint: '(cy) We will only use this to send you a link to your form'
|
90
|
+
secret_question: '(cy) Pick a security question'
|
91
|
+
secret_question_hint: '(cy) We will use this to verify your identity when you return'
|
92
|
+
secret_answer: '(cy) The answer to your security question'
|
93
|
+
continue: '(cy) Continue with saving'
|
94
|
+
cancel: '(cy) Cancel saving and resume form'
|
95
|
+
confirm_email:
|
96
|
+
heading: '(cy) Check your email address is correct'
|
97
|
+
description: '(cy) Make sure this is correct before finishing'
|
98
|
+
saved:
|
99
|
+
heading: '(cy) Your form has been saved'
|
100
|
+
success: "(cy) We have sent a one-off link to %{email} which you can use to resume this form within 28 days. After that time, your saved information will be deleted."
|
101
|
+
info_1: "(cy) If you haven't received the email after a few minutes, check your spam folder."
|
102
|
+
info_2: '(cy) This link will only work once. If you want to save your progress again after resuming the form, you will need to repeat the save process and generate another link'
|
103
|
+
info_3: '(cy) You are now free to close this window or navigate away from this page.'
|
104
|
+
validation:
|
105
|
+
email: '(cy) Enter an email address in the correct format, like name@example.com'
|
106
|
+
email_not_matched: '(cy) Does not match'
|
107
|
+
answer_not_matched: '(cy) Your answer is incorrect. You have %{attempts} attempts remaining.'
|
108
|
+
answer_too_long: '(cy) Your answer for %{attribute} must be 100 characters or fewer.'
|
109
|
+
secret_questions:
|
110
|
+
one: "(cy) What is your mother's maiden name?"
|
111
|
+
two: '(cy) What is the last name of your favourite teacher?'
|
112
|
+
three: '(cy) What is the name of the hospital where you were born?'
|
113
|
+
resume:
|
114
|
+
heading: "(cy) Continue with \"%{service_name}\""
|
115
|
+
content: '(cy) To retrieve your information, enter the answer to your security question that you set when saving your progress.'
|
116
|
+
information: '(cy) This will use up your save link. To save your progress again, you will need to repeat the save process and generate another link.'
|
117
|
+
errors:
|
118
|
+
generic_problem:
|
119
|
+
heading: '(cy) There is a problem with your link'
|
120
|
+
info_1: '(cy) Please try again. If you copied and pasted the link into your browser, check you copied the entire link.'
|
121
|
+
info_2: '(cy) If this problem persists, you will need to start the form again. Your saved answers will be securely deleted after 28 days.'
|
122
|
+
expired:
|
123
|
+
heading: '(cy) Your link has expired'
|
124
|
+
info_1: '(cy) It has been more than 28 days since you saved your progress on this form and the link is no longer valid.'
|
125
|
+
info_2: '(cy) Your saved answers have been be securely deleted.'
|
126
|
+
link_used:
|
127
|
+
heading: '(cy) That link has already been used'
|
128
|
+
info_1: '(cy) Links to resume a form only work once. If you have saved your progress more than once, check for a more recent link.'
|
129
|
+
info_2: '(cy) Otherwise, you will need to start the form again. Your saved answers will be securely deleted after 28 days.'
|
130
|
+
failure:
|
131
|
+
heading: '(cy) Your information cannot be retrieved'
|
132
|
+
info_1: '(cy) The answer to your security question was incorrect and you have run out of attempts to retrieve your information.'
|
133
|
+
info_2: '(cy) You will need to start the form again. Your saved answers will be securely deleted.'
|
134
|
+
from_start:
|
135
|
+
heading: "(cy) \"%{service_name}\" has been updated"
|
136
|
+
info_1: '(cy) Your information has been successfully retrieved. However, the form has been updated since your last visit.'
|
137
|
+
info_2: '(cy) Please check from the beginning in case anything has changed, such as new requirements or questions.'
|
138
|
+
progress:
|
139
|
+
heading: '(cy) %{service_name}'
|
140
|
+
content_1: '(cy) You have successfully retrieved your saved information.'
|
141
|
+
content_2: '(cy) Here are the answers you have provided so far.'
|
142
|
+
confirmation_email:
|
143
|
+
subject: "(cy) Your saved form - '%{service_name}'"
|
144
|
+
body: "(cy) You have saved your progress with the form '%{service_name}'.<br /><br /><a href=%{magic_link}>Continue with your form</a><br /><br />This link will only work once. If you want to save your progress again after resuming the form, you will need to repeat the save process and generate another link.<br /><br />The link is valid for 28 days. After that time, your saved information will be deleted."
|
145
|
+
header:
|
146
|
+
skip: Neidio i’r prif gynnwys
|
147
|
+
govuk_url: 'https://www.gov.uk/cymraeg'
|
148
|
+
footer:
|
149
|
+
cookies:
|
150
|
+
heading: Cwcis
|
151
|
+
body: "(cy) This form saves small files (known as 'cookies') onto your device.\r\n \r\nCookies are used to:\r\n \r\n* remember your progress\r\n* measure how you use the form so it can be updated and improved based on your needs\r\n \r\nThese cookies are not used to identify you personally.\r\n \r\nYou will normally see a message on the form before we store a cookie on your computer. Essential cookies are necessary for the form to work but you can still complete the form if you choose not to accept analytics cookies.\r\n \r\nFind out more about [how to manage cookies](https://www.aboutcookies.org/).\r\n \r\n## Essential cookies\r\n \r\nEssential cookies are required to make this form work and keep your information secure while you use it.\r\n \r\nWe use the following essential cookies: \r\n \r\n| Name | Purpose | Expires |\r\n|---|---|---|\r\n| \\_fb\\_runner\\_session | Saves your current progress on this computer and tracks inactivity periods | After 30 minutes of inactivity or when you close your browser |\r\n| analytics | Remembers whether you accept or reject analytics cookies on this form | After 1 year |\r\n \r\n## Analytics cookies\r\n \r\nAnalytics cookies collect information about how you use this form. This helps us make sure the form is meeting the needs of its users and to help us make improvements.\r\n \r\nWe use Google Analytics to learn about:\r\n \r\n* the pages you visit\r\n* how long you spend on each page\r\n* how you got to the form\r\n* what you click on while you are using the form\r\n \r\nWe do not collect or store your personal information (for example your name or address) so this information can't be used to identify who you are. We do not allow third parties to use or share our analytics data.\r\n \r\nThis form may use different versions of Google Analytics and could save some or all of the following cookies:\r\n \r\n| Name | Purpose | Expires |\r\n|---|---|---|\r\n| \\_ga | Helps us count how many people visit this form | 2 years |\r\n| \\_gid | Helps us count how many people visit this form | 1 day |\r\n| \\_ga\\_\\<container-id> | Used to persist session state | 2 years |\r\n| \\_gac\\_gb\\_\\<container-id> | Contains campaign-related information | 90 days |\r\n| \\_gat | Used to throttle request rate | 1 minute |\r\n| \\_dc\\_gtm\\_\\<property-id>| Used to throttle request rate | 1 minute |\r\n| AMP\\_TOKEN | Contains a token that can be used to retrieve a Client ID from AMP Client ID service | 30 seconds to 1 year |\r\n| \\_gac\\_\\<property-id> | Contains campaign related information | 90 days |\r\n \r\nYou can use a browser addon to [opt out of Google Analytics cookies](https://tools.google.com/dlpage/gaoptout) on all websites."
|
152
|
+
privacy:
|
153
|
+
heading: Polisi preifatrwydd
|
154
|
+
accessibility:
|
155
|
+
heading: Datganiad hygyrchedd
|
156
|
+
meta:
|
157
|
+
config:
|
158
|
+
meta--link: Cwcis
|
159
|
+
meta--link--2: Preifatrwydd
|
160
|
+
meta--link--3: Hygyrchedd
|
161
|
+
copyright: © Hawlfraint y Goron
|
162
|
+
license_html: |
|
163
|
+
Mae’r holl gynnwys ar gael dan
|
164
|
+
<a class="govuk-footer__link" href="https://www.nationalarchives.gov.uk/doc/open-government-licence-cymraeg/version/3/" rel="license">Drwydded y Llywodraeth Agored v3.0</a>,
|
165
|
+
ac eithrio lle nodir yn wahanol
|
166
|
+
|
167
|
+
activemodel:
|
168
|
+
errors:
|
169
|
+
messages:
|
170
|
+
blank: 'Rhowch ateb i "%{attribute}"'
|
171
|
+
attributes:
|
172
|
+
metadata_presenter/saved_form:
|
173
|
+
secret_question: (cy) Secret question
|
174
|
+
secret_answer: (cy) Secret answer
|
175
|
+
metadata_presenter/address_fieldset:
|
176
|
+
address_line_one: (cy) Address line 1
|
177
|
+
address_line_two: (cy) Address line 2 (optional)
|
178
|
+
city: (cy) Town or city
|
179
|
+
county: (cy) County (optional)
|
180
|
+
postcode: (cy) Postcode
|
181
|
+
country: (cy) Country
|
data/config/locales/en.yml
CHANGED
@@ -6,6 +6,12 @@ en:
|
|
6
6
|
continue: Continue
|
7
7
|
submit: Submit
|
8
8
|
upload_options: Upload options
|
9
|
+
change_html: Change <span class="govuk-visually-hidden">Your answer for %{question}</span>
|
10
|
+
errors:
|
11
|
+
summary_heading: There is a problem
|
12
|
+
notification_banners:
|
13
|
+
important: Important
|
14
|
+
warning: Warning
|
9
15
|
analytics:
|
10
16
|
heading: Cookies on %{service_name}
|
11
17
|
body_1: We use some essential cookies to make this service work.
|
@@ -13,12 +19,11 @@ en:
|
|
13
19
|
accept: Accept analytics cookies
|
14
20
|
reject: Reject analytics cookies
|
15
21
|
view_cookies: View cookies
|
16
|
-
|
17
|
-
|
18
|
-
|
22
|
+
confirmation:
|
23
|
+
accepted: You've accepted analytics cookies.
|
24
|
+
rejected: You've rejected analytics cookies.
|
19
25
|
hide: Hide this message
|
20
26
|
external_start_page_info:
|
21
|
-
important: 'Important'
|
22
27
|
content: "Your form has a %{href}. Links to your form's 'home' page, such as your form's name in the header, will not work until the GOV.UK page has been published."
|
23
28
|
link_text: 'GOV.UK start page'
|
24
29
|
maintenance:
|
@@ -27,7 +32,7 @@ en:
|
|
27
32
|
session_timeout_warning:
|
28
33
|
heading: Do you need more time?
|
29
34
|
timer: We will reset your form and delete your information if you do not continue in
|
30
|
-
timer_fallback: We will reset your form and delete your information if you do not complete the page and press continue by
|
35
|
+
timer_fallback: We will reset your form and delete your information if you do not complete the page and press continue by %{expiry_time}.
|
31
36
|
redirect: You are about to be redirected
|
32
37
|
close_button: Close
|
33
38
|
button: Continue
|
@@ -46,7 +51,11 @@ en:
|
|
46
51
|
application_complete: 'Application complete'
|
47
52
|
email_disclaimer_email_question: 'We will use this address to send you a confirmation email with a copy of your answers.'
|
48
53
|
email_basic_disclaimer_html: 'We will send a confirmation email with a copy of these answers to %{email_provided}'
|
54
|
+
confirmation_email:
|
55
|
+
table_heading: Your answers
|
49
56
|
questions:
|
57
|
+
upload:
|
58
|
+
remove_file: Remove file
|
50
59
|
multiupload:
|
51
60
|
remove_file: 'Delete'
|
52
61
|
add_another: 'Add another file'
|
@@ -61,7 +70,9 @@ en:
|
|
61
70
|
conditional_content:
|
62
71
|
notification: "Some content on this page will be hidden under certain conditions. Preview the full form or publish to Test to check."
|
63
72
|
save_and_return:
|
64
|
-
|
73
|
+
actions:
|
74
|
+
save: Save for later
|
75
|
+
continue: Continue
|
65
76
|
show:
|
66
77
|
heading: 'Save for later'
|
67
78
|
description: 'We will send you a one-off link that you can use to resume this form within 28 days.'
|
@@ -92,7 +103,6 @@ en:
|
|
92
103
|
three: 'What is the name of the hospital where you were born?'
|
93
104
|
resume:
|
94
105
|
heading: "Continue with \"%{service_name}\""
|
95
|
-
continue: 'Continue'
|
96
106
|
content: 'To retrieve your information, enter the answer to your security question that you set when saving your progress.'
|
97
107
|
information: 'This will use up your save link. To save your progress again, you will need to repeat the save process and generate another link.'
|
98
108
|
errors:
|
@@ -116,12 +126,16 @@ en:
|
|
116
126
|
heading: "\"%{service_name}\" has been updated"
|
117
127
|
info_1: 'Your information has been successfully retrieved. However, the form has been updated since your last visit.'
|
118
128
|
info_2: 'Please check from the beginning in case anything has changed, such as new requirements or questions.'
|
119
|
-
continue: 'Continue'
|
120
129
|
progress:
|
121
130
|
heading: '%{service_name}'
|
122
131
|
content_1: 'You have successfully retrieved your saved information.'
|
123
132
|
content_2: 'Here are the answers you have provided so far.'
|
124
|
-
|
133
|
+
confirmation_email:
|
134
|
+
subject: "Your saved form - '%{service_name}'"
|
135
|
+
body: "You have saved your progress with the form '%{service_name}'.<br /><br /><a href=%{magic_link}>Continue with your form</a><br /><br />This link will only work once. If you want to save your progress again after resuming the form, you will need to repeat the save process and generate another link.<br /><br />The link is valid for 28 days. After that time, your saved information will be deleted."
|
136
|
+
header:
|
137
|
+
skip: Skip to main content
|
138
|
+
govuk_url: 'https://www.gov.uk'
|
125
139
|
footer:
|
126
140
|
cookies:
|
127
141
|
heading: "Cookies"
|
@@ -175,9 +189,25 @@ en:
|
|
175
189
|
- "[date when you performed your basic accessibility check]"
|
176
190
|
- "[insert team or organisation here]"
|
177
191
|
url: 'accessibility'
|
192
|
+
meta:
|
193
|
+
config:
|
194
|
+
meta--link: Cookies
|
195
|
+
meta--link--2: Privacy
|
196
|
+
meta--link--3: Accessibility
|
197
|
+
copyright: © Crown copyright
|
198
|
+
license_html: |
|
199
|
+
All content is available under the
|
200
|
+
<a class="govuk-footer__link" href="https://www.nationalarchives.gov.uk/doc/open-government-licence/version/3/" rel="license">Open Government Licence v3.0</a>,
|
201
|
+
except where otherwise stated
|
178
202
|
|
179
203
|
activemodel:
|
204
|
+
errors:
|
205
|
+
messages:
|
206
|
+
blank: 'Enter an answer for "%{attribute}"'
|
180
207
|
attributes:
|
208
|
+
metadata_presenter/saved_form:
|
209
|
+
secret_question: Secret question
|
210
|
+
secret_answer: Secret answer
|
181
211
|
metadata_presenter/address_fieldset:
|
182
212
|
address_line_one: Address line 1
|
183
213
|
address_line_two: Address line 2 (optional)
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.accept",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "File uploaded is wrong type",
|
5
|
-
"value": "\"%{control}\" was not uploaded successfully as it is the wrong type"
|
5
|
+
"value:en": "\"%{control}\" was not uploaded successfully as it is the wrong type",
|
6
|
+
"value:cy": "(cy) \"%{control}\" was not uploaded successfully as it is the wrong type"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.catch_all",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "A generic validation error not handled by a more concrete validator",
|
5
|
-
"value": "We could not save your answer, please try again"
|
5
|
+
"value:en": "We could not save your answer, please try again",
|
6
|
+
"value:cy": "(cy) We could not save your answer, please try again"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.date",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (date) is not a valid date",
|
5
|
-
"value": "Enter a valid date for \"%{control}\""
|
5
|
+
"value:en": "Enter a valid date for \"%{control}\"",
|
6
|
+
"value:cy": "(cy) Enter a valid date for \"%{control}\""
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.date_after",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (date) is earlier than allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{date_after} or later"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{date_after} or later",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{date_after} or later"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.date_before",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (date) is later than allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{date_before} or earlier"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{date_before} or earlier",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{date_before} or earlier"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.email",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (email) is not a valid email",
|
5
|
-
"value": "Enter an email address in the correct format, like name@example.com"
|
5
|
+
"value:en": "Enter an email address in the correct format, like name@example.com",
|
6
|
+
"value:cy": "(cy) Enter an email address in the correct format, like name@example.com"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.max_files",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (number) is larger than the maximum allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{maximum} or lower"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{maximum} or lower",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{maximum} or lower"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.max_length",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (string) is too long",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{max_length} characters or fewer"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{max_length} characters or fewer",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{max_length} characters or fewer"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.max_size",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "File is too large",
|
5
|
-
"value": "The selected file must be smaller than %{max_size}MB."
|
5
|
+
"value:en": "The selected file must be smaller than %{max_size}MB.",
|
6
|
+
"value:cy": "(cy) The selected file must be smaller than %{max_size}MB."
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.max_word",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (number) is higher than the maximum number of words allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{max_word} words or fewer"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{max_word} words or fewer",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{max_word} words or fewer"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.maximum",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (number) is larger than the maximum allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{maximum} or lower"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{maximum} or lower",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{maximum} or lower"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.min_length",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (string) is too short",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{min_length} characters or more"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{min_length} characters or more",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{min_length} characters or more"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.min_word",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (number) is lower than the minimum number of words allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{min_word} words or more"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{min_word} words or more",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{min_word} words or more"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.minimum",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input (number) is lower than the minimum allowed",
|
5
|
-
"value": "Your answer for \"%{control}\" must be %{minimum} or higher"
|
5
|
+
"value:en": "Your answer for \"%{control}\" must be %{minimum} or higher",
|
6
|
+
"value:cy": "(cy) Your answer for \"%{control}\" must be %{minimum} or higher"
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.multiupload",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Cannot upload files with duplicate filenames",
|
5
|
-
"value": "The selected file cannot have the same name as a file you have already selected. Please check you aren't uploading the same file again."
|
5
|
+
"value:en": "The selected file cannot have the same name as a file you have already selected. Please check you aren't uploading the same file again.",
|
6
|
+
"value:cy": "(cy) The selected file cannot have the same name as a file you have already selected. Please check you aren't uploading the same file again."
|
6
7
|
}
|
@@ -2,5 +2,6 @@
|
|
2
2
|
"_id": "error.postcode",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Postcode format is not valid",
|
5
|
-
"value": "Enter a valid UK postcode for \"%{control}\""
|
5
|
+
"value:en": "Enter a valid UK postcode for \"%{control}\"",
|
6
|
+
"value:cy": "(cy) Enter a valid UK postcode for \"%{control}\""
|
6
7
|
}
|
@@ -2,6 +2,6 @@
|
|
2
2
|
"_id": "error.required",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "Input is required",
|
5
|
-
"value": "Enter an answer for \"%{control}\"",
|
6
|
-
"value:cy": "Rhowch ateb i \"{control}\""
|
5
|
+
"value:en": "Enter an answer for \"%{control}\"",
|
6
|
+
"value:cy": "Rhowch ateb i \"%{control}\""
|
7
7
|
}
|
@@ -2,6 +2,6 @@
|
|
2
2
|
"_id": "error.virus_scan",
|
3
3
|
"_type": "string.error",
|
4
4
|
"description": "File uploaded contains virus",
|
5
|
-
"value": "\"%{control}\" was not uploaded successfully because it contains a virus"
|
5
|
+
"value:en": "\"%{control}\" was not uploaded successfully because it contains a virus",
|
6
|
+
"value:cy": "(cy) \"%{control}\" was not uploaded successfully because it contains a virus"
|
6
7
|
}
|
7
|
-
|
@@ -2,6 +2,13 @@
|
|
2
2
|
"$id": "http://gov.uk/schema/v1.0.0/definition/component",
|
3
3
|
"_name": "definition.component",
|
4
4
|
"title": "Component definition",
|
5
|
+
"properties": {
|
6
|
+
"order": {
|
7
|
+
"title": "Order",
|
8
|
+
"description": "Used to order components within a page",
|
9
|
+
"type": "integer"
|
10
|
+
}
|
11
|
+
},
|
5
12
|
"allOf": [
|
6
13
|
{
|
7
14
|
"$ref": "definition.block"
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: metadata_presenter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.3.
|
4
|
+
version: 3.3.12
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- MoJ Forms
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-
|
11
|
+
date: 2024-02-07 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: govuk_design_system_formbuilder
|
@@ -477,6 +477,7 @@ files:
|
|
477
477
|
- config/initializers/schemas.rb
|
478
478
|
- config/initializers/supported_analytics.rb
|
479
479
|
- config/initializers/supported_components.rb
|
480
|
+
- config/locales/cy.yml
|
480
481
|
- config/locales/en.yml
|
481
482
|
- config/routes.rb
|
482
483
|
- default_metadata/component/address.json
|