Sha256: f992d03194e1a922becf15dcfb16e4ad1bf2e2d05960ad8b141936d71ade9249

Contents?: true

Size: 1.46 KB

Versions: 77

Compression:

Stored size: 1.46 KB

Contents

InlineForms::SPECIAL_COLUMN_TYPES[:check_list]=:no_migration

# checklist
def check_list_show(object, attribute)
  out = '<ul class="checklist">'
  out << link_to_inline_edit(object, attribute) if object.send(attribute).empty?
  object.send(attribute).sort.each do | item |
    out << '<li>'
    out << link_to_inline_edit(object, attribute, item._presentation )
    out << '</li>'
  end
  out <<  '</ul>'
  out.html_safe
end

def check_list_edit(object, attribute)
  object.send(attribute).build  if object.send(attribute).empty?
  if cancan_enabled?
    values = object.send(attribute).first.class.name.constantize.accessible_by(current_ability).order(attribute.to_s.singularize.camelcase.constantize.order_by_clause)
  else
    values = object.send(attribute).first.class.name.constantize.order(attribute.to_s.singularize.camelcase.constantize.order_by_clause)
  end
  out = '<div class="edit_form_checklist">'
  out << '<ul>'
  values.each do | item |
    out << '<li>'
    out << check_box_tag( attribute.to_s + '[' + item.id.to_s + ']', 1, object.send(attribute.to_s.singularize + "_ids").include?(item.id) )
    out << '<div class="edit_form_checklist_text">'
    out << h(item._presentation)
    out << '</div>'
    out << '<div style="clear: both;"></div>'
    out << '</li>'
  end
  out << '</ul>'
  out << '</div>'
  out.html_safe
end

def check_list_update(object, attribute)
  params[attribute] ||= {}
  object.send(attribute.to_s.singularize + '_ids=', params[attribute].keys)
end

Version data entries

77 entries across 77 versions & 1 rubygems

Version Path
inline_forms-1.3.12 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.11 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.10 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.9 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.8 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.7 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.6 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.5 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.4 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.3 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.2 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.1 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.3.0 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.9 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.8 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.7 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.5 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.4 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.3 lib/app/helpers/form_elements/check_list.rb
inline_forms-1.2.2 lib/app/helpers/form_elements/check_list.rb