Class: SortableElementForNestedSetHelper::OptsGenerator

Inherits:
Object
  • Object
show all
Defined in:
lib/sortable_element_for_nested_set_helper.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(element_id, target_param_name) ⇒ OptsGenerator

Returns a new instance of OptsGenerator.



6
7
8
9
10
# File 'lib/sortable_element_for_nested_set_helper.rb', line 6

def initialize(element_id, target_param_name)
  raise "Arg error" if element_id.blank? || target_param_name.blank?
  @element_id = element_id
  @param_name = target_param_name
end

Instance Attribute Details

#element_idObject (readonly)

Returns the value of attribute element_id.



4
5
6
# File 'lib/sortable_element_for_nested_set_helper.rb', line 4

def element_id
  @element_id
end

#param_nameObject (readonly)

Returns the value of attribute param_name.



4
5
6
# File 'lib/sortable_element_for_nested_set_helper.rb', line 4

def param_name
  @param_name
end

Instance Method Details

#on_change_valueObject



16
17
18
# File 'lib/sortable_element_for_nested_set_helper.rb', line 16

def on_change_value 
  "function(e) { $('#{@element_id}').moved_element = e.id; }"
end

#optsObject



20
21
22
# File 'lib/sortable_element_for_nested_set_helper.rb', line 20

def opts
  {:with => with_value, :onChange => on_change_value}
end

#with_valueObject



12
13
14
# File 'lib/sortable_element_for_nested_set_helper.rb', line 12

def with_value
  "'#{@param_name}='+ $(#{@element_id.to_json}).moved_element.split('_').last() + '&' + Sortable.serialize(#{@element_id.to_json})"
end