Class: AmaLayout::Navigation

Inherits:
Object
  • Object
show all
Includes:
ActiveModel::Model, Draper::Decoratable
Defined in:
lib/ama_layout/navigation.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(args = {}) ⇒ Navigation

Returns a new instance of Navigation.



8
9
10
11
# File 'lib/ama_layout/navigation.rb', line 8

def initialize(args = {})
  args = defaults.merge args
  super
end

Instance Attribute Details

#current_urlObject

Returns the value of attribute current_url.



6
7
8
# File 'lib/ama_layout/navigation.rb', line 6

def current_url
  @current_url
end

#display_nameObject

Returns the value of attribute display_name.



6
7
8
# File 'lib/ama_layout/navigation.rb', line 6

def display_name
  @display_name
end

Returns the value of attribute nav_file_path.



6
7
8
# File 'lib/ama_layout/navigation.rb', line 6

def nav_file_path
  @nav_file_path
end

#userObject

Returns the value of attribute user.



6
7
8
# File 'lib/ama_layout/navigation.rb', line 6

def user
  @user
end

Instance Method Details

#emailObject



36
37
38
# File 'lib/ama_layout/navigation.rb', line 36

def email
  user.email
end

#itemsObject



26
27
28
29
30
# File 'lib/ama_layout/navigation.rb', line 26

def items
  navigation_items.fetch(user.try(:navigation), []).map do |n|
    NavigationItem.new n.merge({ current_url: current_url})
  end
end


32
33
34
# File 'lib/ama_layout/navigation.rb', line 32

def navigation_items
  YAML.load ERB.new(File.read nav_file_path).result
end