module ActiveAdmin::Resource::Menu

def include_in_menu?

Should this resource be added to the menu system?
def include_in_menu?
  menu_options[:display] != false
end

def menu(options = {})

call #menu(false)
Set the menu options. To not add this resource to the menu, just
def menu(options = {})
  options = options == false ? { :display => false } : options
  @menu_options = options
end

def menu_item_display_if

Returns a proc for deciding whether to display the menu item or not in the view
def menu_item_display_if
  menu_options[:if] || proc { true }
end

def menu_item_name

Returns the name to be displayed in the menu for this resource
def menu_item_name
  menu_options[:label] || plural_resource_name
end

def menu_item_priority

Returns the items priority for altering the default sort order
def menu_item_priority
  menu_options[:priority] || 10
end

def menu_options

The options to use for the menu
def menu_options
  @menu_options ||= {}
end

def parent_menu_item_name

Returns the name to put this resource under in the menu
def parent_menu_item_name
  menu_options[:parent]
end