class AmaLayout::Navigation

Attributes

current_url[RW]
display_name[RW]
nav_file_path[RW]
user[RW]

Public Class Methods

new(args = {}) click to toggle source
Calls superclass method
# File lib/ama_layout/navigation.rb, line 13
def initialize(args = {})
  args = defaults.merge args
  super
end

Public Instance Methods

decorate() click to toggle source
# File lib/ama_layout/navigation.rb, line 7
def decorate
  AmaLayout::NavigationDecorator.new(self)
end
email() click to toggle source
# File lib/ama_layout/navigation.rb, line 48
def email
  user.email
end
items() click to toggle source
# File lib/ama_layout/navigation.rb, line 38
def items
  navigation_items.fetch(user.try(:navigation), []).map do |n|
    NavigationItem.new n.merge(current_url: current_url)
  end
end
navigation_items() click to toggle source

Private Instance Methods

defaults() click to toggle source
# File lib/ama_layout/navigation.rb, line 54
def defaults
  {
    nav_file_path: File.join(
      Gem.loaded_specs['ama_layout'].full_gem_path,
      'lib',
      'ama_layout',
      'navigation.yml'
    )
  }
end