<!-- #include file="../../../include.asp" -->

<%
'<!--
'################################################
'	名称	:演習参加者管理
'	作成日	:2009/6/17
'	作成者	:小野
'	目的	:演習参加者の設定
'################################################
'-->
%>

<%
main()
Sub main()
	Dim	ErrMSG
	Dim Query
	Dim Content

	If Not(SessionCheck()) Then
		Exit Sub
	End If


	'会社セッション初期化(演習状況記帳チェック後の対処)
	KaisyaCD = ""
	GB_KaisyaCD = ""
	KaisyaMeisyo = ""
	GB_KaisyaMeisyo = ""
	KaisyaRyakuMeisyo = ""
	GB_KaisyaRyakuMeisyo = ""
	Session(HomeAlias & "KaisyaCD") = ""
	Session(HomeAlias & "Gyosyu") = ""
	Session(HomeAlias & "GyosyuMeisyo") = ""
	Session(HomeAlias & "KaisyaMeisyo") = ""
	Session(HomeAlias & "KaisyaRyakuMeisyo") = ""
	Session(HomeAlias & "JisyaFlag") = ""
	Session(HomeAlias & "ShijyoCD") = ""

	'絞り込み用の演習管理者IDを再取得(書類一覧後の対処)(221201小野美)
	If GB_Admin = "2" And EnshuCD <> "" Then
		Query = "exec SPM演習取得 '" & GB_SystemCD & "','" & EnshuCD & "'" 
		Set Content = OpenQuery(Query)
		If Not(Content.BOF Or Content.EOF) Then
			Session(HomeAlias & "GakuseiNo") = "" & Content.Fields("演習管理者ID")
			GB_GakuseiNo = Session(HomeAlias & "GakuseiNo")
			GakuseiNo = GB_GakuseiNo
		End If
	End If


	ErrMSG = Request("ErrMSG")

	Dim RouteType
	RouteType = Request("RouteType")

	'動作モード
	Dim Kijun
	Kijun = Request("Kijun")
	Dim Dialog
	Dialog = Request("Dialog")


	'動作補正用フラグ
	Dim SonzaiCheck
	SonzaiCheck = 0
	'メニュー配列作成及び動作補正(先に補正する必要がある)
	Dim MenuVal
	Dim MenuTxt
	ReDim MenuVal(0)
	ReDim MenuTxt(0)
	If Kijun = "Group" Then
		Query = "exec SPMグループ一覧 '" & GB_SystemCD & "',''"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			ReDim PreServe MenuVal(UBound(MenuVal) + 1)	'配列+1
			ReDim PreServe MenuTxt(UBound(MenuVal))
			MenuVal(UBound(MenuVal)) = "" & Content.Fields("学生グループCD")
			MenuTxt(UBound(MenuVal)) = "" & Content.Fields("グループ名称")
			If Content.Fields("学生グループCD") = EnshuCD Then
				SonzaiCheck = 1
			End If
			Content.MoveNext
		Loop
	Else
		Query = "exec SPM演習一覧 '" & GB_SystemCD & "', 4"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'マスター演習非表示
			If Content.Fields("マスター演習") <> "1" Then
				'パッケージモードトグル
				If (PackageMode = 1 And "" & Content.Fields("パッケージ区分") = "CA") Or (PackageMode = 0 And "" & Content.Fields("パッケージ区分") <> "CA") Then
													'工業簿記演習は5以上で表示
				If "" & Content.Fields("演習CD") <> "SYS00006" Or MajorVersion >= 5 Then
					ReDim PreServe MenuVal(UBound(MenuVal) + 1)	'配列+1
					ReDim PreServe MenuTxt(UBound(MenuVal))
					MenuVal(UBound(MenuVal)) = "" & Content.Fields("演習CD")
					MenuTxt(UBound(MenuVal)) = "" & Content.Fields("演習名称")
					If Content.Fields("演習CD") = EnshuCD Then
						SonzaiCheck = 1
					End If
				End If
				End If
			End If
			Content.MoveNext
		Loop
	End If
	'マッチしなければ演習CDまたはグループCDを空にする(動作補正のため)
	If SonzaiCheck = 0 Then
		EnshuCD = ""
	End If


%>

<html>
<% = HtmlHeader("") %>
<SCRIPT LANGUAGE="JavaScript">
<!--
	HomeAlias = "<% = HomeAlias %>";
	HomeAliasSL = "<% = HomeAliasSL %>";
	ExitFlg = 1;
-->
</SCRIPT>

<body onkeydown="if(ExitFlg==2)ExitFlg=3;" onBeforeUnload="if(ExitFlg != 0)window.event.returnValue = ExitMsg(ExitFlg)" bgcolor="#5C70B6" leftmargin="0" topmargin="0" marginwidth="0" marginheight="0">
<form OnKeyDown="FormKeyDown(this)" name="form1" method="POST" action="fm_enshusanka.asp" >
<input type="hidden" name="GroupCD" value="">
<input type="hidden" name="Kijun" value="<% = Kijun %>">
<input type="hidden" name="RouteType" value="<% = RouteType %>">

<%
	Response.Write(HtmlDesign(1))

	Response.Write(HttpL1(4))

	Dim Title
	If Kijun = "Group" Then
		Title = "グループ参加演習"
	ElseIf Kijun = "User" Then
		Title = "演習参加ユーザー"
	Else
		Title = "演習参加グループ"
	End If

	If RouteType = "Sousa" Then
		If GB_Admin = 1 Then
			Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu_w.asp')", "演習管理", "tblbtn( '/" & HomeAlias & "/admin/enshu/fm_enshu_ichiran.asp?EnshuCD=" & EnshuCD & "')", "演習コントロール", "tblbtn( '/" & HomeAlias & "/admin/enshu/fm_enshucontrol.asp?EnshuCD=" & EnshuCD & "')", Title, "", "", "", "", ""))	
		Else
			Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu_w.asp')", "演習管理", "tblbtn( '/" & HomeAlias & "/admin/enshu/fm_enshu1_view.asp?EnshuCD=" & EnshuCD & "')", "演習コントロール", "tblbtn( '/" & HomeAlias & "/admin/enshu/fm_enshucontrol.asp?EnshuCD=" & EnshuCD & "')", Title, "", "", "", "", ""))	
		End If
	Else
		If GB_Admin = 2 Then
			Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu_w.asp')", Title, "", "", "", "", "", "", "", "", ""))
		ElseIf Request("RouteType") = "Kantan" Then
			Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu1.asp')", Title, "", "", "", "", "", "", "", "", ""))
		Else
			Response.Write(HttpL2("運用管理メニュー" ,"tblbtn( '/" & HomeAlias & "/admin/admenu_w.asp')", Title, "", "", "", "", "", "", "", "", ""))
		End If
	End If

	Response.Write(HttpL3("","" ,"", "", "", "", "", "", "", "", "", "", "", "", "", ""))

	If EnshuCD <> "" Then
		Response.Write(HttpL3_1("保存", "UpdateCheck()", "", "", "", "", "", "", "", ""))
	End If


	Dim GroupSankaBtn
	Dim GroupSankaVal
	GroupSankaBtn = "グループ参加演習"
	GroupSankaVal = "tblbtn('/" & HomeAlias & "/admin/master/sanka/fm_enshusanka.asp?Kijun=Group&RouteType=" & RouteType & "&Dialog=2');"
	If RouteType = "Sousa" Then
		GroupSankaBtn = ""
		GroupSankaVal = ""
	End If
	If GB_Admin = 2 Then '演習管理者は演習参加グループ管理のみ
		Response.Write(HttpL3_2("", "", "", "", "", "", "", "", "", ""))
	ElseIf Kijun = "Group" Then
		Response.Write(HttpL3_2("演習参加グループ", "tblbtn( '/" & HomeAlias & "/admin/master/sanka/fm_enshusanka.asp?RouteType=" & RouteType & "&Dialog=1')", "演習参加ユーザー", "tblbtn('/" & HomeAlias & "/admin/master/sanka/fm_enshusanka.asp?Kijun=User&RouteType=" & RouteType & "&Dialog=3');", "", "", "", "", "", ""))
	ElseIf Kijun = "User" Then
		Response.Write(HttpL3_2("演習参加グループ", "tblbtn( '/" & HomeAlias & "/admin/master/sanka/fm_enshusanka.asp?RouteType=" & RouteType & "&EnshuCD=" & EnshuCD & "&Dialog=1')", GroupSankaBtn, GroupSankaVal, "", "", "", "", "", ""))
	Else
		Response.Write(HttpL3_2(GroupSankaBtn, GroupSankaVal, "演習参加ユーザー", "tblbtn('/" & HomeAlias & "/admin/master/sanka/fm_enshusanka.asp?Kijun=User&RouteType=" & RouteType & "&EnshuCD=" & EnshuCD & "&Dialog=3');", "", "", "", "", "", ""))
	End If

	Response.Write(HttpL4(Title & "管理", ""))

	Response.Write(HttpL5(ErrMSG))

%>

<div id="L0" style="position: absolute; visibility: hidden; left: 0px; top: -2000px;">
<table width="820" height="402" border="0" cellspacing="5" cellpadding="15" bgcolor="#ffffff" style="border:1px solid #000000">
	<tr>
		<td align="center" background="/<% = HomeAlias %>/images/window_bk.gif?<% = GB_STU %>">
			<table width="100%" border="0" cellpadding="0" cellspacing="5">
				<tr>
					<td align="center" valign="top">
						<TABLE WIDTH="100%" HEIGHT="30" BORDER="1" CELLPADDING="0" CELLSPACING="0" BORDERCOLOR="#000000" BGCOLOR="#FFFFCC" CLASS="tx1416" STYLE="border-collapse: collapse">
							<TR ALIGN="CENTER">
								<% If Kijun = "Group" Then %>
								<TD HEIGHT="30">対象グループ名</TD>
								<% Else %>
								<TD HEIGHT="30">対象演習名</TD>
								<% End If %>
								<TD height="30" ALIGN="center">
								<% If GB_Admin = 2 Or RouteType = "Sousa" Then %>
								 	<input type="hidden" name="EnshuCD" value="<% = EnshuCD %>">
								 	<% = EnshuMeisyo %>
								<% Else %>
									<select size="1" name="EnshuCD" onChange="SetSyokaiList();" class="tbox4">
									<% If Kijun = "Group" Then %>
									<option value=""><< 対象グループを選択して下さい >></option>
									<% Else %>
									<option value=""><< 対象演習を選択して下さい >></option>
									<% End If %>
									<%
										For ii = 1 To UBound(MenuVal)
											Response.Write("<option value=""" & MenuVal(ii) & """")
											If MenuVal(ii) = EnshuCD Then Response.Write(" selected") End If
											Response.Write(">" & MenuTxt(ii) & "</option>" & vbCrLf)
										Next
									%>
									</select>
								<% End If %>
								</TD>
							</TR>
						</table>
						<br>
<%	If EnshuCD <> "" Then %>


						<table width="700" height="100%" border="0" cellspacing="0" cellpadding="0">

							<TR>
								<TD HEIGHT="20" VALIGN="TOP" WIDTH="700">
									<TABLE WIDTH="1" height="100%" BORDER="1" CELLPADDING="3" CELLSPACING="0" BORDERCOLOR="#000000" BGCOLOR="#FFFFCC" CLASS="tx1416" STYLE="border-collapse: collapse">

										<TR ALIGN="CENTER">
											<% If Kijun = "Group" Then %>
											<TD height="25">このグループが参加していない演習</TD>
											<% ElseIf Kijun = "User" Then %>
											<TD height="25">この演習に参加していないユーザー</TD>
											<% Else %>
											<TD height="25">この演習に参加していないグループ</TD>
											<% End If %>
											<td	rowspan="2">
												<TABLE BORDER="0" CELLSPACING="0" CELLPADDING="0">
													<TR>
														<TD align="center"><INPUT TYPE="button" NAME="sanka" VALUE="参加させる&nbsp;>>" style="font-family:<% If GB_CSS = "EC" Then %>Alial<% Else %>'MS Pゴシック'<% End If %>;width:110px;height:30px;font-size:14px;" ONCLICK="SetSankaList();"></TD>
													</TR>
													<TR>
														<TD align="center"><BR><INPUT TYPE="button" NAME="fusanka" VALUE="<<&nbsp;参加取消し" style="font-family:<% If GB_CSS = "EC" Then %>Alial<% Else %>'MS Pゴシック'<% End If %>;width:110px;height:30px;font-size:14px;" ONCLICK="SetFusankaList();"></TD>
													</TR>
												</TABLE>
											</td>
											<% If Kijun = "Group" Then %>
											<TD height="25">このグループが参加している演習</TD>
											<% ElseIf Kijun = "User" Then %>
											<TD height="25">この演習に参加しているユーザー</TD>
											<% Else %>
											<TD height="25">この演習に参加しているグループ</TD>
											<% End If %>
										</TR>
										<TR ALIGN="CENTER">
											<TD>
												<select size="18" name="FusankaList" MULTIPLE style="font-family:<% If GB_CSS = "EC" Then %>Alial<% Else %>'MS Pゴシック'<% End If %>;padding:3px;height:343px;width:320px;font-size:14px;">
<%
	'グループ参加不可能演習一覧表示ロジック
	' クエリでJOINしても参加不可能演習は取得出来ないので
	' 参加可能演習一覧を配列化し演習一覧に照合する
	If Kijun = "Group" Then
		Dim OKarray()
		ReDim OKarray(0)
		Dim ErrFlg
		Dim ii
		ii = 0
		Query = "exec SPMグループ_参加可能演習一覧 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			ii = ii + 1
			ReDim Preserve OKarray(ii)
			OKarray(ii) = Content.Fields("演習CD")
		Content.MoveNext
		Loop
		Query = "exec SPM演習一覧 '" & GB_SystemCD & "', 4"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'マスター演習非表示
			If Content.Fields("マスター演習") <> "1" Then
				'パッケージモードトグル
				If (PackageMode = 1 And "" & Content.Fields("パッケージ区分") = "CA") Or (PackageMode = 0 And "" & Content.Fields("パッケージ区分") <> "CA") Then
													'工業簿記演習は5以上で表示
				If "" & Content.Fields("演習CD") <> "SYS00006" Or MajorVersion >= 5 Then
					ErrFlg = 0
					For ii = 1 To UBound(OKarray)
						If OKarray(ii) = Content.Fields("演習CD") Then
							ErrFlg = 1
							Exit For
						End If
					Next
					If ErrFlg = 0 Then
						Response.Write("<option value=""" & Content.Fields("演習CD") & """>" & Content.Fields("演習名称") & "</option>" & vbCrLf)
					End If
				End If
				End If
			End If
			Content.MoveNext
		Loop
	ElseIf Kijun = "User" Then
		Query = "exec SPM演習_不参加ユーザー一覧 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'演習管理者の場合は演習管理者が作成したグループのユーザーのみ表示
			If GB_Admin <> "2" Or (GB_Admin = "2" And Content.Fields("グループ作成者ID") = GB_GakuseiNo) Then
				Response.Write("<option value=""" & Content.Fields("学生番号") & """>" & Content.Fields("氏名") & " [" & Content.Fields("学生番号") & "]</option>" & vbCrLf)
			End If
			Content.MoveNext
		Loop
	Else
		Query = "exec SPM演習_不参加グループ一覧 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'演習管理者の場合は演習管理者が作成したグループのみ表示
			If GB_Admin <> "2" Or (GB_Admin = "2" And Content.Fields("作成者ID") = GB_GakuseiNo) Then
				Response.Write("<option value=""" & Content.Fields("学生グループCD") & """>" & Content.Fields("グループ名称") & "</option>" & vbCrLf)
			End If
			Content.MoveNext
		Loop
	End If
%>
												</select>
											</TD>
											<TD>
												<select size="18" name="SankaList" MULTIPLE style="font-family:<% If GB_CSS = "EC" Then %>Alial<% Else %>'MS Pゴシック'<% End If %>;padding:3px;height:343px;width:320px;font-size:14px;">
<%
	If Kijun = "Group" Then
		Query = "exec SPMグループ_参加可能演習一覧 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'マスター演習非表示
			If Content.Fields("マスター演習") <> "1" Then
				'パッケージモードトグル
				If (PackageMode = 1 And "" & Content.Fields("パッケージ区分") = "CA") Or (PackageMode = 0 And "" & Content.Fields("パッケージ区分") <> "CA") Then
					Response.Write("<option value=""" & Content.Fields("演習CD") & """>" & Content.Fields("演習名称") & "</option>" & vbCrLf)
				End If
			End If
			Content.MoveNext
		Loop
	ElseIf Kijun = "User" Then
		Query = "exec SPM演習_参加ユーザー一覧2 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'演習管理者の場合は演習管理者が作成したグループのユーザーのみ表示
			If GB_Admin <> "2" Or (GB_Admin = "2" And Content.Fields("グループ作成者ID") = GB_GakuseiNo) Then
				Response.Write("<option value=""" & Content.Fields("学生番号") & """>" & Content.Fields("氏名") & " [" & Content.Fields("学生番号") & "]</option>" & vbCrLf)
			End If
			Content.MoveNext
		Loop
	Else
		Query = "exec SPM演習_参加グループ一覧 '" & GB_SystemCD & "','" & EnshuCD & "'"
		Set Content = OpenQuery(Query)
		Do While Not(Content.BOF Or Content.EOF)
			'演習管理者の場合は演習管理者が作成したグループのみ表示
			If GB_Admin <> "2" Or (GB_Admin = "2" And Content.Fields("作成者ID") = GB_GakuseiNo) Then
				Response.Write("<option value=""" & Content.Fields("学生グループCD") & """>" & Content.Fields("グループ名称") & "</option>" & vbCrLf)
			End If
			Content.MoveNext
		Loop
	End If
%>
												</select>
											</TD>
										</TR>
										<TR ALIGN="CENTER">
											<TD height="25" colspan="3" align="center">(Ctrlキーを押しながらクリックすれば複数選択することができます)</TD>
										</TR>
									</TABLE>
								</TD>
							</TR>
						</TABLE>
<% Else %>
						<table width="700" height="340" border="0" cellspacing="0" cellpadding="0">

							<TR>
								<TD>
<br>
								</TD>
							</TR>
						</TABLE>
<% End If %>
					</TD>
				</TR>
			</TABLE>
		</td>
	</tr>
</table>
</div>
</form>

</body>



<SCRIPT LANGUAGE="JavaScript">


	function SetSyokaiList()
	{

		SubmitReal(form1);
		return false;
	}


	function SetListClear()
	{
		do
		{
			form1.SankaList.options[0] = null;
		}
		while(form1.SankaList.length != 0)

		do
		{
			form1.FusankaList.options[0] = null;
		}
		while(form1.FusankaList.length != 0)

	}


	function SetSankaList()
	{
		var kazu;
		var Idx;
								var atai ;
								var hyoji ;


		if (form1.SankaList.length == -1)
			{
				Idx = 0;
			}
		else
			{
				Idx = form1.SankaList.length;
			}


		kazu = form1.FusankaList.length;
		for (var i=0;i<kazu;i++)
		{

			if (form1.FusankaList.options[i].selected)
			{
				atai = form1.FusankaList.options[i].value;
				hyoji = form1.FusankaList.options[i].text;
							form1.SankaList.options[Idx] = new Option(hyoji,atai);
				Idx = Idx + 1;
			}
		}

		for (var i=kazu-1;i>-1;i--)
		{
			if (form1.FusankaList.options[i].selected)
			{
				form1.FusankaList.options[i] = null;
			}
		}
		return false;
	}

	function SetFusankaList()
	{
		var kazu;
		var Idx;
								var atai ;
								var hyoji ;

		if (form1.FusankaList.length == -1)
			{
				Idx = 0;
			}
		else
			{
				Idx = form1.FusankaList.length;
			}
		kazu = form1.SankaList.length;
		for (var i=0;i<kazu;i++)
		{
			if (form1.SankaList.options[i].selected)
			{
				atai = form1.SankaList.options[i].value;
				hyoji = form1.SankaList.options[i].text;
							form1.FusankaList.options[Idx] = new Option(hyoji,atai);
				Idx = Idx + 1;
			}
		}
		for (var i=kazu-1;i>-1;i--)
		{
			if (form1.SankaList.options[i].selected)
			{
				form1.SankaList.options[i] = null;
			}
		}
		return false;
	}

	function UpdateCheck()
	{
			GroupCDSet();
			tblbtn( "/<% = HomeAlias %>/admin/master/sanka/fm_enshusanka_bin.asp?Kijun=<% = Kijun %>&RouteType=<% = RouteType %>&EnshuCD=<% = EnshuCD %>&GroupCD=" + form1.GroupCD.value);
			return true;
	}

	function GroupCDSet()
	{
		var kazu;
								var atai ;
		atai = "";
		kazu = form1.SankaList.length;
		for (var i=0;i<kazu;i++)
		{
			if (i == 0)
			{
				atai = atai + form1.SankaList.options[i].value;
			}
			else
			{
				atai = atai + "," + form1.SankaList.options[i].value ;
			}
		}
		form1.GroupCD.value = atai;
		return false;
	}

</script>

<SCRIPT FOR="window" EVENT="onload" LANGUAGE="JavaScript">
<% If Dialog = "1" Then %>
	alert("演習を基準として、参加するグループを設定します。");
<% ElseIf Dialog = "2" Then %>
	alert("グループを基準として、参加する演習を設定します。");
<% ElseIf Dialog = "3" Then %>
	alert("演習を基準として、参加するユーザーを設定します。");
<% End If %>
</SCRIPT>


<% = HtmlFooter %>
</html>

<%
End Sub
%>