Sha256: 19d1496849cb33b1f7f42c5be30d017d2ea486e3766d474e34626de408cd2a73

Contents?: true

Size: 974 Bytes

Versions: 11

Compression:

Stored size: 974 Bytes

Contents

module AdminIt
  module Helpers
    class TopMenuItem < WrapIt::Link
      attr_accessor :resource
      option :resource

      before_capture do
        unless resource.icon.nil?
          body << html_safe("<i class=\"fa fa-#{resource.icon}\"></i> ")
        end
        body << resource.display_name
        self.link = @template.url_for(
          controller: resource.name,
          action: resource.default_context
        )
        options = { tag: 'li' }
        options[:class] = 'active' if resource == @template.resource
        wrap(options)
      end
    end

    class TopMenu < WrapIt::Container
      default_tag 'ul'
      html_class 'nav'
      child :item, TopMenuItem

      after_initialize { self.deffered_render = true }

      before_capture do
        AdminIt.resources.each do |name, resource|
          next unless resource.menu == true
          item(resource: resource)
        end
      end
    end

    register :top_menu, TopMenu
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
admin_it-1.0.11 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.10 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.9 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.8 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.7 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.6 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.5 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.4 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.3 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.2 lib/admin_it/helpers/top_menu.rb
admin_it-1.0.1 lib/admin_it/helpers/top_menu.rb