window.onload = function() {
	today = new Date();
	var dateRange = { mindate:(today.getMonth() + 1)+"/"+today.getDate()+"/"+today.getFullYear(), maxdate:(today.getMonth() + 4)+"/"+today.getDate()+"/"+today.getFullYear(), close:false };
        var calObj = new YAHOO.widget.Calendar("calObj","calendarContainer",dateRange);

        //calObj.render();

        //calObj.renderEvent.subscribe(CalFairAssign, calObj, true);
        calObj.selectEvent.subscribe(RenderFair, calObj, true);
	calObj.changePageEvent.subscribe(changePage, calObj, true);

        calObj.render();

	//初月分の表示処理
	var url = 'http://' + location.host +'/?feed=fairmonthly&fday=' + today.getFullYear()+"/"+(today.getMonth() + 1)+"/"+today.getDate() + "&now=" + today.getTime();
	YAHOO.util.Connect.asyncRequest('GET',url, {
		success: function(o){

			var json = eval("("+o.responseText+")");
			
			if(json[0] != null){
			    if(json[0].value){
				    for (var i = 0; i < json.length; i++) {
						YAHOO.util.Dom.setStyle(YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0],"background-color", json[i].value);
						YAHOO.util.Dom.addClass(YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0], "selectable");
						YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0].innerHTML = '<a href="#" class="selector">' + json[i].name + "</a>";
				    }
			    }
			}

		},
		failure: function (o) {

		}
	})

	//初期表示時のピックアップフェア表示
	var url = 'http://' + location.host + '/?feed=pickup&now=' + today.getTime();

	YAHOO.util.Connect.asyncRequest('GET',url, {
		success: function(o){
			var json = eval("("+o.responseText+")");
			var right_photo = "";
			var title_gazo = "";
			var description = "";
			var icon = "";

			if(json[0].value){
				for (var i = 0; i < json.length; i++) {
					switch(json[i].name){
					 case "title":
						title = json[i].value;
						break;
					 case "right_photo":
						right_photo = json[i].value;
						break;
					 case "title_gazo":
						title_gazo = json[i].value;
						break;
					 case "description":
						description = json[i].value;
						break;
					 case "icon":
						icon = json[i].value;
						break;
					}
				}

				YAHOO.util.Dom.get("fair_description").innerHTML = description;
				YAHOO.util.Dom.get("fair_titleimg").src = "/wordpress/wp-content/files_flutter/" + title_gazo;
				YAHOO.util.Dom.get("fair_mainphoto").src = "/wordpress/wp-content/files_flutter/" + right_photo;
				YAHOO.util.Dom.get("pickup_fair_date").innerHTML = "";
				YAHOO.util.Dom.get("pickup_fair_link").href = "/reservation?fair="+title+"&date=";
			}
			//アイコン処理
			YAHOO.util.Dom.get("fair_icons").innerHTML = "";
			if(icon instanceof Array){

				for (var i = 0; i < icon.length; i++) {
					switch(icon[i]){
					 case "試食":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/sampling.gif' alt='試食' title='試食' /></li>";
						break;
					 case "無料":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/free.gif' alt='無料' title='無料' /></li>";
						break;
						break;
					 case "模擬挙式":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/mock_ceremony.gif' alt='模擬挙式' title='模擬挙式' /></li>";
						break;
						break;
					 case "試着":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/trying.gif' alt='試着' title='試着' /></li>";
						break;
						break;
					 case "模擬披露宴":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/mock_reception.gif' alt=' 模擬披露宴' title=' 模擬披露宴' /></li>";
						break;
						break;
					}
				}

			}
		},
		failure: function (o) {

		}
	})

}

/*
function CalFairAssign(type,args,obj){
        var d = args.toString().split(",");
	//YUIからのrenderEvent時のargsでの日付取得がうまくいかないので、現在日時をJSで取得する

}
*/

function changePage(type,args,obj){
        //var d = args.toString().split(",");
	var pagedate = this.cfg.getProperty("pagedate");
        var yyyy = pagedate.getYear();
        if ( yyyy < 1900 ) yyyy+=1900;
        var  mm  = pagedate.getMonth() + 1;

	var url = 'http://' + location.host + '/?feed=fairmonthly&fday='+yyyy+'/'+mm+'/'+pagedate.getDate() + '&now=' + today.getTime();

	YAHOO.util.Connect.asyncRequest('GET',url, {
		success: function(o){
			var json = eval("("+o.responseText+")");

			if(json[0].value){
				for (var i = 0; i < json.length; i++) {
						YAHOO.util.Dom.setStyle(YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0],"background-color", json[i].value);
						YAHOO.util.Dom.addClass(YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0], "selectable");
						YAHOO.util.Dom.getElementsByClassName("d" + json[i].name)[0].innerHTML = '<a href="#" class="selector">' + json[i].name + "</a>";
				}
			}

		},
		failure: function (o) {

		}
	})
}

function RenderFair(type,args,obj){
        var d = args.toString().split(",");
	var url = 'http://' + location.host + '/?feed=fairdaily&fday=' + d[0]+"/"+d[1]+"/"+d[2] + "&now=" + today.getTime();

	YAHOO.util.Connect.asyncRequest('GET',url, {
		success: function(o){
			var json = eval("("+o.responseText+")");
			var right_photo = "";
			var title_gazo = "";
			var description = "";
			var icon = "";

			if(json[0].value){
			for (var i = 0; i < json.length; i++) {
				switch(json[i].name){
				 case "title":
					title = json[i].value;
					break;
				 case "right_photo":
					right_photo = json[i].value;
					break;
				 case "title_gazo":
					title_gazo = json[i].value;
					break;
				 case "description":
					description = json[i].value;
					break;
				 case "icon":
					icon = json[i].value;
					break;
				}
			}

			YAHOO.util.Dom.get("fair_description").innerHTML = description;
			YAHOO.util.Dom.get("fair_titleimg").src = "/wordpress/wp-content/files_flutter/" + title_gazo;
			YAHOO.util.Dom.get("fair_mainphoto").src = "/wordpress/wp-content/files_flutter/" + right_photo;
			YAHOO.util.Dom.get("pickup_fair_date").innerHTML = d[1]+"月"+d[2]+"日";
			YAHOO.util.Dom.get("pickup_fair_link").href = "/reservation?fair="+title;
				YAHOO.util.Dom.get("pickup_fair_link").href = "/reservation?fair="+title+"&date="+d[0]+"/"+d[1]+"/"+d[2];;

			//アイコン処理
			YAHOO.util.Dom.get("fair_icons").innerHTML = "";
			if(icon instanceof Array){

				for (var i = 0; i < icon.length; i++) {
					switch(icon[i]){
					 case "試食":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/sampling.gif' alt='試食' title='試食' /></li>";
						break;
					 case "無料":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/free.gif' alt='無料' title='無料' /></li>";
						break;
						break;
					 case "模擬挙式":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/mock_ceremony.gif' alt='模擬挙式' title='模擬挙式' /></li>";
						break;
						break;
					 case "試着":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/trying.gif' alt='試着' title='試着' /></li>";
						break;
						break;
					 case "模擬披露宴":
						YAHOO.util.Dom.get("fair_icons").innerHTML = YAHOO.util.Dom.get("fair_icons").innerHTML + "\n" + "<li><img src='/wordpress/wp-content/themes/uhuruwedcms/fair/images/icon/mock_reception.gif' alt=' 模擬披露宴' title=' 模擬披露宴' /></li>";
						break;
						break;
					}
				}

			}
			}else{
				//該当日にフェアが無かった場合
				YAHOO.util.Dom.get("fair_description").innerHTML = d[1]+"月"+d[2]+"日にはフェア開催予定はありません。";
				YAHOO.util.Dom.get("fair_titleimg").src = "";
				YAHOO.util.Dom.get("fair_mainphoto").src = "";
				YAHOO.util.Dom.get("pickup_fair_date").innerHTML = d[1]+"月"+d[2]+"日";
				YAHOO.util.Dom.get("pickup_fair_link").href = "";
			}

		},
		failure: function (o) {

		}
	})
}
