Class: Nesta::Menu

Inherits:
Object
  • Object
show all
Defined in:
lib/nesta-contentfocus-extensions/menu.rb

Class Method Summary collapse

Class Method Details

.full_menuObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# File 'lib/nesta-contentfocus-extensions/menu.rb', line 11

def self.full_menu
  return @full_menu if @full_menu
  @full_menu = pre_contentfocus_full_menu
  if @full_menu.empty?
    menu_file = Tempfile.new('menu')
    categories = Page.find_all.map(&:categories).flatten.compact.uniq
    categories.sort_by!(&:abspath)
    categories.each do |category|
      menu_file.write(category.abspath + "\n")
      category.pages.each do |sub_category|
        menu_file.write(Nesta::Menu::INDENT + sub_category.abspath + "\n")
      end
    end.flatten
    menu_file.rewind
    append_menu_item(@full_menu, menu_file, 0)
    menu_file.close
    menu_file.unlink
  end
  @full_menu
end

.pre_contentfocus_full_menuObject



8
# File 'lib/nesta-contentfocus-extensions/menu.rb', line 8

alias_method :pre_contentfocus_full_menu, :full_menu