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.



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.to_refinery_menu_item if item.respond_to?(:to_refinery_menu_item)
    items << MenuItem.new(item.merge(:menu_id => id))
  end if objects

  ::Refinery.menus[self.id] = self
end

Instance Attribute Details

#idObject

Returns the value of attribute id.



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

def id
  @id
end

#itemsObject

Returns the value of attribute items.



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

def items
  @items
end

Instance Method Details

#in_menuObject



58
59
60
61
62
63
64
65
# File 'lib/refinery/menu.rb', line 58

def in_menu
  Refinery.deprecate({
    :what => "'in_menu' on a ::Refinery::Menu instance",
    :when => '1.1 with no replacement'
  })

  self
end

#inspectObject



41
42
43
# File 'lib/refinery/menu.rb', line 41

def inspect
  items.map(&:inspect)
end

#liveObject

Ensure that things still work from how the menu partials worked before.



49
50
51
52
53
54
55
56
# File 'lib/refinery/menu.rb', line 49

def live
  Refinery.deprecate({
    :what => "'live' on a ::Refinery::Menu instance",
    :when => '1.1 with no replacement'
  })

  self
end

#rootsObject



33
34
35
# File 'lib/refinery/menu.rb', line 33

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

#to_sObject



37
38
39
# File 'lib/refinery/menu.rb', line 37

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