Class: Spree::BackendConfiguration::MenuItem

Inherits:
Object
  • Object
show all
Defined in:
backend/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)

    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)

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

  • partial (String)

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

  • url (String)

    A url where this link should send the user to

  • position (Integer)

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

  • match_path (String, Regexp)

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



46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
# File 'backend/lib/spree/backend_configuration.rb', line 46

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



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def condition
  @condition
end

#iconObject (readonly)

Returns the value of attribute icon



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def icon
  @icon
end

#labelObject (readonly)

Returns the value of attribute label



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def label
  @label
end

#match_pathObject (readonly)

Returns the value of attribute match_path



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def match_path
  @match_path
end

#partialObject (readonly)

Returns the value of attribute partial



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def partial
  @partial
end

#positionObject

Returns the value of attribute position



29
30
31
# File 'backend/lib/spree/backend_configuration.rb', line 29

def position
  @position
end

#sectionsObject (readonly)

Returns the value of attribute sections



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def sections
  @sections
end

#urlObject (readonly)

Returns the value of attribute url



27
28
29
# File 'backend/lib/spree/backend_configuration.rb', line 27

def url
  @url
end