Class: Sunrise::Config::NestedField

Inherits:
Field
  • Object
show all
Defined in:
lib/sunrise/config/nested_field.rb

Instance Attribute Summary

Attributes inherited from Field

#block, #if_condition, #unless_condition

Attributes inherited from Base

#abstract_model, #name, #parent

Instance Method Summary collapse

Methods inherited from Field

#association?, #block_given?, #dom_id, #html_options, #human_name, #initialize, #input_options, #label?, #visible?

Methods included from Utils::EvalHelpers

#evaluate_method

Methods inherited from Base

#initialize, register_class_option, #register_instance_option, register_instance_option

Constructor Details

This class inherits a constructor from Sunrise::Config::Field

Instance Method Details

#field(name = :custom, options = {}, &block) ⇒ Object

Defines a configuration for a field.



14
15
16
17
# File 'lib/sunrise/config/nested_field.rb', line 14

def field(name = :custom, options = {}, &block)
  options = { name: name.to_sym }.merge(options)
  fields << Field.new(abstract_model, self, options, &block)
end

#fields ⇒ Object

Array for store all defined fields



9
10
11
# File 'lib/sunrise/config/nested_field.rb', line 9

def fields
  @fields ||= []
end

#multiply? ⇒ Boolean

Returns:

  • (Boolean)


23
24
25
# File 'lib/sunrise/config/nested_field.rb', line 23

def multiply?
  @config_options[:multiply] != false
end

#nested? ⇒ Boolean

Returns:

  • (Boolean)


19
20
21
# File 'lib/sunrise/config/nested_field.rb', line 19

def nested?
  true
end

#sort? ⇒ Boolean

Returns:

  • (Boolean)


27
28
29
# File 'lib/sunrise/config/nested_field.rb', line 27

def sort?
  @config_options[:sort] != false
end

#sort_column ⇒ Object



35
36
37
# File 'lib/sunrise/config/nested_field.rb', line 35

def sort_column
  sort_options[:column]
end

#sort_hidden_field? ⇒ Boolean

Returns:

  • (Boolean)


31
32
33
# File 'lib/sunrise/config/nested_field.rb', line 31

def sort_hidden_field?
  sort? && sort_options[:hidden_field]
end

#sort_options ⇒ Object



39
40
41
# File 'lib/sunrise/config/nested_field.rb', line 39

def sort_options
  @sort_options ||= build_sort_options
end