Sha256: 07bde2a4d3638474beb54256f53786dd2d079c480b80b6a166249c57695f39bd
Contents?: true
Size: 878 Bytes
Versions: 8
Compression:
Stored size: 878 Bytes
Contents
module Admin::Resources::DataTypes::TreeHelper def table_tree_field(attribute, item) item.parent ? item.parent.to_label : "—".html_safe end def typus_tree_field(attribute, form) locals = { :attribute => attribute, :form => form, :label_text => @resource.human_attribute_name(attribute), :values => expand_tree_into_select_field(@resource.roots, "parent_id") } render "admin/templates/tree", locals end def expand_tree_into_select_field(items, attribute) String.new.tap do |html| items.each do |item| html << %{<option #{"selected" if @item.send(attribute) == item.id} value="#{item.id}">#{" " * item.ancestors.size * 2} #{item.to_label}</option>\n} html << expand_tree_into_select_field(item.children, attribute) unless item.children.empty? end end end end
Version data entries
8 entries across 8 versions & 1 rubygems