Class: Refinery::Menu

Inherits:
Object
  • Object
show all
Defined in:
lib/refinery/menu.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(objects = nil) ⇒ Menu

Returns a new instance of Menu.



4
5
6
7
8
9
# File 'lib/refinery/menu.rb', line 4

def initialize(objects = nil)
  objects.each do |item|
    item = item.to_refinery_menu_item if item.respond_to?(:to_refinery_menu_item)
    items << MenuItem.new(item.merge(:menu => self))
  end if objects
end

Instance Attribute Details

#itemsObject

Returns the value of attribute items.



11
12
13
# File 'lib/refinery/menu.rb', line 11

def items
  @items
end

Instance Method Details

#rootsObject



17
18
19
# File 'lib/refinery/menu.rb', line 17

def roots
  @roots ||= items.select {|item| item.parent_id.nil?}
end

#to_sObject



21
22
23
# File 'lib/refinery/menu.rb', line 21

def to_s
  items.map(&:title).join(' ')
end