Class: Spree::BackendConfiguration::MenuItem

Inherits:
Object
  • Object
show all
Defined in:
lib/spree/backend_configuration.rb

Overview

An item which should be drawn in the admin menu

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(sections, icon, condition: nil, label: nil, partial: nil, url: nil, position: nil, match_path: nil) ⇒ MenuItem

Returns a new instance of MenuItem.

Parameters:

  • sections (Array<Symbol>)

    The sections which are contained within this admin menu section.

  • icon (String)

    The icon to draw for this menu item

  • condition (Proc) (defaults to: nil)

    A proc which returns true if this menu item should be drawn. If nil, it will be replaced with a proc which always returns true.

  • label (Symbol) (defaults to: nil)

    The translation key for a label to use for this menu item.

  • partial (String) (defaults to: nil)

    A partial to draw within this menu item for use in declaring a submenu

  • url (String) (defaults to: nil)

    A url where this link should send the user to

  • position (Integer) (defaults to: nil)

    The position in which the menu item should render nil will cause the item to render last

  • match_path (String, Regexp) (defaults to: nil)

    (nil) If the #url to determine the active tab is ambigous you can pass a String or Regexp to identify this menu item



57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
# File 'lib/spree/backend_configuration.rb', line 57

def initialize(
  sections,
  icon,
  condition: nil,
  label: nil,
  partial: nil,
  url: nil,
  position: nil,
  match_path: nil
)

  @condition = condition || -> { true }
  @sections = sections
  @icon = icon
  @label = label || sections.first
  @partial = partial
  @url = url
  @position = position
  @match_path = match_path
end

Instance Attribute Details

#conditionObject (readonly)

Returns the value of attribute condition.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def condition
  @condition
end

#iconObject (readonly)

Returns the value of attribute icon.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def icon
  @icon
end

#labelObject (readonly)

Returns the value of attribute label.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def label
  @label
end

#match_pathObject (readonly)

Returns the value of attribute match_path.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def match_path
  @match_path
end

#partialObject (readonly)

Returns the value of attribute partial.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def partial
  @partial
end

#positionObject

Returns the value of attribute position.



40
41
42
# File 'lib/spree/backend_configuration.rb', line 40

def position
  @position
end

#sectionsObject (readonly)

Returns the value of attribute sections.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def sections
  @sections
end

#urlObject (readonly)

Returns the value of attribute url.



38
39
40
# File 'lib/spree/backend_configuration.rb', line 38

def url
  @url
end