diff --git a/app/controllers/admin/settings_controller.rb b/app/controllers/admin/settings_controller.rb index f24b6c63e..d21f6de23 100644 --- a/app/controllers/admin/settings_controller.rb +++ b/app/controllers/admin/settings_controller.rb @@ -14,6 +14,9 @@ class Admin::SettingsController < Admin::BaseController @participation_processes_settings = all_settings["process"] @map_configuration_settings = all_settings["map"] @proposals_settings = all_settings["proposals"] + @remote_census_general_settings = all_settings["remote_census.general"] + @remote_census_request_settings = all_settings["remote_census.request"] + @remote_census_response_settings = all_settings["remote_census.response"] @uploads_settings = all_settings["uploads"] end diff --git a/app/models/setting.rb b/app/models/setting.rb index ea773ecbb..61a6ebf30 100644 --- a/app/models/setting.rb +++ b/app/models/setting.rb @@ -10,6 +10,8 @@ class Setting < ApplicationRecord def type if %w[feature process proposals map html homepage uploads].include? prefix prefix + elsif %w[remote_census].include? prefix + key.rpartition(".").first else "configuration" end diff --git a/app/views/admin/settings/_remote_census_configuration_tab.html.erb b/app/views/admin/settings/_remote_census_configuration_tab.html.erb new file mode 100644 index 000000000..f16af9d80 --- /dev/null +++ b/app/views/admin/settings/_remote_census_configuration_tab.html.erb @@ -0,0 +1,5 @@ +

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

+ + <%= render "settings_table", settings: @remote_census_general_settings %> + <%= render "settings_table", settings: @remote_census_request_settings %> + <%= render "settings_table", settings: @remote_census_response_settings %> diff --git a/app/views/admin/settings/index.html.erb b/app/views/admin/settings/index.html.erb index a000cffc5..56d727887 100644 --- a/app/views/admin/settings/index.html.erb +++ b/app/views/admin/settings/index.html.erb @@ -25,4 +25,8 @@
<%= render "proposals_dashboard" %>
+ +
+ <%= render "remote_census_configuration_tab" %> +
diff --git a/spec/models/setting_spec.rb b/spec/models/setting_spec.rb index fde1615cd..19d7b5374 100644 --- a/spec/models/setting_spec.rb +++ b/spec/models/setting_spec.rb @@ -53,6 +53,21 @@ describe Setting do expect(homepage_setting.type).to eq "homepage" end + it "returns the key prefix for 'remote_census.general' settings" do + remote_census_general_setting = Setting.create(key: "remote_census.general.whatever") + expect(remote_census_general_setting.type).to eq "remote_census.general" + end + + it "returns the key prefix for 'remote_census_request' settings" do + remote_census_request_setting = Setting.create(key: "remote_census.request.whatever") + expect(remote_census_request_setting.type).to eq "remote_census.request" + end + + it "returns the key prefix for 'remote_census_response' settings" do + remote_census_response_setting = Setting.create(key: "remote_census.response.whatever") + expect(remote_census_response_setting.type).to eq "remote_census.response" + end + it "returns 'configuration' for the rest of the settings" do configuration_setting = Setting.create(key: "whatever") expect(configuration_setting.type).to eq "configuration"