class WonderNavigation::MenuEntry

Attributes

active[RW]
children[RW]
icon[RW]
id[RW]
label[RW]
level[RW]
path[RW]
visible[RW]

Public Class Methods

level_class(level) click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 30
def self.level_class(level)
  classes = {
    2 => "second",
    3 => "third"
  }
  classes[level]
end
new(id, level) click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 4
def initialize(id, level)
  @id = id
  @level = level
  @children = []
end

Public Instance Methods

active?() click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 10
def active?
  active || children.any?(&:active?)
end
has_active_children?() click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 18
def has_active_children?
  children.any?(&:active)
end
has_visible_children?() click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 14
def has_visible_children?
  children.any?(&:visible)
end
promote_active_state() click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 22
def promote_active_state
  self.active ||= has_active_children?
end
visible_children() click to toggle source
# File lib/wonder_navigation/menu_entry.rb, line 26
def visible_children
  children.select(&:visible)
end