Class: Basepack::Forms::BulkEdit

Inherits:
Edit
  • Object
show all
Defined in:
lib/basepack/forms/bulk_edit.rb

Instance Attribute Summary collapse

Attributes inherited from Edit

#builder_default_options, #simple_form

Attributes inherited from Base

#association_chain, #factory, #groups, #nested_in, #partial, #resource, #resource_class, #view

Instance Method Summary collapse

Methods inherited from Edit

#builder, data_picker_options, #textfield_options, #with_simple_form

Methods inherited from Base

#chain, #chain_with_class, #configure, #content_for_field, #default_group, #field, #field_names, #fields, #fields_hash, #group, #has_field?, #hide_field, #hide_fields, #inspect, #inverse_of_nested_in?, #label, #label_plural, #new_form, #new_record?, #permit_params, #render_field, #sanitize_params, #show_fields, #show_only_fields, #translate, #visible_field, #visible_fields, #visible_groups, #with_resource

Constructor Details

#initialize(factory, chain, options = {}) ⇒ BulkEdit

Returns a new instance of BulkEdit.



6
7
8
9
# File 'lib/basepack/forms/bulk_edit.rb', line 6

def initialize(factory, chain, options = {})
  super(factory, chain, options)
  @query_form = options[:query_form]
end

Instance Attribute Details

#query_formObject

Returns the value of attribute query_form.



4
5
6
# File 'lib/basepack/forms/bulk_edit.rb', line 4

def query_form
  @query_form
end

Instance Method Details

#build_from_factoryObject



20
21
22
# File 'lib/basepack/forms/bulk_edit.rb', line 20

def build_from_factory
  factory.build_form(self)
end

#collectionObject



11
12
13
# File 'lib/basepack/forms/bulk_edit.rb', line 11

def collection
  @query_form ? @query_form.collection_without_pagination : []
end

#default_partialObject



24
25
26
# File 'lib/basepack/forms/bulk_edit.rb', line 24

def default_partial
  'forms/bulk_edit'
end

#pathObject



15
16
17
# File 'lib/basepack/forms/bulk_edit.rb', line 15

def path
  @path ||= view.polymorphic_path([:bulk_update, chain].flatten, query_form.params)
end

#render_field!(field) ⇒ Object



28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/basepack/forms/bulk_edit.rb', line 28

def render_field!(field)
  if field.bulk_editable? and !field.read_only? and field.view_helper != :hidden_field
    field.required = false
    if field.bulk_edit_partial.present? and view.lookup_context.template_exists?(field.bulk_edit_partial, '', true)
      #rendering input field with bulk_edit extensions
      view.render field.bulk_edit_partial, form: self, field: field
    else
      #rendering common input field
      view.render field.partial, form: self, field: field
    end
  end
end