// 選択処理
function SelectAirport(Route_Count)
{	
	var form = document.forms[0];

	var DepIndex = -1;
	var ArrIndex = -1;

	// マイルートの件数が1件以外の場合
	if( Route_Count != 1 )
	{
		// チェックされているラジオボタンの検出
		for( i = 0; i < form.route.length; i++ )
		{
			// i番目のラジオボタンがチェックされているか	
			if(form.route[i].checked)
			{
				// チェックされている項目の要素を取得
				// DepAirCode 出発空港の空港コード
				// ArrAirCode 到着空港の空港コード
				RouteAP = form.route[i].value.split(":");
				DepAirCode = RouteAP[0];
				ArrAirCode = RouteAP[1];				
				break;
			}
		}
	}
	// マイルートの件数が1件の場合
	else
	{
		// ラジオボタンがチェックされているか
		if(form.route.checked)
		{
			// チェックされている項目の要素を取得
			// DepAirCode 出発空港の空港コード
			// ArrAirCode 到着空港の空港コード
			RouteAP = form.route.value.split(":");
			DepAirCode = RouteAP[0];
			ArrAirCode = RouteAP[1];
		}
	}	
	
	
	// 選択した空港が未就航ではないかのチェック
	for( i = 0; i < window.opener.document.forms[0].boardingAirportCode.length; i++ )
	{
		if( DepAirCode == window.opener.document.forms[0].boardingAirportCode[i].value )
		{
			DepIndex = i;
			break;
		}
	}
	for( i = 0; i < window.opener.document.forms[0].arrivalAirportCode.length; i++ ) 
	{	
		if( ArrAirCode == window.opener.document.forms[0].arrivalAirportCode[i].value ) 
		{
			ArrIndex = i;
			break;
		}
	}
	
	// 出発空港・到着空港のどちらかでも未就航だった場合、エラーメッセージを出して処理を抜ける
	if( DepIndex < 0 || ArrIndex < 0 ) {
		alert("選択されたマイルートの出発または到着空港は、現在、未就航のため、選択できません。");
		return;
	}

	// トップページの出発空港・到着空港の変更
	window.opener.document.forms[0].boardingAirportCode.options[DepIndex].selected = true;
	window.opener.document.forms[0].arrivalAirportCode.options[ArrIndex].selected = true;
	
	// 最終選択ルートの登録
	form.MODE.value="SEL";
	form.submit();

}


//マイルート画面
function openMyWindow(Uri){
	cal_path = Uri;
	var objWnd = window.open(cal_path,"my","toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no,width=310,height=490");

}


// 削除処理
function DeleteAirport(Route_Count)
{
	var form = document.forms[0];

	//削除処理を行なうことの確認
	if(confirm("選択されたマイルートを削除します。よろしいですか？"))
	{
		// マイルートの件数が1件以外の場合
		if(Route_Count != 1)
		{
			for( i = 0; i < form.route.length; i++ )
			{
				// i番目のラジオボタンがチェックされているか
				if(form.route[i].checked)
				{
					// 値を渡す
					form.MODE.value="DEL";
					form.submit();
				}
			}
		}
		//マイルートの件数が1件の場合
		else
		{
			// ラジオボタンがチェックされているか
			if(form.route.checked)
			{
				// 値を渡す
				form.MODE.value="DEL";
				form.submit();
			}
		}
	}	
}


// 追加処理
function AddAirport(Route_Count)
{
	var form = document.forms[0];

	// セレクトボックス内の選択された項目の番号を取得する
	DepIndex = form.boardingAirportCode.selectedIndex;
	ArrIndex = form.arrivalAirportCode.selectedIndex;
	
	// 取得した番号の項目に格納されている要素（空港コード）を取得する
	DepAirCode = form.boardingAirportCode.options[DepIndex].value;
	ArrAirCode = form.arrivalAirportCode.options[ArrIndex].value;
	
	if( DepAirCode == ArrAirCode )
	{
		// 出発空港・到着空港の空港名が同じだった場合、エラーメッセージを表示し、処理を抜ける
		alert("出発地又は到着地を正しく入力してください。");
		return;
	}

	// マイルートの件数が0件の場合
	if(Route_Count == 0)
	{ }
	// マイルートの件数が1件の場合
	else if(Route_Count == 1)
	{
		if( form.route.value == DepAirCode + ":" + ArrAirCode )
		{
			// どちらも等しい項目があった場合、エラーメッセージを表示し、処理を抜ける
			alert("指定された区間は既にマイルートに登録されています");
			return;
		}
	}
	// マイルートの件数が1件以上の場合
	else
	{
		// 既に登録されているルートではないことを確認する
		for( i = 0; i < form.route.length; i++ )
		{
			if( form.route[i].value == DepAirCode + ":" + ArrAirCode )
			{
				// どちらも等しい項目があった場合、エラーメッセージを表示し、処理を抜ける
				alert("指定された区間は既にマイルートに登録されています");
				return;
			}
		}
	}
		
	// 値を渡す
	form.MODE.value="ADD";
	form.submit();
}


// 最終選択ルート
function SetLastRoute(DepAirCode, ArrAirCode) {
	DepIndex = -1;
	ArrIndex = -1;

	// 選択した空港が未就航ではないかのチェック
	for( i = 0; i < document.forms[0].boardingAirportCode.length; i++ )
	{
		if( DepAirCode == document.forms[0].boardingAirportCode[i].value )
		{
			DepIndex = i;
			break;
		}
	}
	for( i = 0; i < document.forms[0].arrivalAirportCode.length; i++ ) 
	{	
		if( ArrAirCode == document.forms[0].arrivalAirportCode[i].value ) 
		{
			ArrIndex = i;
			break;
		}
	}
	
	// 出発空港要素変数、到着空港要素変数の２つともが「０」以上の場合
	if( DepIndex >= 0 && ArrIndex >= 0 ) {
		// トップページの出発空港・到着空港の変更
		document.forms[0].boardingAirportCode.options[DepIndex].selected = true;
		document.forms[0].arrivalAirportCode.options[ArrIndex].selected = true;
	}
}