var JLJS_IFSC_airportList = {
	
	selectionSets : {
		"default" : {
				"ja" : ["NRT", "HND", "KIX", "NGO", "FUK", "SPK", "KIJ", "KMQ", "MYJ", "KOJ", "OKA", "---", "HNL", "KOA", "LAX", "BOS", "SFO", "ORD", "DFW", "JFK", "YVR", 
						"MEX", "GRU", "---", "LHR", "FRA", "AMS", "CDG", "HEL", "FCO", "MXP", "DME", "DXB", "---", "CNS", "BNE", "SYD", "OOL", "AKL", "GUM", "ROR",
						"PPT", "---", "SIN", "KUL", "CGK", "DPS", "DEL", "MNL", "HAN", "SGN", "BKK", "---", "PEK", "SHE", "DLC", "TSN", "SHA", "PVG", "XIY", "CTU", 
						"TAO", "NKG", "CAN", "HKG", "---", "GMP", "ICN", "PUS", "CJU", "---", "TPE", "TSA", "KHH"],
				"en" : ["AMS", "AKL", "BKK", "PEK", "BOS", "BNE", "PUS", "ORD", "CNS", "DLC", "DFW", "DEL", "DPS", "DXB", "FRA", "FUK", "OOL", "GUM", "CAN", "HAN", "HEL",
						"SGN", "HKG", "HNL", "CGK", "CJU", "KOJ", "KOA", "KHH", "KMQ", "KUL", "CTU", "LHR", "LAX", "MNL", "MYJ", "MEX", "MXP", "DME", "NGO", "NKG",
						"JFK", "KIJ", "OKA", "KIX", "ROR", "PPT", "CDG", "TAO", "FCO", "SFO", "GRU", "SPK", "GMP", "ICN", "PVG", "SHA", "SHE", "SIN", "SYD", "TSA", 
						"TPE", "TSN", "NRT", "HND", "YVR", "XIY"]
		}
	},
	
	cities : {
		"---" : {"cd" : "123", "ja" : "---------------", "en" : "---------------"},
		
		"AKL" : {"cd" : "AKL", "ja" : "??????????", "en" : "Auckland"},
//		"AMS" : {"cd" : "AMS", "ja" : "???????????", "en" : "Amsterdam"},
		"BKK" : {"cd" : "BKK", "ja" : "????????", "en" : "Bangkok"},
//		"BNE" : {"cd" : "BNE", "ja" : "?????????", "en" : "Brisbane"},
		"BOS" : {"cd" : "BOS", "ja" : "????·????????", "en" : "Boston"},
		"CAN" : {"cd" : "CAN", "ja" : "??????", "en" : "Guangzhou"},
		"CDG" : {"cd" : "CDG", "ja" : "??·????????????", "en" : "Paris"},
		"CGK" : {"cd" : "CGK", "ja" : "?????????", "en" : "Jakarta"},
//		"CHC" : {"cd" : "CHC", "ja" : "?????????????", "en" : "Christchurch"},
//		"CJU" : {"cd" : "CJU", "ja" : "??????", "en" : "Jeju"},
//		"CNS" : {"cd" : "CNS", "ja" : "????????", "en" : "Cairns"},
//		"CTU" : {"cd" : "CTU", "ja" : "??????", "en" : "Kunming"},
		"DEL" : {"cd" : "DEL", "ja" : "???????", "en" : "Delhi"},
		"DFW" : {"cd" : "DFW", "ja" : "??????????????", "en" : "Dallas"},
		"DLC" : {"cd" : "DLC", "ja" : "??????", "en" : "Dalian"},
		"DME" : {"cd" : "DME", "ja" : "????·???????????", "en" : "Moscow"},
//		"DPS" : {"cd" : "DPS", "ja" : "??????????", "en" : "Denpasar"},
		"DXB" : {"cd" : "DXB", "ja" : "???????", "en" : "Dubai"},
//		"FCO" : {"cd" : "FCO", "ja" : "???·???????????", "en" : "Rome"},
		"FRA" : {"cd" : "FRA", "ja" : "???????????", "en" : "Frankfurt"},
		"FUK" : {"cd" : "FUK", "ja" : "????", "en" : "Fukuoka"},
		"GMP" : {"cd" : "GMP", "ja" : "??????????", "en" : "Seoul Gimpo"},
//		"GRU" : {"cd" : "GRU", "ja" : "?????????", "en" : "Sao Paulo"},
		"GUM" : {"cd" : "GUM", "ja" : "???????", "en" : "Guam"},
		"HAN" : {"cd" : "HAN", "ja" : "???????", "en" : "Hanoi"},
		"HEL" : {"cd" : "HEL", "ja" : "?????·?????????", "en" : "Helsinki"},
		"HGH" : {"cd" : "HGH", "ja" : "??????", "en" : "Hangzhou"},
		"HKG" : {"cd" : "HKG", "ja" : "??????", "en" : "Hong Kong"},
		"HND" : {"cd" : "HND", "ja" : "??(??????)", "en" : "Tokyo Haneda"},
		"HNL" : {"cd" : "HNL", "ja" : "????????", "en" : "Honolulu"},
		"ICN" : {"cd" : "ICN", "ja" : "????????????", "en" : "Seoul Incheon"},
		"JFK" : {"cd" : "JFK", "ja" : "???·F·????????", "en" : "New York"},
		"KHH" : {"cd" : "KHH", "ja" : "??????", "en" : "Kaohiung"},
		"KIJ" : {"cd" : "KIJ", "ja" : "????", "en" : "Niigata"},
		"KIX" : {"cd" : "KIX", "ja" : "??????", "en" : "Osaka"},
		"KMQ" : {"cd" : "KMQ", "ja" : "????", "en" : "Komatsu"},
//		"KOA" : {"cd" : "KOA", "ja" : "??????", "en" : "Kona"},
		"KOJ" : {"cd" : "KOJ", "ja" : "?????", "en" : "Kagoshima"},
		"KUL" : {"cd" : "KUL", "ja" : "????????????", "en" : "Kuala Lumpur"},
		"LAX" : {"cd" : "LAX", "ja" : "??????????", "en" : "Los Angeles"},
		"LHR" : {"cd" : "LHR", "ja" : "????·?????????", "en" : "London"},
		"MEX" : {"cd" : "MEX", "ja" : "???????????", "en" : "Mexico City"},
		"MNL" : {"cd" : "MNL", "ja" : "???????", "en" : "Manila"},
//		"MXP" : {"cd" : "MXP", "ja" : "???·?????????", "en" : "Milan"},
//		"MYJ" : {"cd" : "MYJ", "ja" : "????", "en" : "Matsuyama"},
		"NGO" : {"cd" : "NGO", "ja" : "??????", "en" : "Nagoya"},
//		"NKG" : {"cd" : "NKG", "ja" : "??????", "en" : "Nanjing"},
		"NRT" : {"cd" : "NRT", "ja" : "??(??????)", "en" : "Tokyo Narita"},
		"OKA" : {"cd" : "OKA", "ja" : "????", "en" : "Okinawa"},
//		"OOL" : {"cd" : "OOL", "ja" : "????????????", "en" : "Gold Coast"},
		"ORD" : {"cd" : "ORD", "ja" : "??????????", "en" : "Chicago"},
		"PEK" : {"cd" : "PEK", "ja" : "??????", "en" : "Beijing"},
		"PPT" : {"cd" : "PPT", "ja" : "????·???????", "en" : "Papeete"},
		"PUS" : {"cd" : "PUS", "ja" : "??????", "en" : "Busan"},
		"PVG" : {"cd" : "PVG", "ja" : "????????", "en" : "Shanghai Pudong"},
		"ROR" : {"cd" : "ROR", "ja" : "???????", "en" : "Palau"},
		"SFO" : {"cd" : "SFO", "ja" : "????????????", "en" : "San Francisco"},
		"SGN" : {"cd" : "SGN", "ja" : "?????????", "en" : "Ho Chi Minh City"},
		"SHA" : {"cd" : "SHA", "ja" : "????????", "en" : "Shanghai Hongqiao"},
//		"SHE" : {"cd" : "SHE", "ja" : "??????", "en" : "Shenyang"},
		"SIN" : {"cd" : "SIN", "ja" : "??????????", "en" : "Singapore"},
		"SPK" : {"cd" : "SPK", "ja" : "??(?????)", "en" : "Sapporo"},
		"SYD" : {"cd" : "SYD", "ja" : "????????", "en" : "Sydney"},
		"TAO" : {"cd" : "TAO", "ja" : "??????", "en" : "Qingdao"},
		"TPE" : {"cd" : "TPE", "ja" : "????????", "en" : "Taipei Taoyuan"},
		"TSA" : {"cd" : "TSA", "ja" : "????????", "en" : "Taipei SongShan"},
		"TSN" : {"cd" : "TSN", "ja" : "??????", "en" : "Tianjin"},
//		"XIY" : {"cd" : "XIY", "ja" : "??????", "en" : "Xi An"},
		"XMN" : {"cd" : "XMN", "ja" : "??????", "en" : "Xiamen"},
		"YVR" : {"cd" : "YVR", "ja" : "??????????", "en" : "Vancouver"}
	}
	
};

function JLJS_IntFlightStatusControl() {
	this.FRM_NAME = "flightStatusFrm";
	this.DEP_NAME = "depAirportCode";
	this.ARR_NAME = "arrAirportCode";
	
	this.DEFAULT_SLCT_SET = "default";
	
	this.LANG_JA = "ja";
	this.LANG_EN = "en";
	
	
	this.DEFAULT_ARGS = {slctSet : this.DEFAULT_SLCT_SET, lang : this.LANG_JA};
}

JLJS_IntFlightStatusControl.prototype = {
	
	/**
	 * args : [{slctSet : "", dep : "", arr : ""}]
	 */
	setup_ja : function(args) {
		
		if(!args) {
			args = this.DEFAULT_ARGS;
		} else if(!args.slctSet) {
			args.slctSet = this.DEFAULT_SLCT_SET;
		}
		args.lang = this.LANG_JA;
		this.setup(args);
		
	},
	
	/**
	 * args : [{slctSet:"", dep:"", arr:""}]
	 */
	setup_en : function(args) {
		
		if(!args) {
			args = this.DEFAULT_ARGS;
		} else if(!args.slctSet) {
			args.slctSet = this.DEFAULT_SLCT_SET;
		}
		args.lang = this.LANG_EN;
		this.setup(args);

	},
	
	/**
	 * args : [{slctSet : "", dep : "", arr : "", lang : ""}]
	 */
	setup : function(args) {
		
		var frm = document[this.FRM_NAME];
		if(frm && frm[this.DEP_NAME] && frm[this.ARR_NAME]) {
			
			if(!args) {
				args = this.DEFAULT_ARGS;
			} else {
				if(!args.slctSet) {
					args.slctSet = this.DEFAULT_SLCT_SET;
				}
				if(!args.lang) {
					args.lang = this.LANG_JA;
				}
			}
			
			var data = JLJS_IFSC_airportList.selectionSets[args.slctSet];
			if(data) {

				var list = data[args.lang];
				if(list) {
					
					frm[this.DEP_NAME].length = 0;
					frm[this.ARR_NAME].length = 0;
					
					for(var i=0; i<list.length; i++) {
						
						var city = JLJS_IFSC_airportList.cities[list[i]];
						if(city) {

							frm[this.DEP_NAME].options[frm[this.DEP_NAME].length] = new Option(city[args.lang], city.cd);;
							frm[this.ARR_NAME].options[frm[this.ARR_NAME].length] =  new Option(city[args.lang], city.cd);
							
							if(city.cd == args.dep) {
								frm[this.DEP_NAME].options[frm[this.DEP_NAME].length - 1].selected = true;	
							}
							if(city.cd == args.arr) {
								frm[this.ARR_NAME].options[frm[this.ARR_NAME].length - 1].selected = true;	
							}
							
						}
						
					}
					
				}
				
			}
			
		}
	}
	
}

var JLJS_IFSC = new JLJS_IntFlightStatusControl();

