From 0abc82d5206f5a0223633bfe36ae5734186071c0 Mon Sep 17 00:00:00 2001 From: taitus Date: Wed, 11 Nov 2020 12:18:59 +0100 Subject: [PATCH] Add new sdg settings on sdg-tab --- app/controllers/admin/settings_controller.rb | 1 + app/views/admin/settings/_filter_subnav.html.erb | 2 ++ .../settings/_sdg_configuration_tab.html.erb | 3 +++ app/views/admin/settings/index.html.erb | 4 ++++ config/locales/en/settings.yml | 12 ++++++++++++ config/locales/es/settings.yml | 12 ++++++++++++ spec/system/admin/settings_spec.rb | 15 +++++++++++++++ 7 files changed, 49 insertions(+) create mode 100644 app/views/admin/settings/_sdg_configuration_tab.html.erb diff --git a/app/controllers/admin/settings_controller.rb b/app/controllers/admin/settings_controller.rb index fc9599131..cdc2278ba 100644 --- a/app/controllers/admin/settings_controller.rb +++ b/app/controllers/admin/settings_controller.rb @@ -10,6 +10,7 @@ class Admin::SettingsController < Admin::BaseController @remote_census_request_settings = all_settings["remote_census.request"] @remote_census_response_settings = all_settings["remote_census.response"] @uploads_settings = all_settings["uploads"] + @sdg_settings = all_settings["sdg"] end def update diff --git a/app/views/admin/settings/_filter_subnav.html.erb b/app/views/admin/settings/_filter_subnav.html.erb index b95aad399..10b1dd44f 100644 --- a/app/views/admin/settings/_filter_subnav.html.erb +++ b/app/views/admin/settings/_filter_subnav.html.erb @@ -48,7 +48,9 @@
  • + <%= link_to "#tab-sdg-configuration" do %> <%= t("admin.settings.index.sdg.title") %> + <% end %>
  • diff --git a/app/views/admin/settings/_sdg_configuration_tab.html.erb b/app/views/admin/settings/_sdg_configuration_tab.html.erb new file mode 100644 index 000000000..0477ed7ef --- /dev/null +++ b/app/views/admin/settings/_sdg_configuration_tab.html.erb @@ -0,0 +1,3 @@ +

    <%= t("admin.settings.index.sdg.title") %>

    + +<%= render "featured_settings_table", features: @sdg_settings, tab: "#tab-sdg-configuration" %> diff --git a/app/views/admin/settings/index.html.erb b/app/views/admin/settings/index.html.erb index 9e417dc0e..04d6afd93 100644 --- a/app/views/admin/settings/index.html.erb +++ b/app/views/admin/settings/index.html.erb @@ -29,4 +29,8 @@
    <%= render "remote_census_configuration_tab" %>
    + +
    + <%= render "sdg_configuration_tab" %> +
    diff --git a/config/locales/en/settings.yml b/config/locales/en/settings.yml index 7c40b463e..804215d6d 100644 --- a/config/locales/en/settings.yml +++ b/config/locales/en/settings.yml @@ -207,3 +207,15 @@ en: max_size_description: "Maximum size allowed for an uploaded document (in Megabytes/MB)" content_types: "Accepted content types for documents" content_types_description: "Select all the content types allowed for uploaded documents" + sdg: + process: + debates: Related SDG in debates + debates_description: Allow debates to be linked to Sustainable Development Goals + proposals: Related SDG in proposals + proposals_description: Allow proposals to be linked to Sustainable Development Goals + polls: Related SDG in polls + polls_description: Allow polls to be linked to Sustainable Development Goals + budgets: Related SDG in partipatory budgets + budgets_description: Allow participatory budgets to be linked to Sustainable Development Goals + legislation: Related SDG in collaborative legislation + legislation_description: Allow collaborative legislation to be linked to Sustainable Development Goals diff --git a/config/locales/es/settings.yml b/config/locales/es/settings.yml index ed1b4ce38..e4cf5d532 100644 --- a/config/locales/es/settings.yml +++ b/config/locales/es/settings.yml @@ -207,3 +207,15 @@ es: max_size_description: "Tamaño máximo permitido al subir un documento (en Megabytes/MB)" content_types: "Tipos de documentos permitidos" content_types_description: "Selecciona todos los tipos permitidos para los documentos subidos" + sdg: + process: + debates: Alineamiento ODS en debates + debates_description: Permitir alineamiento de los Objetivos de Desarrollo Sostenible en debates + proposals: Alineamiento ODS en propuestas + proposals_description: Permitir alineamiento de los Objetivos de Desarrollo Sostenible en propuestas + polls: Alineamiento ODS en votaciones + polls_description: Permitir alineamiento de los Objetivos de Desarrollo Sostenible en votaciones + budgets: Alineamiento ODS en presupuestos participativos + budgets_description: Permitir alineamiento de los Objetivos de Desarrollo Sostenible en presupuestos participativos + legislation: Alineamiento ODS en legislación colaborativa + legislation_description: Permitir alineamiento de los Objetivos de Desarrollo Sostenible en legislación colaborativa diff --git a/spec/system/admin/settings_spec.rb b/spec/system/admin/settings_spec.rb index 50af58110..f51dc86a2 100644 --- a/spec/system/admin/settings_spec.rb +++ b/spec/system/admin/settings_spec.rb @@ -265,6 +265,21 @@ describe "Admin settings", :admin do expect(page).to have_current_path(admin_settings_path) expect(page).to have_css("div#tab-feature-flags.is-active") end + + scenario "On #tab-sdg-configuration", :js do + Setting.create!(key: "sdg.whatever") + login_as(create(:administrator).user) + + visit admin_settings_path + click_link "SDG configuration" + + accept_alert do + within("tr", text: "Whatever") { click_button "Enable" } + end + + expect(page).to have_current_path(admin_settings_path) + expect(page).to have_css("h2", exact_text: "SDG configuration") + end end describe "Skip verification" do