Class: Ecom::Core::MenusController

Inherits:
ApplicationController show all
Defined in:
app/controllers/ecom/core/menus_controller.rb

Instance Method Summary collapse

Methods inherited from ApplicationController

#current_user, #logged_in?

Instance Method Details

#indexObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# File 'app/controllers/ecom/core/menus_controller.rb', line 4

def index
  user = current_user
  roles = user.user_roles
  app_module = roles[0].application_module
  menus = []
  roles.each do |role|
    menu_list = role.menus.where(parent: nil, application_module: app_module)
    menu_list.each do |menu|
      children = []
      menu.children.order(:label).each do |child|
        if role.menus.include? child
          children << { label: child.label, icon: child.icon, route: child.route }
        end
      end
      menus << { label: menu.label, icon: menu.icon, children: children }
    end
  end

  render json: menus
end