diff --git a/app/components/admin/settings/table_component.html.erb b/app/components/admin/settings/table_component.html.erb index c261893b8..cf486f499 100644 --- a/app/components/admin/settings/table_component.html.erb +++ b/app/components/admin/settings/table_component.html.erb @@ -19,11 +19,7 @@ <% if setting.content_type? %> <%= render Admin::Settings::ContentTypesFormComponent.new(setting) %> <% else %> - <% if defined?(tab) %> - <%= render "admin/settings/settings_form", setting: setting, tab: tab %> - <% else %> - <%= render "admin/settings/settings_form", setting: setting %> - <% end %> + <%= render Admin::Settings::TextFormComponent.new(setting, tab: tab) %> <% end %> diff --git a/app/views/admin/settings/_settings_form.html.erb b/app/components/admin/settings/text_form_component.html.erb similarity index 96% rename from app/views/admin/settings/_settings_form.html.erb rename to app/components/admin/settings/text_form_component.html.erb index 464713004..70b11d291 100644 --- a/app/views/admin/settings/_settings_form.html.erb +++ b/app/components/admin/settings/text_form_component.html.erb @@ -1,5 +1,5 @@ <%= form_for([:admin, setting]) do |f| %> - <%= f.hidden_field :tab, id: dom_id(setting, :tab), value: tab if defined?(tab) %> + <%= f.hidden_field :tab, id: dom_id(setting, :tab), value: tab if tab %>
<%= f.text_area :value, label: false, diff --git a/app/components/admin/settings/text_form_component.rb b/app/components/admin/settings/text_form_component.rb new file mode 100644 index 000000000..9234c0fb7 --- /dev/null +++ b/app/components/admin/settings/text_form_component.rb @@ -0,0 +1,9 @@ +class Admin::Settings::TextFormComponent < ApplicationComponent + attr_reader :setting, :tab + delegate :dom_id, to: :helpers + + def initialize(setting, tab: nil) + @setting = setting + @tab = tab + end +end