diff --git a/.rubocop_manual_todo.yml b/.rubocop_manual_todo.yml
index 5fb312120a..5a128f1824 100644
--- a/.rubocop_manual_todo.yml
+++ b/.rubocop_manual_todo.yml
@@ -389,6 +389,7 @@ Metrics/AbcSize:
- app/helpers/order_cycles_helper.rb
- app/helpers/spree/admin/navigation_helper.rb
- app/helpers/spree/admin/base_helper.rb
+ - app/helpers/spree/admin/zones_helper.rb
- app/helpers/spree/orders_helper.rb
- app/jobs/subscription_placement_job.rb
- app/mailers/producer_mailer.rb
diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml
index 99dba94b16..bc0d0d90c4 100644
--- a/.rubocop_todo.yml
+++ b/.rubocop_todo.yml
@@ -332,6 +332,7 @@ Rails/OutputSafety:
- 'app/controllers/spree/admin/reports_controller.rb'
- 'app/helpers/angular_form_helper.rb'
- 'app/helpers/spree/admin/base_helper.rb'
+ - 'app/helpers/spree/admin/zones_helper.rb'
- 'app/helpers/spree/reports_helper.rb'
- 'app/helpers/spree/admin/navigation_helper.rb'
- 'app/serializers/api/product_serializer.rb'
diff --git a/app/helpers/spree/admin/base_helper.rb b/app/helpers/spree/admin/base_helper.rb
index 56412c1611..6ffdc3dc2b 100644
--- a/app/helpers/spree/admin/base_helper.rb
+++ b/app/helpers/spree/admin/base_helper.rb
@@ -25,41 +25,6 @@ module Spree
end
end
- # This method demonstrates the use of the :child_index option to render a
- # form partial for, for instance, client side addition of new nested
- # records.
- #
- # This specific example creates a link which uses javascript to add a new
- # form partial to the DOM.
- #
- # <%= form_for @project do |project_form| %>
- #
- # <%= project_form.fields_for :tasks do |task_form| %>
- # <%= render partial: 'task', locals: { f: task_form } %>
- # <% end %>
- #
- # <% end %>
- def generate_html(form_builder, method, options = {})
- options[:object] ||= form_builder.object.class.reflect_on_association(method).klass.new
- options[:partial] ||= method.to_s.singularize
- options[:form_builder_local] ||= :f
-
- form_builder.fields_for(method, options[:object], child_index: 'NEW_RECORD') do |f|
- render(partial: options[:partial], locals: { options[:form_builder_local] => f })
- end
- end
-
- def generate_template(form_builder, method, options = {})
- escape_javascript generate_html(form_builder, method, options)
- end
-
- def remove_nested(fields)
- out = ''
- out << fields.hidden_field(:_destroy) unless fields.object.new_record?
- out << (link_to icon('icon-remove'), "#", class: 'remove')
- out.html_safe
- end
-
def preference_field_tag(name, value, options)
case options[:type]
when :integer
diff --git a/app/helpers/spree/admin/zones_helper.rb b/app/helpers/spree/admin/zones_helper.rb
new file mode 100644
index 0000000000..fa8044e953
--- /dev/null
+++ b/app/helpers/spree/admin/zones_helper.rb
@@ -0,0 +1,36 @@
+module Spree
+ module Admin
+ module ZonesHelper
+ # This method creates a link which uses javascript to add a new
+ # form partial to the DOM.
+ #
+ # <%= form_for @project do |project_form| %>
+ #
+ # <%= project_form.fields_for :tasks do |task_form| %>
+ # <%= render partial: 'task', locals: { f: task_form } %>
+ # <% end %>
+ #
+ # <% end %>
+ def generate_html(form_builder, method, options = {})
+ options[:object] ||= form_builder.object.class.reflect_on_association(method).klass.new
+ options[:partial] ||= method.to_s.singularize
+ options[:form_builder_local] ||= :f
+
+ form_builder.fields_for(method, options[:object], child_index: 'NEW_RECORD') do |f|
+ render(partial: options[:partial], locals: { options[:form_builder_local] => f })
+ end
+ end
+
+ def generate_template(form_builder, method, options = {})
+ escape_javascript generate_html(form_builder, method, options)
+ end
+
+ def remove_nested(fields)
+ out = ''
+ out << fields.hidden_field(:_destroy) unless fields.object.new_record?
+ out << (link_to icon('icon-remove'), "#", class: 'remove')
+ out.html_safe
+ end
+ end
+ end
+end