Module: Tramway::Admin::Navbar

Included in:
Tramway::Admin
Defined in:
lib/tramway/admin/navbar.rb

Instance Method Summary collapse

Instance Method Details



6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/tramway/admin/navbar.rb', line 6

def navbar_items_for(project, role:)
  @singleton_models_for ||= singleton_models_for(project, role: role)
  @available_models_for ||= available_models_for(project, role: role)
  @navbar_structure ||= {}
  @navbar_structure.map do |item|
    if item.is_a? Class
      should_be_in_navbar_as item
    elsif item.is_a? Hash
      sub_items = item.values.first.map do |sub_item|
        should_be_in_navbar_as sub_item
      end.compact
      { item.keys.first => sub_items } if sub_items.any?
    end
  end.compact
end


2
3
4
# File 'lib/tramway/admin/navbar.rb', line 2

def navbar_structure(*links)
  @navbar_structure ||= links
end