Sha256: 2870d42307c849de8dec3d49fe10726df4189701b3f18dbf28be24794c80c441

Contents?: true

Size: 995 Bytes

Versions: 7

Compression:

Stored size: 995 Bytes

Contents

module Para
  module TreeHelper
    def needs_placeholder?(node)
      node.children.empty? && node.depth < max_depth_for(node.class)
    end

    def max_depth_for(model)
      model.max_depth || Para.config.default_tree_max_depth
    end

    def actions(resource)
      content_tag(:div, class: 'pull-right btn-group') do
        edit_button(resource) + delete_button(resource)
      end
    end

    def edit_button(resource)
      link_to(
        component.relation_path(
          resource, action: :edit, return_to: view.request.fullpath
        ),
        class: 'btn btn-primary'
      ) do
        content_tag(:i, '', class: 'fa fa-pencil')
      end
    end

    def delete_button(resource)
      link_to(
        component.relation_path(resource),
        method: :delete,
        data: {
          confirm: ::I18n.t('para.list.delete_confirmation')
        },
        class: 'btn btn-danger'
      ) do
        content_tag(:i, '', class: 'fa fa-trash')
      end
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
para-0.6.9 app/helpers/para/tree_helper.rb
para-0.6.8 app/helpers/para/tree_helper.rb
para-0.6.7 app/helpers/para/tree_helper.rb
para-0.6.3 app/helpers/para/tree_helper.rb
para-0.6.2 app/helpers/para/tree_helper.rb
para-0.5.4 app/helpers/para/tree_helper.rb
para-0.5.3 app/helpers/para/tree_helper.rb