
var check_result = Array();

var asia_area_datas = [
	{
	mark: full_path+'img/cat_all_asia.gif',
	title: 'アジア',
	class_name: 'categoryTitle0',
	mid_area: [
		{ cd: 508,	name: '中国',				kanku: true,	nagoya: true,	extra_link: true,	cd_list: [485,486,487,491,492,493,494,496,497,498,439,440,442,443,444,445,446,447,448,435,436]},
//		{ cd: 511,	name: '香港&amp;マカオ',	kanku: true,	nagoya: false,	extra_link: false,	cd_list: [441,420]},
		{ cd: 509,	name: '韓国',				kanku: true,	nagoya: false,	extra_link: true,	cd_list: [489,490,495,419]},
//		{ cd: 499,	name: 'ベトナム',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: [266,211]},
		{ cd: 510,	name: '台湾',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: [400,401,402]}
//		{ cd: 503,	name: 'タイランド',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: ['403']},
//		{ cd: 500,	name: 'カンボジア',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('121')},
//		{ cd: 501,	name: 'ラオス',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('121')},
//		{ cd: 502,	name: 'ミャンマー',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('121')},
//		{ cd: 504,	name: 'シンガポール',		kanku: true,	nagoya: false,	extra_link: false,	cd_list: ['211']},
//		{ cd: 607,	name: 'インドネシア',		kanku: true,	nagoya: false,	extra_link: false,	cd_list: ['404']}
//		{ cd: 493,	name: 'インド',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: ['277']}
//		{ cd: 494,	name: 'ネパール',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('123')},
//		{ cd: 496,	name: 'パキスタン',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('123')},
//		{ cd: 498,	name: 'バングラディッシュ',	kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('123')},
//		{ cd: 707,	name: 'スリランカ',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('123')}
	]
	}
	,{
	mark: full_path+'img/cat_middle_east.gif',
	title: '中近東',
	class_name: 'categoryTitle1',
	mid_area: [
		{ cd: 515,	name: 'オマーン',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('405')},
		{ cd: 699,	name: 'カタール',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: [407,405]},
//		{ cd: 795,	name: 'エジプト',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: ['274']},
//		{ cd: 491,	name: '地中海・アフリカ',	kanku: true,	nagoya: false,	extra_link: false,	cd_list: [275,276]},
		{ cd: 701,	name: 'アラブ首長国連邦',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: [405,427]}
	]
	}
/*	{
	mark: full_path+'img/cat_europe.gif',
	title: 'ヨーロッパ',
	class_name: 'categoryTitle2',
	mid_area: [
//		{ cd: 730,	name: 'ギリシャ',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('122')},
//		{ cd: 732,	name: 'スウェーデン',		kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('122')},
		{ cd: 734,	name: 'フランス',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('134')},
//		{ cd: 736,	name: 'デンマーク',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('122')},
		{ cd: 738,	name: 'イタリア',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('134')},
		{ cd: 740,	name: 'ドイツ',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('134')},
		{ cd: 742,	name: 'イギリス',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('134')},
//		{ cd: 744,	name: 'スペイン',			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('122')},
//		{ cd: 746,	name: 'ドイツ', 			kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('122')},
		{ cd: 748,	name: 'スイス',				kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('134')}
	]
	}
	,{
	mark: full_path+'img/cat_oceania.gif',
	title: 'オセアニア',
	class_name: 'categoryTitle3',
	mid_area: [
		{ cd: 754,	name: 'オーストラリア',		kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('124')},
		{ cd: 759,	name: 'ニュージーランド',	kanku: true,	nagoya: false,	extra_link: false,	cd_list: Array('124')}
	]
	}
*/
];

var seekAreaName = function(area_num){
	var work_data = Array();
	for(i=0; i<asia_area_datas.length; i++){
		for(j=0; j<asia_area_datas[i].mid_area.length; j++){
			if (asia_area_datas[i].mid_area[j].cd == area_num){
				work_data = {
					class_name: asia_area_datas[i].class_name,
					title: asia_area_datas[i].title,
					name: asia_area_datas[i].mid_area[j].name
				};
				break;
			}
		}
	}
	return work_data;
}

var listInit = function(){
	var qsParm = loadParam();
	if (qsParm.cd){
		areaListIndex(qsParm.cd);
		elem('headButtonArea').style.display = 'none';
		elem('footButtonArea').innerHTML = makeHeadButton();
	} else {
		checkListIndex();
		elem('headButtonArea').innerHTML = makeHeadButton();
		elem('footButtonArea').style.display = 'none';
	}
}

var full_path = '../';
var focus_country = 0;

var areaListIndex = function(areaNum){
	focus_country = areaNum;
	var send_pg = full_path + 'list_index.php';
	var send_param = {
		method: 'post',
		parameters: 'md=areaList2&cd='+areaNum,
		onComplete: makeAreaIndex
	};
	if (focus_country){
		new Ajax.Request(send_pg, send_param);
	}
}

var checkListIndex = function(){
	var send_datas = Array();
	var count = 0;
	for(i=0; i<asia_area_datas.length; i++){
		var mid_area_data = asia_area_datas[i].mid_area;
		for(j=0; j<mid_area_data.length; j++){
			var area_detail = mid_area_data[j];
			send_datas.push('data'+count+'='+area_detail.cd+'-'+area_detail.cd_list.join('|'));
			count++;
		}
	}
	var send_pg = full_path + 'list_index.php';
	var send_param = {
		method: 'post',
		parameters: 'md=checkList2&'+send_datas.join('&'),
		onComplete: makeListIndex
	};
	new Ajax.Request(send_pg, send_param);
}

var plusRand = function(){
	return '&rand='+Math.floor(Math.random() * 1000000);
}

var myFormatNumber = function(x) {
	var s = "" + x;
	var p = s.indexOf(".");
	if (p < 0) {
		p = s.length;
	}
	var r = s.substring(p, s.length);
	for (var i = 0; i < p; i++) {
		var c = s.substring(p - 1 - i, p - 1 - i + 1);
		if (c < "0" || c > "9") {
			r = s.substring(0, p - i) + r;
			break;
		}
		if (i > 0 && i % 3 == 0) {
			r = "," + r;
		}
		r = c + r;
	}
	return r;
}

var loadParam = function(){
	var query = window.location.search.substring(1);
	var temp = Array();
	var parms = query.split('&');
	for (var i=0; i<parms.length; i++) {
		var pos = parms[i].indexOf('=');
		if (pos > 0){
			var key = parms[i].substring(0,pos);
			var val = parms[i].substring(pos+1);
			temp[key] = val;
		}
	}
	return temp;
}

var makeAreaIndex = function(str){
	var result = str.responseText;
	var resultData = eval("(" + result + ")");
	var airport_html = ' <img src="../img/kanku.gif" alt="関空発" />';
	var out_html = '';

	var details = seekAreaName(focus_country);

	out_html += '<h3 class="'+details.class_name+'">'+details.title+' <span>'+details.name+'</span>'+airport_html+'</h3>';
	out_html += '<table summary="目的地,発地,内容,価格">';
	out_html += '<tr><th scope="col">目的地</th><th scope="col">発地</th><th scope="col">内容</th><th scope="col">価格</th></tr>';
	for(i=0; i<resultData.length; i++) out_html += listHtml(resultData[i]);
	out_html += '</table>';
	out_html += '<p class="pageTop"><a href="#wrapper" title="このページの上まで戻る"><img src="../img/arw_pagetop.gif" alt="" />このページの上まで戻る</a></p>';

	elem('listIndexArea').innerHTML = out_html;
	
	var now_url = window.location.hash.substr(1);
	if (now_url){
		var pos = Position.positionedOffset($(now_url));
		window.scrollTo(0, pos[1]);
	}
}

var makeListIndex = function(str){
	var result = str.responseText;
	var resultData = eval("(" + result + ")");
	var airport_html = {
		kanku: ' <img src="../img/kanku.gif" alt="関空発" />',
		nagoya: ' <img src="../img/nagoya.gif" alt="名古屋発" />'
	}
	var out_html = '';
	for(i=0; i<asia_area_datas.length; i++){
		var big_area_data = asia_area_datas[i];
		var mid_area_data = big_area_data.mid_area;


		for(j=0; j<mid_area_data.length; j++){
			check_result = Array();
			var id_name = 'b'+i+'m'+j;
			var area_detail = mid_area_data[j];
			out_html += '<h3 id="'+id_name+'" class="'+big_area_data.class_name+'">'+big_area_data.title+' <span>'+area_detail.name+'</span>';
			if (area_detail.kanku) out_html += airport_html.kanku;
			if (area_detail.nagoya) out_html += airport_html.nagoya;
			out_html += '</h3>';
			if (area_detail.extra_link) out_html += '<p class="ichiran"><a href="index.html?cd='+area_detail.cd+'"><img src="../img/ichiran.gif" alt="一覧" /></a></p>';
			out_html += '<table summary="目的地,発地,内容,価格">';
			out_html += '<tr><th scope="col">目的地</th><th scope="col">発地</th><th scope="col">内容</th><th scope="col">価格</th></tr>';
			
			var sort_list = Array();
			for(k=0; k<resultData[area_detail.cd].length; k++) sort_list[resultData[area_detail.cd][k].sid] = k;
			for(num = 0; num<area_detail.cd_list.length; num++){
				if ((sort_list[area_detail.cd_list[num]])||(sort_list[area_detail.cd_list[num]] == 0)){
					out_html += listHtml(resultData[area_detail.cd][sort_list[area_detail.cd_list[num]]]);
				}
			}
			out_html += '</table>';
			out_html += '<p class="pageTop"><a href="#wrapper" title="このページの上まで戻る"><img src="../img/arw_pagetop.gif" alt="" />このページの上まで戻る</a></p>';
			out_html += '<p class="hidden">'+check_result.join(',')+'</p>';
		}
	}
	elem('listIndexArea').innerHTML = out_html;
}

var listHtml = function(temp_data){
	var temp_html = '<tr>';
	temp_html += '<td class="arrive">'+temp_data.arrive_datas+'</td>';
	temp_html += '<td class="departure">'+temp_data.departure+'</a></td>';
	temp_html += '<td class="title"><a href="'+full_path+'ticket/detail.php?sid='+temp_data.sid+'">'+temp_data.main_ttl+'</a></td>';
	temp_html += '<td class="price">&yen;';
	temp_html += (temp_data.price_min == temp_data.price_max) ? myFormatNumber(temp_data.price_min): myFormatNumber(temp_data.price_min)+'～&yen;'+myFormatNumber(temp_data.price_max);
	temp_html += '</td>';
	temp_html += '</tr>';
	check_result.push(temp_data.sid);
	return temp_html;
}

var makeHeadButton = function(){
	var out_html = '';
	for(i=0; i<asia_area_datas.length; i++){
		if (i == 0) out_html += '<dl id="categoryLinkAdj0" class="categoryLink clearfix">';
		else out_html += '<dl class="categoryLink clearfix">';
		
		var big_area_data = asia_area_datas[i];
		out_html += '<dt><img src="'+big_area_data.mark+'" alt="'+big_area_data.title+'" /></dt>';
		
		var mid_area_data = big_area_data.mid_area;
		
		if (mid_area_data.length){
			out_html += '<dd>';
			out_html += '<ul>';
		}
		for(j=0; j<mid_area_data.length; j++){
			var id_name = 'b'+i+'m'+j;
			var area_detail = mid_area_data[j];
			out_html += '<li><a href="'+full_path+'ticket/#'+id_name+'">'+area_detail.name+'</a></li>';
		}
		if (mid_area_data.length){
			out_html += '</ul>';
			out_html += '</dd>';
		}
		
		out_html += '</dl>';
		
	}
	return out_html;
}

addEvent(window, 'load', listInit);
