Sha256: daa4e03ac00f789f7c26efb4eb894ac6dde828f0c7a875006de29eea6e94ce39

Contents?: true

Size: 718 Bytes

Versions: 1

Compression:

Stored size: 718 Bytes

Contents

module AbAdmin
  module Menu
    class BaseGroup
      include ::Rails.application.routes.url_helpers
      include ::AbAdmin::Utils::EvalHelpers

      def link(title, path, options={})
        @menu_tree << Item.new(title, path, options)
      end

      def model(model, options={})
        title = model.model_name.human(count: 9)
        path = options[:url] || "/admin/#{model.model_name.plural}"
        @menu_tree << Item.new(title, path, options)
      end

      def group(title, options={}, &block)
        @menu_tree << Group.new(title, options, &block)
      end

      def render_nested(template)
        @menu_tree.map { |item| item.render(template) }.compact.join.html_safe
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
ab_admin-0.4.0 lib/ab_admin/menu/base_group.rb