diff --git a/app/views/admin/settings/_settings_form.html.erb b/app/views/admin/settings/_settings_form.html.erb index 1b8bc2027..33e9ab8f1 100644 --- a/app/views/admin/settings/_settings_form.html.erb +++ b/app/views/admin/settings/_settings_form.html.erb @@ -1,7 +1,11 @@ <%= form_for([:admin, setting]) do |f| %> <%= f.hidden_field :tab, id: dom_id(setting, :tab), value: tab if defined?(tab) %>
- <%= f.text_area :value, label: false, id: dom_id(setting, :value) %> + <%= f.text_area :value, + label: false, + id: dom_id(setting, :value), + "aria-label": strip_tags(t("settings.#{setting.key}")), + "aria-describedby": dom_id(setting, :description) %>
<%= f.submit(t("admin.settings.index.update_setting"), class: "button hollow expanded") %> diff --git a/app/views/admin/settings/_settings_table.html.erb b/app/views/admin/settings/_settings_table.html.erb index d46c5237d..b3015525f 100644 --- a/app/views/admin/settings/_settings_table.html.erb +++ b/app/views/admin/settings/_settings_table.html.erb @@ -11,7 +11,7 @@ <%= t("settings.#{setting.key}") %>
- + <%= t("settings.#{setting.key}_description", default: t("admin.settings.no_description")) %> diff --git a/spec/system/admin/settings_spec.rb b/spec/system/admin/settings_spec.rb index 74c90a760..8160d4043 100644 --- a/spec/system/admin/settings_spec.rb +++ b/spec/system/admin/settings_spec.rb @@ -14,12 +14,12 @@ describe "Admin settings", :admin do end scenario "Update" do - setting = create(:setting, key: "super.users.first") + create(:setting, key: "super.users.first") visit admin_settings_path - within("#edit_setting_#{setting.id}") do - fill_in "value_setting_#{setting.id}", with: "Super Users of level 1" + within "tr", text: "First" do + fill_in "First", with: "Super Users of level 1" click_button "Update" end @@ -173,13 +173,13 @@ describe "Admin settings", :admin do end scenario "On #tab-remote-census-configuration" do - remote_census_setting = create(:setting, key: "remote_census.general.whatever") + create(:setting, key: "remote_census.general.whatever") visit admin_settings_path find("#remote-census-tab").click - within("#edit_setting_#{remote_census_setting.id}") do - fill_in "value_setting_#{remote_census_setting.id}", with: "New value" + within "tr", text: "Whatever" do + fill_in "Whatever", with: "New value" click_button "Update" end @@ -189,13 +189,13 @@ describe "Admin settings", :admin do end scenario "On #tab-configuration" do - configuration_setting = Setting.create!(key: "whatever") + Setting.create!(key: "whatever") visit admin_settings_path find("#tab-configuration").click - within("#edit_setting_#{configuration_setting.id}") do - fill_in "value_setting_#{configuration_setting.id}", with: "New value" + within "tr", text: "Whatever" do + fill_in "Whatever", with: "New value" click_button "Update" end @@ -209,13 +209,13 @@ describe "Admin settings", :admin do end scenario "On #tab-map-configuration" do - map_setting = Setting.create!(key: "map.whatever") + Setting.create!(key: "map.whatever") visit admin_settings_path click_link "Map configuration" - within("#edit_setting_#{map_setting.id}") do - fill_in "value_setting_#{map_setting.id}", with: "New value" + within "tr", text: "Whatever" do + fill_in "Whatever", with: "New value" click_button "Update" end @@ -225,13 +225,13 @@ describe "Admin settings", :admin do end scenario "On #tab-proposals" do - proposal_dashboard_setting = Setting.create!(key: "proposals.whatever") + Setting.create!(key: "proposals.whatever") visit admin_settings_path find("#proposals-tab").click - within("#edit_setting_#{proposal_dashboard_setting.id}") do - fill_in "value_setting_#{proposal_dashboard_setting.id}", with: "New value" + within "tr", text: "Whatever" do + fill_in "Whatever", with: "New value" click_button "Update" end