Class: Refinery::Menu
- Inherits:
-
Object
- Object
- Refinery::Menu
- Defined in:
- lib/refinery/menu.rb
Instance Attribute Summary collapse
-
#id ⇒ Object
Returns the value of attribute id.
-
#items ⇒ Object
Returns the value of attribute items.
Instance Method Summary collapse
-
#initialize(objects = nil) ⇒ Menu
constructor
A new instance of Menu.
- #inspect ⇒ Object
- #roots ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(objects = nil) ⇒ Menu
Returns a new instance of Menu.
13 14 15 16 17 18 19 20 |
# File 'lib/refinery/menu.rb', line 13 def initialize(objects = nil) objects.each do |item| item = item. if item.respond_to?(:to_refinery_menu_item) items << MenuItem.new(item.merge(:menu_id => id)) end if objects ::Refinery.[self.id] = self end |
Instance Attribute Details
#id ⇒ Object
Returns the value of attribute id.
22 23 24 |
# File 'lib/refinery/menu.rb', line 22 def id @id end |
#items ⇒ Object
Returns the value of attribute items.
22 23 24 |
# File 'lib/refinery/menu.rb', line 22 def items @items end |
Instance Method Details
#inspect ⇒ Object
41 42 43 |
# File 'lib/refinery/menu.rb', line 41 def inspect items.map(&:inspect) end |
#roots ⇒ Object
33 34 35 |
# File 'lib/refinery/menu.rb', line 33 def roots @roots ||= items.select {|item| item.parent_id.nil?} end |
#to_s ⇒ Object
37 38 39 |
# File 'lib/refinery/menu.rb', line 37 def to_s items.map(&:title).join(' ') end |