//*****************************************************************
//Please save this file with a character code "iso-8859-1".
//*****************************************************************

// [init]
var adt_number = "";
var chd_number = "";
var infants_number = "";
var member_no = "";
if (JLJS02.site.lang.isEN) {
	adt_number = "Adults (age 12 and older on the day of international departure)";
	chd_number = "Children (ages 2 - 11 on the day of international departure and infant occupying a seat)";
	infants_number =
			"Infants (younger than age 2 on the day of international departure and not occupying a seat)";
	member_no = '<img src="/common/img/icon_balloon_001.gif" width="52" height="30" alt="">Membership Number<br>(7 or 9 digits)'	
}else{
	adt_number = "\u5927\u4eba(12\u624d\u4ee5\u4e0a)&nbsp;&nbsp;&nbsp;&nbsp;(\u6d77\u5916\u65c5\u884c\u958b\u59cb\u65e5\u306e\u5e74\u9f62)";
	chd_number ="\u5c0f\u5150(2\u624d~11\u624d)&nbsp;&nbsp;&nbsp;&nbsp;(\u6d77\u5916\u65c5\u884c\u958b\u59cb\u65e5\u306e\u5e74\u9f62)&nbsp;&nbsp;&nbsp;&nbsp;(\u304a\u3088\u3073\u5ea7\u5e2d\u3092\u3054\u5229\u7528\u306e\u5e7c\u5150)";
	infants_number =			"\u5e7c\u5150(0\u624d~1\u624d)&nbsp;&nbsp;&nbsp;&nbsp;(\u6d77\u5916\u65c5\u884c\u958b\u59cb\u65e5\u306e\u5e74\u9f62)&nbsp;&nbsp;&nbsp;&nbsp;(\u4f46\u3057\u3001\u5ea7\u5e2d\u3054\u5229\u7528\u306e\u5e7c\u5150\u3092\u9664\u304f)";
	member_no = '<img src="/common/img/icon_balloon_001.gif" width="52" height="30" alt="">\u304a\u5f97\u610f\u69d8\u756a\u53f7<br>(7\u6841\u304b9\u6841)'
}

var JLJS_InfoBalloonData = {
	'member_no' : member_no,
	'FIELD_ADT_NUMBER1' : adt_number,
	'FIELD_CHD_NUMBER1' : chd_number,
	'FIELD_INFANTS_NUMBER1' : infants_number
};


//---------- [topModule] ----------
function JLJS_topModuleSetup() {

	var defaultAreaSlctSet1 = "";
	var defaultAreaSlctSet2 = "";
	var defaultArea1 = "TWN";
	var defaultArea2 = "JPN_07";
	var defaultCity1 = "TPE";
	var defaultCity2 = "TYO";
	var onLineOnly1 = 0;
	var onLineOnly2 = 0;
	var onLineSeparatingView_Off1 = 0;
	var onLineSeparatingView_Off2 = 0;
	var noAreaSelection1 = 1;
	var noAreaSelection2 = 1;
	var noGroup1 = 1;
	var noGroup2 = 1;
	var noDevide1 = 1;
	var noDevide2 = 1;
	var defaultDay_Outbound = 4;
	var defaultDay_Inbound = defaultDay_Outbound + 5;
	
	
	JLJS_TicketModuleSetup_Fp( [
		{ "areaSlctSet" : defaultAreaSlctSet1, "default" : [ defaultArea1, defaultCity1 ], "AMD" : 1, "onLineOnly" : onLineOnly1, "noAreaSelection" : noAreaSelection1, "onLineSeparatingView_Off" : onLineSeparatingView_Off1, "noGroup" : noGroup1, "noDevide" : noDevide1, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "areaSlctSet" : defaultAreaSlctSet2, "default" : [ defaultArea2, defaultCity2 ], "AMD" : 1, "onLineOnly" : onLineOnly2, "noAreaSelection" : noAreaSelection2, "onLineSeparatingView_Off" : onLineSeparatingView_Off2, "noGroup" : noGroup2, "noDevide" : noDevide2, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "default" : [ "today+" + defaultDay_Outbound, "today+" + defaultDay_Inbound ] },
		{ "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0, "isJumpingToOJPage" : 1, "OJ_URL" : "/en/flight_planning/reservation/oj/", "method" : "get" }
	] );
	
	for (var i=0;i<JLJS_AMDs.length;i++) {
		JLJS.addEvent( JLJS_AMDs[i].formNode["B_LOCATION_1"], "change", function( e ) {
				e.target.form._TM_instance_.changeBLocation();
		} );
	}

	if (JLJS02.site.lang.isEN){
		JLJS_AMDCAL.lang = "en";
	}else{
		JLJS_AMDCAL.lang = "ja";
	}

	JLJS_AMDCAL.url = "/world/fp/common/html/ticketModuleCalendar.html";
	
	JLJS_AMDs[0].setTopClass();
	
}
//---------- [/topModule] ----------

// [TOP_setHiddenPrm]
JLJS_ticketModule_Fp.prototype.setTopPrm = function(){
	this.formNode.action = this.formAction;
	this.formNode["amadeusAction"].value = this.amadeusAction;
	this.formNode["EMBEDDED_TRANSACTION"].value = "FlexPricerAvailability";
	this.formNode["SITE"].value = "CBCPCBCP";
	this.formNode["TRIP_FLOW"].value = "YES";
	this.formNode["DIRECT_LOGIN"].value = "NO";
	this.formNode["ARRANGE_BY"].value = "N";
	this.formNode["REFRESH"].value = "0";
	this.formNode["EXTERNAL_ID"].value = "JAL_SR_TW";
	this.formNode["DATE_RANGE_VALUE_1"].value = "3";
	this.formNode["DATE_RANGE_VALUE_2"].value = "3";
	this.formNode["DATE_RANGE_QUALIFIER_1"].value = "C";
	this.formNode["DATE_RANGE_QUALIFIER_2"].value = "C";
	this.formNode["SO_SITE_OFFICE_ID"].value = "TPEJL18AA";
	this.formNode["SO_GL"].value = '';	//"SO_GL" is made in a "imprtant notice" page.
	this.formNode["SO_SITE_DEFAULT_BILLING_COUN"].value = "TW";
	this.formNode["SO_SITE_MAIL_FROM"].value = "Japan Airlines Reservation <twnwebsales@jal.com>";
	this.formNode["SO_SITE_PNR_ADD_EMAIL1"].value = "Japan Airlines Reservation <twnwebsales@jal.com>";
	this.formNode["SO_SITE_POINT_OF_SALE"].value = "TPE";
	this.formNode["SO_SITE_POINT_OF_TICKETING"].value = "TPE";
	this.formNode["SO_FAILURE_QUEUE_OFFICE_ID"].value = "TPEJL1200";
	this.formNode["SO_QUEUE_OFFICE_ID"].value = "TPEJL1200";
	this.formNode["SO_SITE_MOP_CREDIT_CARD"].value = "TRUE";
	this.formNode["SO_SITE_MOP_EXT"].value = "FALSE";
	this.formNode["SO_SITE_CC_DIGIT_CODE"].value = "TRUE";
	this.formNode["SO_SITE_NO_CC_ELLIGIBILITY"].value = "TRUE";
	this.formNode["SO_SITE_SPECIFIC_CC_DIGIT_CO"].value = "TRUE";
	this.formNode["SO_SITE_MIN_AVAIL_DATE_SPAN"].value = "H100";
	this.formNode["SO_SITE_MINIMAL_TIME"].value = "H100";
	this.formNode["SO_SITE_MINIMAL_TIME_MODIF"].value = "H100";
	
	if (this.EN){
		this.formNode["LANGUAGE"].value = "GB";
	}else{
		this.formNode["LANGUAGE"].value = "JP";	
	}
	this.formNode["B_ANY_TIME_1"].value = "TRUE";

	if (this.tripType == "R") {
		this.formNode["B_ANY_TIME_2"].value = "TRUE";
	}
	if (this.formNode["IS_FLEXIBLE"].checked) {
		this.formNode["DISPLAY_TYPE"].value = "1";
	}else{
		this.formNode["DISPLAY_TYPE"].value = "2";
	}
	
	this.formNode["PRICING_TYPE"].value = "I";
	
	this.createAdditionalPrm();
}
// [/TOP_setHiddenPrm]

// [createAdditionalPrm]
JLJS_ticketModule_Fp.prototype.createAdditionalPrm = function(){
	
	while( this.additionalParameterBlock.firstChild ){
		this.additionalParameterBlock.removeChild( this.additionalParameterBlock.firstChild );
	}
	
	for( var i = 0; i < this.ADT; i ++ ) {
		var newINPUT = document.createElement( 'input' );
		newINPUT.type = "hidden";
		newINPUT.name = "TRAVELLER_TYPE_" + ( i + 1 );
		newINPUT.value = "ADT";
		this.additionalParameterBlock.appendChild( newINPUT );
	}
	
	for( var i = this.ADT; i < this.ADT + this.CHD; i ++ ) {
		var newINPUT = document.createElement( 'input' );
		newINPUT.type = "hidden";
		newINPUT.name = "TRAVELLER_TYPE_" + ( i + 1 );
		newINPUT.value = "CHD";
		this.additionalParameterBlock.appendChild( newINPUT );
	}

	for( var i = 0; i < this.INF; i ++ ) {
		var newINPUT = document.createElement( 'input' );
		newINPUT.type = "hidden";
		newINPUT.name = "HAS_INFANT_" + ( i + 1 );
		newINPUT.value = "TRUE";
		this.additionalParameterBlock.appendChild( newINPUT );
	}
}
// [/createAdditionalPrm]

JLJS_ticketModule_Fp.prototype.topClassList = null;
// [getTopClassList]
JLJS_ticketModule_Fp.prototype.getTopClassList = function(){
	if (this.EN) {
		this.topClassList = [["3TWECOL", "Economy"], ["3TWBIZF", "Business"]];
	}else{
		this.topClassList = [["3TWECOL", "\u30a8\u30b3\u30ce\u30df\u30fc"], ["3TWBIZF", "\u30d3\u30b8\u30cd\u30b9"]];
	}
}
// [/getTopClassList]

// [setTopClass]
JLJS_ticketModule_Fp.prototype.setTopClass = function(){
	var classNode = this.formNode["COMMERCIAL_FARE_FAMILY_1"];
	this.getTopClassList();
	classNode.options.length = 0;
	this.setOption(this.topClassList, classNode);
}
// [/setTopClass]

// [setOption]
JLJS_ticketModule_Fp.prototype.setOption = function(list, node){
	for (var i=0;i<list.length;i++) {
		var newOpt = document.createElement( 'option' );
		newOpt.value = list[i][0];
		newOpt.innerHTML = list[i][1];
		node.appendChild( newOpt );
	}
}
// [/setOption]

// [toggleOR]
JLJS_ticketModule_Fp.prototype.toggleOR = function(){
	
		this.getTripType();
		var value;
		if( typeof arguments[ 0 ] != "undefined" )
			value = arguments[ 0 ];
		else {
			var node = this.formNode[ "TRIP_TYPE" ];
			var type = node.type ? node.type : node[ 0 ].type;
			if( type != "radio" ) return;
		}
		
		if ( this.tripType == "O" ) {
			this.formNode[ "E_MONTH" ].disabled = true;
			this.formNode[ "E_DAY" ].disabled = true;
		}else{
			this.formNode[ "E_MONTH" ].disabled = false;
			this.formNode[ "E_DAY" ].disabled = false;
		}				
}
// [/toggleOR]

// [changeBLocation]
JLJS_ticketModule_Fp.prototype.changeBLocation = function(){	
	var b_locate = "B_LOCATION_1";
	var jpn = "JPN_07";
	var separateFlg = 0;
	var noGroupFlg = 1;
	var node = this.formNode[b_locate];
	var defaultArea = jpn;
	var defaultCity;
		
	if(node.value == "KHH"){
		defaultArea = "JPN_06";
		defaultCity = "";
	}else{
		defaultCity = "TYO";
	}
	
	JLJS_TicketModuleModify_Fp( [
		{  },
		{ "areaSlctSet" : "", "default" : [ defaultArea, defaultCity ], "AMD" : 1, "noGroup" : noGroupFlg, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0, "onLineSeparatingView_Off" : separateFlg },
		{ "narrowDownArgs" : "", "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 }
	] );
}
// [/changeBLocation]

//---------- [multiModule] ----------
function JLJS_multiModuleSetup() {

	var defaultAreaSlctSet1 = "";
	var defaultAreaSlctSet2 = "";
	var defaultArea1 = "TWN";
	var defaultArea2 = "JPN_07";
	var defaultCity1 = "TPE";
	var defaultCity2 = "TYO";
	var onLineOnly1 = 0;
	var onLineOnly2 = 0;
	var onLineSeparatingView_Off1 = 0;
	var onLineSeparatingView_Off2 = 1;
	var noAreaSelection1 = 1;
	var noAreaSelection2 = 0;
	var noGroup1 = 1;
	var noGroup2 = 1;
	var noDevide1 = 1;
	var noDevide2 = 0;
	var defaultDay_Outbound = 4;
	var defaultDay_Inbound = defaultDay_Outbound + 5;
	
	JLJS_MultiModuleSetup_Fp( [
		{ "areaSlctSet" : defaultAreaSlctSet1, "default" : [ defaultArea1, defaultCity1 ], "AMD" : 1, "onLineOnly" : onLineOnly1, "noAreaSelection" : noAreaSelection1, "onLineSeparatingView_Off" : onLineSeparatingView_Off1, "noGroup" : noGroup1, "noDevide" : noDevide1, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "areaSlctSet" : defaultAreaSlctSet2, "default" : [ defaultArea2, defaultCity2 ], "AMD" : 1, "onLineOnly" : onLineOnly2, "noAreaSelection" : noAreaSelection2, "onLineSeparatingView_Off" : onLineSeparatingView_Off2, "noGroup" : noGroup2, "noDevide" : noDevide2, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "areaSlctSet" : defaultAreaSlctSet2, "default" : [ defaultArea2, defaultCity2 ], "AMD" : 1, "onLineOnly" : onLineOnly2, "noAreaSelection" : noAreaSelection2, "onLineSeparatingView_Off" : onLineSeparatingView_Off2, "noGroup" : noGroup2, "noDevide" : noDevide2, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "areaSlctSet" : defaultAreaSlctSet1, "default" : [ defaultArea1, defaultCity1 ], "AMD" : 1, "onLineOnly" : onLineOnly1, "noAreaSelection" : noAreaSelection1, "onLineSeparatingView_Off" : onLineSeparatingView_Off1, "noGroup" : noGroup1, "noDevide" : noDevide1, "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0 },
		{ "defaultDate" : [ "today+" + defaultDay_Outbound, "today+" + defaultDay_Inbound ] },
		{ "EN" : ( JLJS02.site.lang.isEN ) ? 1 : 0, "method" : "get", "areaDisp" : 0 }
	] );
	
	JLJS_AMDs[0].formNode["TRIP_TYPE"].value = "M";
	JLJS_AMDs[0].formNode[ "stopoverCheck_1" ].value = "0";
	JLJS_AMDs[0].formNode[ "stopoverCheck_2" ].value = "0";

	JLJS_AMDs[0].add_setDefaultValue( 1, 1 );
	JLJS_AMDs[0].add_setDefaultValue( 2, 1 );
	
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_MONTH"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 1 );
	} );
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_DAY"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 1 );
	} );

	JLJS.addEvent( JLJS_AMDs[0].formNode["B_MONTH_SO_1"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 2 );
	} );
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_DAY_SO_1"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 2 );
	} );

	JLJS.addEvent( JLJS_AMDs[0].formNode["E_MONTH"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 3 );
	} );
	JLJS.addEvent( JLJS_AMDs[0].formNode["E_DAY"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 3 );
	} );

	JLJS.addEvent( JLJS_AMDs[0].formNode["B_MONTH_SO_2"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 4 );
	} );
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_DAY_SO_2"], "change", function( e ) {
		e.target.form._TM_instance_.add_adjustDates( 4 );
	} );

	JLJS_CALGP = new JLJS_Calendar_GeneralPurpose();

	JLJS.addEvent( document.getElementById( "TM_Calendar_1" ), "click", function() {
		JLJS_CALGP.click( "B_MONTH", "B_DAY", 1 );
	} );

	JLJS.addEvent( document.getElementById( "TM_Calendar_2" ), "click", function() {
		JLJS_CALGP.click( "B_MONTH_SO_1", "B_DAY_SO_1", 2 );
	} );

	JLJS.addEvent( document.getElementById( "TM_Calendar_3" ), "click", function() {
		JLJS_CALGP.click( "E_MONTH", "E_DAY", 3 );
	} );

	JLJS.addEvent( document.getElementById( "TM_Calendar_4" ), "click", function() {
		JLJS_CALGP.click( "B_MONTH_SO_2", "B_DAY_SO_2", 4 );
	} );
	
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_LOCATION_1"], "change", function( e ) {
			e.target.form._TM_instance_.changeBCity(1);
	} );
	JLJS.addEvent( JLJS_AMDs[0].formNode["B_LOCATION_2"], "change", function( e ) {
			e.target.form._TM_instance_.changeBCity(2);
	} );
	
	if (JLJS02.site.lang.isEN){
		JLJS_AMDCAL.lang = "en";
	}else{
		JLJS_AMDCAL.lang = "ja";
	}

}

// [changeBLocation]
JLJS_ticketModule_Fp.prototype.changeBCity = function( num ) {	
	var b_locate = "B_LOCATION_" + num;	
	var e_locate = "E_LOCATION_" + num;	
	var node = this.formNode[b_locate];
	var defaultArea;
	this.airportList = [];
	this.airportTable = {};
	this.airportTable.selectionSets = JLJS_TMAL.selectionSets;
	this.airportTable.globalAreas = JLJS_TMAL.globalAreas;
	this.airportTable.countries = JLJS_TMAL.countries;
	this.airportTable.cities = JLJS_TMAL.cities;

	switch( node.value ) {
		case "KHH":
			defaultArea = "JPN_06";
			break;
		case "TPE":
			defaultArea = "JPN_07";
			break;
		case "OSA":
			defaultArea = "TWN_02";
			break;
		case "NGO":
			defaultArea = "TWN_02";
			break;
		case "TYO":
			defaultArea = "TWN";
			break;
	}

	var countryList = this.airportTable.countries[ defaultArea ][ "list" ];
	var titleLang, values;
	
	for(var i=0; i<countryList.length; i++){
		titleLang = this.EN ? this.airportTable.cities[ countryList[i] ][ "title_E" ] : this.airportTable.cities[ countryList[i] ][ "title_J" ];
		values = this.airportTable.cities[ countryList[i] ][ "CD" ];
		
		this.airportList[i] = [];
		this.airportList[i][0] = values;
		this.airportList[i][1] = titleLang;
	}
	
	this.formNode[e_locate].options.length = 0;
	this.setOption(this.airportList, this.formNode[e_locate]);
}
// [/changeBLocation]

// [displaySo]
var openImg = new Image();
var closeImg = new Image();
openImg.src = "/world/common/img/icon_open_001.gif";
closeImg.src = "/world/common/img/icon_close_001.gif";
function JLJS_displaySo(num) {

	var imgElem = document.getElementById("soArea" + num + "_img");
	var imgText = document.getElementById("soArea" + num + "_text");

	var areaElem = document.getElementById("soArea" + num);
	var display = areaElem.style.display;
	var text = "";

	if(display == "none") {
		JLJS_AMDs[ 0 ].formNode[ "B_LOCATION_SO_" + num ].disabled = false;
		JLJS_AMDs[ 0 ].formNode[ "B_MONTH_SO_" + num ].disabled = false;
		JLJS_AMDs[ 0 ].formNode[ "B_DAY_SO_" + num ].disabled = false;
		areaElem.style.display = "";
		imgElem.src = closeImg.src;
		if (JLJS02.site.lang.isEN){
			text = "Cancel";
		}else{
			text = "\u3092\u89e3\u9664\u3059\u308b";
		}
		imgText.innerHTML = text;

		JLJS_AMDs[ 0 ].formNode[ "stopoverCheck_" + num ].value = 1;
	} else {
		areaElem.style.display = "none";
		imgElem.src = openImg.src;
		if (JLJS02.site.lang.isEN){
			text = "Make";
		}else{
			text = "\u3059\u308b";
		}
		imgText.innerHTML = text;
		JLJS_AMDs[ 0 ].formNode[ "B_LOCATION_SO_" + num ].disabled = true;
		JLJS_AMDs[ 0 ].formNode[ "B_MONTH_SO_" + num ].disabled = true;
		JLJS_AMDs[ 0 ].formNode[ "B_DAY_SO_" + num ].disabled = true;
		JLJS_AMDs[ 0 ].formNode[ "stopoverCheck_" + num ].value = 0;
	}
}
// [/displaySo]

//[Multi_CalenderSet]
JLJS_ticketModule_Fp.prototype.add_adjustDates = function( calendarNumber, onload ) {
	var oi_interval = 5;
	var d = new Date();
	var f = JLJS_AMDs[ 0 ].formNode;
	var M_node =
		calendarNumber == 1 ? f.elements[ "B_MONTH" ] :

		calendarNumber == 2 ? f.elements[ "B_MONTH_SO_1" ] :
		calendarNumber == 4 ? f.elements[ "B_MONTH_SO_2" ] :

		calendarNumber == 3 ? f.elements[ "E_MONTH" ] : null;
	var D_node =
		calendarNumber == 1 ? f.elements[ "B_DAY" ] :

		calendarNumber == 2 ? f.elements[ "B_DAY_SO_1" ] :
		calendarNumber == 4 ? f.elements[ "B_DAY_SO_2" ] :

		calendarNumber == 3 ? f.elements[ "E_DAY" ] : null;

	var M = M_node.selectedIndex;
	var D = D_node.selectedIndex + 1;
	var Y = M < d.getMonth() ? d.getFullYear() + 1 : d.getFullYear();

	var d0 = new Date( Y, M, D );
	var T0 = d0.getTime();

	var M_origin =
		calendarNumber == 2 ? f.elements[ "B_MONTH" ].selectedIndex :
		calendarNumber == 4 ? f.elements[ "E_MONTH" ].selectedIndex : null;
	var D_origin =
		calendarNumber == 2 ? f.elements[ "B_DAY" ].selectedIndex + 1 :
		calendarNumber == 4 ? f.elements[ "E_DAY" ].selectedIndex + 1 : null;
	var Y_origin = M_origin < d.getMonth() ? d.getFullYear() + 1 : d.getFullYear();
	var d_origin = new Date( Y_origin, M_origin, D_origin );
	var T_origin = d_origin.getTime();

	var interval = ( T0 - T_origin ) / ( 24 * 60 * 60 * 1000 );
	if( calendarNumber == 1 ) {
		var d = new Date( Y, M, D + 2 );

		f.elements[ "B_MONTH_SO_1" ].selectedIndex = d.getMonth();
		f.elements[ "B_DAY_SO_1" ].selectedIndex = d.getDate() - 1;

	}
	if( calendarNumber <= 2 ) {
		var node = JLJS_AMDs[ 0 ].formNode[ "stopoverCheck_1" ];
		var n = node && calendarNumber == 1 && node.checked ? 2 : 0;
		var d1 = new Date( Y, M, D + n + oi_interval );
		f.elements[ "E_MONTH" ].selectedIndex = d1.getMonth();
		f.elements[ "E_DAY" ].selectedIndex = d1.getDate() - 1;

		var d2 = new Date( Y, M, D + n + oi_interval + 2 );
		f.elements[ "B_MONTH_SO_2" ].selectedIndex = d2.getMonth();
		f.elements[ "B_DAY_SO_2" ].selectedIndex = d2.getDate() - 1;

	}
	if( calendarNumber == 3 ) {

		var d = new Date( Y, M, D + 2 );
		f.elements[ "B_MONTH_SO_2" ].selectedIndex = d.getMonth();
		f.elements[ "B_DAY_SO_2" ].selectedIndex = d.getDate() - 1;

	}
};

JLJS_ticketModule_Fp.prototype.add_setDefaultValue = function( n, onload ) {
	var defaultDay_Outbound = 4;
	var defaultDay_Inbound = defaultDay_Outbound + 5;

	if( n == 1 ) {

		var sel1 = JLJS_AMDs[ 0 ].formNode[ "B_MONTH_SO_1" ];
		var sel2 = JLJS_AMDs[ 0 ].formNode[ "B_DAY_SO_1" ];
		var S = new JLJS_DateSelector( sel1, sel2 );
		S.adjustToToday();
		S.applyOffset( '+' + ( defaultDay_Outbound + 2 ) + 'd' );

		var sel1 = JLJS_AMDs[ 0 ].formNode[ "B_MONTH_SO_2" ];
		var sel2 = JLJS_AMDs[ 0 ].formNode[ "B_DAY_SO_2" ];
		var S = new JLJS_DateSelector( sel1, sel2 );
		S.adjustToToday();
		S.applyOffset( '+' + ( defaultDay_Inbound + 2 ) + 'd' );

		var elmNames = [
			"B_LOCATION_1", "B_MONTH", "B_DAY",
			"E_LOCATION_1", "E_MONTH", "E_DAY",
			"FIELD_ADT_NUMBER", "FIELD_CHD_NUMBER", "FIELD_INFANTS_NUMBER"
		];

		for( var i = 0; i < elmNames.length; i ++ ) {
			var cookieVal = JLJS02.getValueFromCookie( elmNames[ i ] + "0" );
			if( ! cookieVal ) continue;
			if( elmNames[ i ].match( /^(B|E)_MONTH$/ )) cookieVal = Number( cookieVal.substring( 4, 6 ));

			var node = JLJS_AMDs[ 0 ].formNode[ elmNames[ i ]];
			for( var j = 0; j < node.options.length; j ++ ) {
				if( node.options[ j ].value == cookieVal ) {
					node.selectedIndex = j;
					if( elmNames[ i ] == "B_DAY" ) JLJS_AMDs[ 0 ].add_adjustDates( 1, onload );
					if( elmNames[ i ] == "E_DAY" ) JLJS_AMDs[ 0 ].add_adjustDates( 3, onload );
					break;
				}
			}
		}
	}
	else if( n == 2 ) {

		var elmNames = [[ "B_LOCATION_1", "E_LOCATION_2" ], [ "E_LOCATION_1", "B_LOCATION_2" ]];

		for( var i = 0; i < elmNames.length; i ++ ) {
			var cookieVal = JLJS02.getValueFromCookie( elmNames[ i ][ 0 ] + "0" );
			if( ! cookieVal ) continue;

			var node = JLJS_AMDs[ 0 ].formNode[ elmNames[ i ][ 1 ]];
			for( var j = 0; j < node.options.length; j ++ ) {
				if( node.options[ j ].value == cookieVal ) {
					node.selectedIndex = j;
					break;
				}
			}
		}
	}
};
//[/Multi_CalenderSet]

// [topSubmitCheck]
JLJS_ticketModule_Fp.prototype.topSubmitCheck = function() {
	var msg = "";
	return msg;
};
// [/topSubmitCheck]

// [Multi_setHiddenPrm]
JLJS_ticketModule_Fp.prototype.setMultiPrm = function(){
	this.formNode.action = this.formAction;
	this.formNode["amadeusAction"].value = this.amadeusAction;
	this.formNode["EMBEDDED_TRANSACTION"].value = "AirComplexAvailability";
	this.formNode["SITE"].value = "CBCPCBCP";
	this.formNode["TRIP_FLOW"].value = "YES";
	this.formNode["DIRECT_LOGIN"].value = "NO";
	this.formNode["B_ANY_TIME_1"].value = "TRUE";
	this.formNode["B_ANY_TIME_2"].value = "TRUE";
	this.formNode["ARRANGE_BY"].value = "N";
	this.formNode["SEVEN_DAY_SEARCH"].value = "TRUE";
	this.formNode["EXTERNAL_ID"].value = "JAL_SR_TW";
	this.formNode["SO_SITE_OFFICE_ID"].value = "TPEJL18AA";
	this.formNode["SO_GL"].value = '';	//"SO_GL" is made in a "imprtant notice" page.
	this.formNode["SO_SITE_DEFAULT_BILLING_COUN"].value = "TW";
	this.formNode["SO_SITE_MAIL_FROM"].value = "Japan Airlines Reservation <twnwebsales@jal.com>";
	this.formNode["SO_SITE_PNR_ADD_EMAIL1"].value = "Japan Airlines Reservation <twnwebsales@jal.com>";
	this.formNode["SO_SITE_POINT_OF_SALE"].value = "TPE";
	this.formNode["SO_SITE_POINT_OF_TICKETING"].value = "TPE";
	this.formNode["SO_FAILURE_QUEUE_OFFICE_ID"].value = "TPEJL1200";
	this.formNode["SO_QUEUE_OFFICE_ID"].value = "TPEJL1200";
	this.formNode["SO_SITE_MOP_CREDIT_CARD"].value = "TRUE";
	this.formNode["SO_SITE_MOP_EXT"].value = "FALSE";
	this.formNode["SO_SITE_CC_DIGIT_CODE"].value = "TRUE";
	this.formNode["SO_SITE_NO_CC_ELLIGIBILITY"].value = "TRUE";
	this.formNode["SO_SITE_SPECIFIC_CC_DIGIT_CO"].value = "TRUE";
	this.formNode["SO_SITE_MIN_AVAIL_DATE_SPAN"].value = "H100";
	this.formNode["SO_SITE_MINIMAL_TIME"].value = "H100";
	this.formNode["SO_SITE_MINIMAL_TIME_MODIF"].value = "H100";
	
	if (this.EN){
		this.formNode["LANGUAGE"].value = "GB";
	}else{
		this.formNode["LANGUAGE"].value = "JP";	
	}
	
	this.createAdditionalPrm();	
}
// [/Multi_setHiddenPrm]

// [multiSubmitCheck]
JLJS_ticketModule_Fp.prototype.multiSubmitCheck = function() {
	var msg = "";
	var b_locate = "";
	var e_locate = "";
	var errorFlg = false;
	
	if(this.formNode[ "stopoverCheck_1" ].value == 1){
		b_locate = this.formNode[ "B_LOCATION_1" ].options[ this.formNode[ "B_LOCATION_1" ].selectedIndex ].value;
		e_locate = this.formNode[ "E_LOCATION_1" ].options[ this.formNode[ "E_LOCATION_1" ].selectedIndex ].value;
		
		if(b_locate != "TPE" || e_locate != "TYO"){
			errorFlg = true;
		}
	}
	
	if(this.formNode[ "stopoverCheck_2" ].value == 1){
		b_locate = this.formNode[ "B_LOCATION_2" ].options[ this.formNode[ "B_LOCATION_2" ].selectedIndex ].value;
		e_locate = this.formNode[ "E_LOCATION_2" ].options[ this.formNode[ "E_LOCATION_2" ].selectedIndex ].value;
		
		if(b_locate != "TYO" || e_locate != "TPE"){
			errorFlg = true;
		}
	}
	
	if(errorFlg){
		msg = this.EN ? "* Stop Over in Osaka is applicable only when departing from Taipei to Tokyo, or from Tokyo to Taipei. Please choose the itinerary again.\n" : "* \u9014\u4e2d\u7d4c\u7531\u5730\u306b\u300c\u5927\u962a\u300d\u3092\u542b\u3080\u65c5\u7a0b\u306f\u3001\u767a\u7740\u5730\u304c\u300c\u53f0\u5317\u300d\u3068\u300c\u6771\u4eac\u300d\u3067\u306a\u3051\u308c\u3070\u306a\u308a\u307e\u305b\u3093\u3002\u65c5\u7a0b\u3092\u5909\u66f4\u3057\u518d\u8a66\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n";
	}
	
	return msg;
}
// [multiSubmitCheck]

//---------- [/multiModule] ----------


// [setHiddenPrm]
JLJS_ticketModule_Fp.prototype.setHiddenPrm = function(){
	if (this.pageType == "T") {
		this.setTopPrm();
	}else if(this.pageType == "M"){
		this.setMultiPrm();
	}
}
// [/setHiddenPrm]

// [private_submitCheck]
JLJS_ticketModule_Fp.prototype.private_submitCheck = function() {
	if (this.pageType == "T"){
		return this.topSubmitCheck();
	}else{
		return this.multiSubmitCheck();
	}
};
// [/private_submitCheck]