#
#= users_menus コントローラー
# Authors:: Sumiyo Yamamoto
# Copyright:: Copyright (C) OrbusNeich Medical K.K.  2010.
#--
# date        name                   note
# 2010.4.23   Sumiyo Yamamoto        新規作成
#-------------------------------------------------------------------------------
#++
class UsersMenusController < Comm::BaseController::RelMenus
  #== コンストラクタ
  #-----------------------------------------------------------------#++
  def initialize
    @mcls = UsersMenu
    @tcls = User

    #== メニュー一覧取得(ユーザーの権限情報付与）
    #-----------------------------------------------------------------#++
    def menus_index
      user_id = params[:id]
      
      # 全メニュー取得
      all_menus = Menu.with_category_sort.with_valid.all.only_hashfy
      
      if user_id.blank?
        edit_menu_auth_all_non(all_menus, 'auth_code')
        edit_menu_auth_all_non(all_menus, 'role_auth_code')
      else
        # ターゲットの権限情報付与
        user = @tcls.find(user_id)
        edit_menu_auth(user, all_menus, 'auth_code')
        edit_user_roles_menu_auth(user, all_menus, 'role_auth_code')
      end
      
      # 返却
      respond_to do |format|
        format.ext_json{
          render :json => all_menus.to_ext_json('menus', nil)
        }
      end
    end  end
end
