/////////////////////////////////////////////////////////////////
//Copyright (C) 2005 NTT CORPORATION.
//
//	権限アサイン実行画面（パラメーターチェック）表示Actionクラス
//
//		変更履歴
//			2005.02.16  新規作成  氏名 石崎賢太郎
//
//	機能
//
//	権限アサイン実行画面（パラメーターチェック）表示Actionクラスです。
//
/////////////////////////////////////////////////////////////////
package jp.co.ntt.lms.xmf.actions.xmo.RoleAssignments;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.util.MessageResources;

/**
 * 権限アサイン実行画面（パラメーターチェック）表示Actionクラスです。
 * 
 * @author Kentaro Ishizaki (UNITEC)
 * @version 1.0
 */
public class RoleAssignmentsframe_functionAction extends Action
{
	/**
	 * strutsフレームワークから呼ばれるメソッドです。
	 * 
	 * @param mapping マッピングオブジェクト。
	 * @param form アクションフォームオブジェクト。
	 * @param request リクエストオブジェクト。
	 * @param response レスポンスオブジェクト。
	 * @return ActionForward アクションフォワードオブジェクト。
	 * @throws Exception
	 */
	public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
	{
		///////////////////////////////////////////
		// パラメータ取得
		// 	・parentID	親グループのID	必須
		// 	・selectID	人のID			必須
		// 	・returnURL	戻りページ		必須
		///////////////////////////////////////////
		String strParentID_o = request.getParameter("parentID");		// 親グループのID
		String strSelectID_o = request.getParameter("selectID");		// 人のID
		String strReturnURL_o = request.getParameter("returnURL");	// 戻りページ

		// メッセージリソース取得
		MessageResources resources = getResources(request, "msg.xmf.xmo.RoleAssignments.MessageResources");
		
		///////////////////////////////////////////
		// パラメータチェック
		///////////////////////////////////////////
		if( strParentID_o == null || strParentID_o.equals( "" ) ) {
			Exception e = new Exception();
			e.printStackTrace();
			String strMessage = resources.getMessage("M092001");
			String strDetail = resources.getMessage("D092001");
			request.setAttribute("message", strMessage);
			request.setAttribute("detail", strDetail);
			request.setAttribute("close", "on");
			request.setAttribute("errorurl", "");
			return mapping.findForward("error");
		}
		if( strSelectID_o == null || strSelectID_o.equals( "" ) ) {
			Exception e = new Exception();
			e.printStackTrace();
			String strMessage = resources.getMessage("M092002");
			String strDetail = resources.getMessage("D092002");
			request.setAttribute("message", strMessage);
			request.setAttribute("detail", strDetail);
			request.setAttribute("close", "on");
			request.setAttribute("errorurl", "");
			return mapping.findForward("error");
		}
		if( strReturnURL_o == null || strReturnURL_o.equals( "" ) ) {
			Exception e = new Exception();
			e.printStackTrace();
			request.setAttribute("message", "");
			request.setAttribute("detail", "");
			request.setAttribute("close", "on");
			request.setAttribute("errorurl", "../Com/ComSystemErr.vm");
			return mapping.findForward("error");
		}


		// ツリーデータ取得用のアプレット
		String strServerName_o = request.getServerName();
		int intServerPort_o = request.getServerPort();
		String strContextPath_o = request.getContextPath();

		
		// リクエストに変数をセット
		request.setAttribute("strParentID_o", strParentID_o);
		request.setAttribute("strSelectID_o", strSelectID_o);
		request.setAttribute("strServerName_o", strServerName_o);
		request.setAttribute("intServerPort_o", new Integer(intServerPort_o));
		request.setAttribute("strContextPath_o", strContextPath_o);
		
		return mapping.findForward("success");
		
	}
}
