From 119c4202fe15ff2d3643df8ebecd10b720ddf29a Mon Sep 17 00:00:00 2001 From: taitus Date: Tue, 10 Dec 2024 17:46:07 +0100 Subject: [PATCH] Allow accessing to management modal from cookies consent banner --- .../stylesheets/layout/cookies_consent_banner.scss | 4 ++++ .../layout/cookies_consent/banner_component.html.erb | 1 + app/views/layouts/application.html.erb | 1 + config/locales/en/general.yml | 1 + config/locales/es/general.yml | 1 + .../layout/cookies_consent/banner_component_spec.rb | 1 + spec/system/cookies_consent_spec.rb | 12 ++++++++++++ 7 files changed, 21 insertions(+) diff --git a/app/assets/stylesheets/layout/cookies_consent_banner.scss b/app/assets/stylesheets/layout/cookies_consent_banner.scss index 56fca5fc7..e0b59dbd3 100644 --- a/app/assets/stylesheets/layout/cookies_consent_banner.scss +++ b/app/assets/stylesheets/layout/cookies_consent_banner.scss @@ -18,5 +18,9 @@ @include regular-button; margin-bottom: 0; } + + &.manage-cookies { + @include hollow-button; + } } } diff --git a/app/components/layout/cookies_consent/banner_component.html.erb b/app/components/layout/cookies_consent/banner_component.html.erb index 742dfe7d6..ef6432b58 100644 --- a/app/components/layout/cookies_consent/banner_component.html.erb +++ b/app/components/layout/cookies_consent/banner_component.html.erb @@ -6,4 +6,5 @@ <% end %> + diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 0e1ee9958..fdb5289ee 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -29,5 +29,6 @@ <%= render Layout::FooterComponent.new %> <%= render Layout::CookiesConsent::BannerComponent.new %> + <%= render Layout::CookiesConsent::ManagementComponent.new %> diff --git a/config/locales/en/general.yml b/config/locales/en/general.yml index bb6b8be9f..67dc81ae0 100644 --- a/config/locales/en/general.yml +++ b/config/locales/en/general.yml @@ -937,6 +937,7 @@ en: accept_essential_cookies: "Accept essential cookies" message: "Cookies help us deliver our services. By using our services, you agree to our use of cookies." more_info_link: "More information about cookies" + management: "Manage cookies" title: "Cookies policy" cookies_management: title: Cookies management diff --git a/config/locales/es/general.yml b/config/locales/es/general.yml index 284a0a086..e1a7969e9 100644 --- a/config/locales/es/general.yml +++ b/config/locales/es/general.yml @@ -937,6 +937,7 @@ es: accept_essential_cookies: "Aceptar cookies esenciales" message: "Las cookies nos ayudan a ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso de cookies." more_info_link: "Más información sobre cookies" + management: "Ajustes" title: "Política de cookies" cookies_management: title: Configuración de cookies diff --git a/spec/components/layout/cookies_consent/banner_component_spec.rb b/spec/components/layout/cookies_consent/banner_component_spec.rb index aa05bf2ab..60359d85b 100644 --- a/spec/components/layout/cookies_consent/banner_component_spec.rb +++ b/spec/components/layout/cookies_consent/banner_component_spec.rb @@ -28,6 +28,7 @@ describe Layout::CookiesConsent::BannerComponent do expect(page).to have_css "h2", text: "Cookies policy" expect(page).to have_link "More information about cookies", href: "/cookies_policy" expect(page).to have_button "Accept essential cookies" + expect(page).to have_button "Manage cookies" end it "does not render a link when the setting `cookies_consent.more_info_link` is not defined" do diff --git a/spec/system/cookies_consent_spec.rb b/spec/system/cookies_consent_spec.rb index 8a1af460b..964f4e2fe 100644 --- a/spec/system/cookies_consent_spec.rb +++ b/spec/system/cookies_consent_spec.rb @@ -21,4 +21,16 @@ describe "Cookies consent" do expect(page).not_to have_content "Cookies policy" end end + + context "Management modal" do + scenario "Allow users access to cookies management modal" do + visit root_path + + within ".cookies-consent-banner" do + click_button "Manage cookies" + end + + expect(page).to have_css "h2", text: "Cookies management" + end + end end