mirror of
https://github.com/openfoodfoundation/openfoodnetwork
synced 2026-02-27 01:43:22 +00:00
Extract some methods from base_helper to zones_helper to make it explicit they are only used in the zones admin pages
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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'
|
||||
|
||||
@@ -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| %>
|
||||
# <div id="tasks">
|
||||
# <%= project_form.fields_for :tasks do |task_form| %>
|
||||
# <%= render partial: 'task', locals: { f: task_form } %>
|
||||
# <% end %>
|
||||
# </div>
|
||||
# <% 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
|
||||
|
||||
36
app/helpers/spree/admin/zones_helper.rb
Normal file
36
app/helpers/spree/admin/zones_helper.rb
Normal file
@@ -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| %>
|
||||
# <div id="tasks">
|
||||
# <%= project_form.fields_for :tasks do |task_form| %>
|
||||
# <%= render partial: 'task', locals: { f: task_form } %>
|
||||
# <% end %>
|
||||
# </div>
|
||||
# <% 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
|
||||
Reference in New Issue
Block a user