Sha256: b6c7b0d2b983f1c3759796c23bdd4ec317da0ab8d3f0b81f19b20af0543e62dd
Contents?: true
Size: 1.68 KB
Versions: 12
Compression:
Stored size: 1.68 KB
Contents
module ActiveAdmin class Resource module Menu # Set the menu options. # To disable this menu item, call `menu(false)` from the DSL def menu_item_options=(options) if options == false @include_in_menu = false @menu_item_options = {} else @navigation_menu_name = options[:menu_name] @menu_item_options = default_menu_options.merge options end end def menu_item_options @menu_item_options ||= default_menu_options end def default_menu_options # These local variables are accessible to the procs. menu_resource_class = respond_to?(:resource_class) ? resource_class : self resource = self { :id => resource_name.plural, :label => proc{ resource.plural_resource_label }, :url => proc{ resource.route_collection_path(params) }, :if => proc{ authorized?(:read, menu_resource_class) } } end attr_writer :navigation_menu_name def navigation_menu_name case @navigation_menu_name ||= DEFAULT_MENU when Proc controller.instance_eval(&@navigation_menu_name).to_sym else @navigation_menu_name end end def navigation_menu namespace.fetch_menu(navigation_menu_name) end def add_to_menu(menu_collection) if include_in_menu? @menu_item = menu_collection.add navigation_menu_name, menu_item_options end end attr_reader :menu_item # Should this resource be added to the menu system? def include_in_menu? @include_in_menu != false end end end end
Version data entries
12 entries across 12 versions & 3 rubygems