Class: Adminsite::MultiSelectBoxInput
- Inherits:
-
Formtastic::Inputs::SelectInput
- Object
- Formtastic::Inputs::SelectInput
- Adminsite::MultiSelectBoxInput
- Includes:
- ActionView::Helpers::FormOptionsHelper, ActionView::Helpers::FormTagHelper
- Defined in:
- app/inputs/adminsite/multi_select_box_input.rb
Instance Method Summary collapse
Instance Method Details
#collection_id ⇒ Object
30 31 32 |
# File 'app/inputs/adminsite/multi_select_box_input.rb', line 30 def collection_id @collection_id ||= "#{object_name}_collection" end |
#multiple? ⇒ Boolean
34 35 36 |
# File 'app/inputs/adminsite/multi_select_box_input.rb', line 34 def multiple? true end |
#operators_html ⇒ Object
20 21 22 23 24 25 26 27 28 |
# File 'app/inputs/adminsite/multi_select_box_input.rb', line 20 def operators_html raw('<div class="operators"><div class="data-ops">') << ('Add', type: 'button', onClick: "Adminsite.Inputs.addToTarget('##{wrapper_dom_id}'); false;" ) << ('Remove', type: 'button', onClick: "Adminsite.Inputs.removeFromTarget('##{wrapper_dom_id}'); false;" ) << raw('</div><div class="order-ops">') << ('⇧'.html_safe, type: 'button', onClick: "Adminsite.Inputs.moveUp('##{dom_id}'); false;" ) << ('⇩'.html_safe, type: 'button', onClick: "Adminsite.Inputs.moveDown('##{dom_id}'); false;" ) << raw('</div></div>') end |
#to_html ⇒ Object
4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'app/inputs/adminsite/multi_select_box_input.rb', line 4 def to_html # super puts "this is my own version of Adminsite::MultiSelectBoxInput" diff_collection = collection.reject{|k,v| builder.object.send(input_name).include?(k) } input_wrapping do label_html << raw("<div><span>Available #{(localized_label || humanized_method_name)}:</span><br/>") << select_tag(:collection, (diff_collection), .merge(:class => 'source', :name=> "#{object_name}[collection][]", :id=> collection_id)) << raw('</div>') << operators_html << raw("<div><span>Selected #{label_text}:</span><br/>") << builder.select(input_name, builder.object.send(input_name), , .merge(:class => 'target') ) << raw('</div>') end.html_safe end |