jQuery.noConflict();

jQuery(document).ready(function(){
	//alert(location.hash);
	var year = null;
	var month = null;
	if(location.hash){
		var arr = location.hash.split("#").join("").split("_");
		if(!isNaN(arr[0]) && !isNaN(arr[1])){
			//値が数値として有効な場合のみセットする
			year = arr[0];
			month = arr[1];
		}
	}
	dispSchedule(year, month);
});

function searchExhibition(evt){
	//alert(evt.data.sKeyword);
	document.scheduleForm.sKeyword.value = evt.data.sKeyword;
	document.scheduleForm.submit();
	return true;
}

function goExhibition(evt){
	document.scheduleForm.goodsKey.value = evt.data.goodsKey;
	document.scheduleForm.submit();
	return true;

	jQuery.ajax({
		async : false,
		url : "/add/1153868028063/",
		data : {
			goodsKey : goodsKey
		}
	});
}

function reset(){
	jQuery("#schedule_current").empty();
	jQuery("#schedule_areas").empty();
	jQuery("#schedule_list").empty();
	jQuery("#schedule_current").text("ロード中です。しばらく待ちください...");
}

function onError(){
	reset();
	jQuery("#schedule_list").text("エラーが発生しました。恐れ入りますがしばらくしてから再度お試しください。");
}

function changeMonth(evt){
	//alert(evt.data.year + "/" + evt.data.month + "を表示");
	dispSchedule(evt.data.year, evt.data.month);
}

function dispSchedule(year, month){
	reset();
	var now;
	if(year != null && month != null){
		now = new Date(year, month - 1);
	}else{
		now = new Date();
	}
	var thisMonday = new Date(now.getFullYear(), now.getMonth(), now.getDate());
	var scheduleFileName = "/user_file/poppop-sh/schedule/" + String(thisMonday.getFullYear()) + String(thisMonday.getMonth() + 1) + ".txt";
	//alert(scheduleFileName);

	jQuery.ajax({
		url : scheduleFileName,
		dataType : "text",
		timeout : 10000,
		error : onError,
		success : function(data , status){
			//var now = new Date(2008, 0, 1);
			
			var currentArea;//現在の都道府県を格納しておく変数
			var currentAreaNumber = 0;//現在の都道府県番号を格納しておく変数。都道府県ごとのラベルのidに利用する
			var currentAreaExibitionNumber = 0;//現在の都道府県番号の展示会の数を格納する。

			jQuery("#schedule_list").empty();//ロード中のテキスト消去

			var previousMonth = new Date(now.getFullYear(), now.getMonth() - 1, 1);
			var nextMonth = new Date(now.getFullYear(), now.getMonth() + 1, 1);
			
			/*
			jQuery("#schedule_current").append(
				jQuery("<a id='schedule_previous'>&lt;前月</a>").css("float", "left").bind("click", {year : previousMonth.getFullYear(), month : previousMonth.getMonth() + 1}, changeMonth)
			).append(
				jQuery("<a id='schedule_next'>次月&gt;</a>").css("float", "right").bind("click", {year : nextMonth.getFullYear(), month : nextMonth.getMonth() + 1}, changeMonth)
			).append(
				jQuery("<strong>" + now.getFullYear() + "年" + (now.getMonth() + 1) + "月</strong>")
			);
			*/
			jQuery("#schedule_current").empty().append(
				jQuery("<a id='schedule_previous'>&lt;前月</a>").css("float", "left")
			).append(
				jQuery("<a id='schedule_next'>次月&gt;</a>").css("float", "right")
			).append(
				jQuery("<strong>" + now.getFullYear() + "年" + (now.getMonth() + 1) + "月</strong>")
			);

			var arr1 = data.split("\n");

			for(var i=0; i<arr1.length; i++){
				var arr2 = arr1[i].split("\t");

				if(!arr2[0]){
					//データなし（空白行）の場合はスキップ
					continue;
				}

				/*
				arr2のインデックスと対応する情報
				0 : 年
				1 : 月
				2 : 日
				3 : 都道府県
				4 : 会期
				5 : 展示会名
				6 : 展示会名（英語）
				7 : 展示会HP URL
				8 : 会場名
				9 : 会場HP URL
				10 : 入場方法
				11 : 入場方法（英語）
				12 : 照会先
				13 : 照会先（英語）
				14 : 照会先電話番号
				15 : 検索用名称
				*/

				if(currentArea != arr2[3]){

					currentArea = arr2[3];
					currentAreaNumber++;
					currentAreaExibitionNumber = 0;
					if(currentAreaNumber > 1){
						jQuery("#schedule_list").append(
							jQuery("<div class='up'><a href='#schedule_list_container'>▲上へ</a></div>")
						);
					}
					jQuery("#schedule_list").append(
						jQuery("<div class='schedule_area' id='area" + currentAreaNumber + "'></div>").text(arr2[3])
					);
					jQuery("#schedule_areas").append(
						jQuery("<a href='#" + "area" + currentAreaNumber + "' id='arealink" + currentAreaNumber + "'>" + arr2[3] + "</a>").append(" (<span class='num'></span>)")
					);
				}
				currentAreaExibitionNumber++;
				jQuery("#arealink" + currentAreaNumber + " .num").text(currentAreaExibitionNumber);

				//alert("表示");
				var exhibition_place = arr2[9] != "" ? "<a href='" + arr2[9] + "' target='_blank'>" + arr2[8] + "</a>" : arr2[8];
				var exhibition_name = arr2[7] != "" ? "<a href='" + arr2[7] + "' target='_blank'>" + arr2[5] + "</a>" : arr2[5];
				var exhibition_name_e = arr2[7] != "" ? "<a href='" + arr2[7] + "' target='_blank'>" + arr2[6] + "</a>" : arr2[6];
				
				jQuery("#schedule_list").append(
					jQuery("<div class='exhibition'></div>").append(
						jQuery("<div class='exhibition_header'></div>").append(
							jQuery("<div class='exhibition_term'>" + now.getFullYear() + "年" + arr2[4] + "</div>")
						)
						.append(
							jQuery("<div class='exhibition_place'>" + exhibition_place + "</div>")
						)
					).append(
						jQuery("<div class='exhibition_name'>" + exhibition_name + "</div>")
					).append(
						jQuery("<div class='exhibition_name_e'>" + exhibition_name_e + "</div>")
					).append(
						jQuery("<table cellspacing='0' cellpadding='0' border='0' class='exhibition_table'></table>").append(
							jQuery("<tbody></tbody>").append(
								jQuery("<tr></tr>").append(
									jQuery("<th></th>").text("照会先")
								).append(
									jQuery("<td></td>").append(arr2[12] + "<br>" + arr2[14])
								)
							).append(
								jQuery("<tr></tr>").append(
									jQuery("<th></th>").text("入場方法")
								).append(
									jQuery("<td></td>").append(arr2[10]).append(
										jQuery("<small></small>").text((arr2[11] ? " （" + arr2[11] + "）" : ""))
									)
								)
							)
						)
					
					).append(
						jQuery("<div class='exhibition_link'></div>").append(
							jQuery("<span></span>").css({fontWeight : "normal"})
							/*.append(
								" （"
							).append(
								jQuery("<a>評価ページへ</a>").css({textDecoration : "underline", cursor : "pointer", color : "blue"}).bind("click", {sKeyword : arr2[15]}, searchExhibition)
							).append(
								"）"
							)*/
						)
					)
				);

			}//for

			//最後にも「上へ」のリンクを設置
			jQuery("#schedule_list").append(
				jQuery("<div class='up'><a href='#schedule_list_container'>▲上へ</a></div>")
			);

			//前月・次月のリンク設定。ファイルが存在する場合だけリンクを設定する。
			jQuery.ajax({
				url : "/user_file/poppop-sh/schedule/" + String(previousMonth.getFullYear()) + String(previousMonth.getMonth() + 1) + ".txt",
				dataType : "text",
				timeout : 5000,
				success : function(){
					jQuery("#schedule_previous")
						.bind("click", {year : previousMonth.getFullYear(), month : previousMonth.getMonth() + 1}, changeMonth)
						.attr("class", "valid")
				}
			});
			
			jQuery.ajax({
				url : "/user_file/poppop-sh/schedule/" + String(nextMonth.getFullYear()) + String(nextMonth.getMonth() + 1) + ".txt",
				dataType : "text",
				timeout : 5000,
				success : function(){
					jQuery("#schedule_next")
						.bind("click", {year : nextMonth.getFullYear(), month : nextMonth.getMonth() + 1}, changeMonth)
						.attr("class", "valid")
				}
			});
		
		}
	});
}