#
#= roles_users コントローラー
# Authors:: Sumiyo Yamamoto
# Copyright:: Copyright (C) OrbusNeich Medical K.K.  2010.
#--
# date        name                   note
# 2010.4.16   Sumiyo Yamamoto        新規作成
#-------------------------------------------------------------------------------
#++
class RolesUsersController < Comm::BaseController::General
  #== コンストラクタ
  #-----------------------------------------------------------------#++
  def initialize
    @mcls = RolesUser
  end

  #== ロール一覧取得(指定ユーザーの所属情報付与）
  #-----------------------------------------------------------------#++
  def roles_index
    uid = params[:id]
    
    # 全有効ロール取得
    all_roles = Role.set(MFIND_V).all.only_hashfy
    # ユーザーの所属ロール取得
    user_roles = User.find(uid).roles.only_hashfy
    
    # ユーザーの所属情報付与
    all_roles.each{|role|
      idx = user_roles.search_val(role['id'], 'id')
      role['belong'] = idx ? true : false
    }
    
    # 返却
    respond_to do |format|
      format.ext_json{
        render :json => all_roles.to_ext_json('roles', nil)
      }
    end
  end

  #== 指定ユーザーのロール編集
  #-----------------------------------------------------------------#++
  def roles_update
    uid = params[:id]
    user = User.find(uid)
    
    # ロール編集
    result = user.update_roles(params[:data])
    
    # 返却
    render :json => Comm::Tool::Json.result_json(result, user.errmsg)
  end
end
