var tukiprm=0;
var flgfirst=true;
var myDate = new Date();
var myYear = myDate.getFullYear();
var myMonth = myDate.getMonth();
myMonth++;
var myDay = myDate.getDate();
var nowMonth = myDate.getMonth();
var todaystr=myYear+''+fnc_0add(myDate.getMonth() + 1)+''+fnc_0add(myDate.getDate());
var showFlg = false;


function get_ajdata(){
	str='dt=' +new Date();
	for($i=0;$i<10;$i++){
	str=str.replace(" ", "_");
	}
	str='nittei.csv?'+str;
	document.getElementById("calarea").innerHTML ='';
	getAjaxadata(str);
}

//function onld() {
//	get_ajdata();
//}

xmlHttpObj=function(){ // xmlHttpObjectの生成
	var a=null;
	try{ a=new ActiveXObject("Msxml2.XMLHTTP") }
	catch(c){
	try{ a=new ActiveXObject("Microsoft.XMLHTTP") }
	catch(b){ a=null }
	}
	if(!a&&typeof XMLHttpRequest!="undefined"){
		a=new XMLHttpRequest()
	}
	return a
}

var rssCount=0;
getAjaxadata=function(a){
  var x=new xmlHttpObj();
  var y=new xmlHttpObj();
  var csv;
  if(typeof(a)=='undefined') return;
  x.onreadystatechange=function(){
    if (x.readyState == 4 && x.status == 200) {
    	if(x.responseText){
			csv = x.responseText;
  y.open('GET','rss.csv',true);
  y.send(null);
    	}else{
			csv = '';
		}
    }
  }

  y.onreadystatechange=function(){
    if (y.readyState == 4 && y.status == 200) {
      if(y.responseText){
		var alldata = y.responseText + '\n' + csv;

		var rssdata = y.responseText;
		var rssary = rssdata.split("\n");
		rssCount = rssary.length;
		var alldata = rssdata + '\n' + csv;

		var naiyou=fnc_createcal(alldata);
		document.getElementById("calarea").innerHTML =naiyou;
      } else {
		var naiyou=fnc_createcal(csv);
		document.getElementById("calarea").innerHTML =naiyou;
      }
    }
  }


  x.open('GET',a,true);
  x.send(null);
}

function fnc_createcal(motostr){
	var ret='';
	myMonthTbl= new Array(31,28,31,30,31,30,31,31,30,31,30,31);
	myYear = (myYear<2000) ? (1900+myYear) : (myYear);
	if (((myYear%4)==0 && (myYear%100)!=0) || (myYear%400)==0)
		 myMonthTbl[1] = 29;
	var chkMonth = myMonth - 1;

	// 初めての読み込み時行事が今月の今日以降あるかどうか調べる
	if (flgfirst==true){
		testflg=false;
		arystr = motostr.split("\n");

		// 同じ月に今日以降予定があるかチェック
		for(i=1;i<=myMonthTbl[chkMonth];i++){
			if (testflg) {
				break;
			}
			if (i>=Number(myDay)){
				for (k=0;k<arystr.length;k++){
					tmp=arystr[k].split(",");
					if (tmp[0]==gakkou){
						var rex = new RegExp('^' + myYear+fnc_0add(myMonth));
						if (tmp[1].match(rex) && tmp[1]>=myYear+fnc_0add(myMonth)+fnc_0add(i)){
							testflg=true;
							break;
						}
					}
				}
			}
		}
		flgfirst=false;
		// 次の月へスキップ
		if(testflg == false){
			myMonth++;
			if(myMonth == 13){
				myMonth = 1;
				myYear++;
			}
		}
	}
	calMonth = myMonth - 1;
	myDate.setDate(1);
	myDate.setMonth(calMonth);
	myWeek = myDate.getDay();
	if (myWeek == 0){
		myWeek = 6;
	}else{
		myWeek--;
	}
	myTblLine = Math.ceil((myWeek+myMonthTbl[calMonth])/7);
	myTable   = new Array(7*myTblLine);
	
	arystr = motostr.split("\n");
	
	
	for(i=0;i<7*myTblLine;i++)myTable[i]="&nbsp;";
	for(i=0;i<myMonthTbl[calMonth];i++)myTable[i+myWeek]=i+1;
	ret+='<ul class="calNavi">';
	ret+='<li class="calBack"><a href="#cal" onclick="fnc_pri()">前の月</a></li>';
	ret+='<li class="calNext"><a href="#cal" onclick="fnc_next()">次の月</a></li>';
	ret+='</ul>';
	ret+='<a name="cal"></a><table><caption style="font-size:10px; padding-top:3px; padding-bottom:4px;"><b style=font-size:16px;>'+myMonth+'月</b>のイベントスケジュール</caption><tr><th abbr="月">月</th><th abbr="火">火</th><th abbr="水">水</th><th abbr="木">木</th><th abbr="金">金</th><th class="sat" abbr="土">土</th><th class="sun" abbr="日">日</th></tr>';
	koumei='';
	for(i=0;i<myTblLine;i++){
		ret+="<tr>";
		for(j=0; j<7; j++){
			myDat = myTable[j+(i*7)];
			if(Number(todaystr) == Number(myYear+fnc_0add(myMonth)+fnc_0add(myDat))){
				ret+="<td class=\"today\">"+"<span class=\"date\">"+myDat+"</span>";
			}else{
				ret+="<td>"+"<span class=\"date\">"+myDat+"</span>";
			}
			for (k=0;k<arystr.length;k++){
				tmp=(arystr[k]+",,,,,,,,,").split(",");
				if (tmp[0]==gakkou){
					if (tmp[1]==myYear+fnc_0add(myMonth)+fnc_0add(myDat)){
						if (tmp[2]=='1'){
							//ret+="<div class='balloon'>";
							ret+="<span class=\"text\" onmouseover=\"closeBalloon('balloon', 'balloon"+k+"');showBalloon('balloon"+k+"');\"><a href=\""+tmp[10]+"\">"+tmp[3]+"</a></span>";

							tmp[9]=tmp[9].substr(0, 1);
							if (Number(todaystr) > Number(myYear+fnc_0add(myMonth)+fnc_0add(myDat))){
									tmp[9]='0'
							}
							ret+="<div class='balloon'>";
							ret+='<dl class="balloonBg" id="balloon'+k+'" name="balloon'+k+'">';
							if (tmp[8]=='1'){
								ret+='<dt><p class="balloonDate">'+myYear+'年'+myMonth+'月'+myDat+'日</p>';
								ret+='<p class=\"balloonTitle\">'+tmp[6]+'</p></dt>';
							}
							ret+='<dd>'+tmp[7]+'</dd>';
							ret+='<dd class="close"><a href="javascript:void(0)" onclick="closeBalloon(\'balloon\')">-閉じる-</a></dd>';
							ret+='<dd class=\"btnEvent\">';
							
							if (tmp[9]=='1'){
								retuNo = k - rssCount;
//								ret+='<a href="../form/index.html#retu&'+k+'&'+encodeURL(gakkou)+'"> ';
								ret+='<a href="form/index.html#retu&'+retuNo+'&'+encodeURL(gakkou)+'"> ';
							}else{
								ret+='<a href="'+tmp[10]+'"> ';
							}
							ret+='<img src=\"../img/common/btn_more.gif\" alt=\"詳細へ\" /></a></dd>';
							ret+="</dl>";
							ret+="<!-- / class balloon --></div>";
						}else if(tmp[2]=='2'){
//ret+="<div class=\"balloon\">";
							ret+="<span class=\"text\" onmouseover=\"closeBalloon('balloon', 'balloon"+k+"');showBalloon('balloon"+k+"');\"><a href=\""+tmp[4]+"\" target=\"_blank\"><img src=\"../img/common/ico_entry.gif\"></a></span>";
							ret+="<div class=\"balloon\">";
							ret+='<dl class="balloonBg" id="balloon'+k+'" name="balloon'+k+'">';
							ret+='<dt>';
							ret+='<p class=\"balloonTitle\">'+tmp[3]+'</p></dt>';
							ret+='<dd>'+tmp[5]+'</dd>';
							ret+='<dd class="close"><a href="javascript:void(0)" onclick="closeBalloon(\'balloon\')">-閉じる-</a></dd>';
							ret+='<dd class=\"btnEvent\">';
							
							ret+='<a href="'+tmp[4]+'" target=\"_blank\"> ';
							ret+='<img src=\"../img/common/btn_blog.gif\" alt=\"ブログへ\" /></a></dd>';
							ret+="</dl>";
							ret+="<!-- / class balloon --></div>";
							
							
						}else if (tmp[2]=='3'){
							
							ret+="<span class=\"text\" onmouseover=\"closeBalloon('balloon', 'balloon"+k+"');showBalloon('balloon"+k+"');\"><b style='color:#666;'>"+tmp[3]+"</b></span>"							
							//ret+="<div class='balloon'>";
							

							tmp[9]=tmp[9].substr(0, 1);
							if (Number(todaystr) > Number(myYear+fnc_0add(myMonth)+fnc_0add(myDat))){
									tmp[9]='0'
							}
							ret+="<div class='balloon'>";
							ret+='<dl class="balloonBg" id="balloon'+k+'" name="balloon'+k+'">';
							if (tmp[8]=='1'){
								ret+='<dt><p class="balloonDate">'+myYear+'年'+myMonth+'月'+myDat+'日</p>';
								ret+='<p class=\"balloonTitle\">'+tmp[6]+'</p></dt>';
							}
							ret+='<dd>'+tmp[7]+'</dd>';
							ret+='<dd class="close"><a href="javascript:void(0)" onclick="closeBalloon(\'balloon\')">-閉じる-</a></dd>';
							ret+="</dl>";
							ret+="<!-- / class balloon --></div>";
							
							
						}else if (tmp[2]=='10'){
							ret+="<span style='color:#D05895; font-weight:bold;' class=\"text\" onmouseover=\"closeBalloon('balloon', 'balloon"+k+"');showBalloon('balloon"+k+"');\">"+tmp[3]+"</span>";
							
						}
					}
				}
			}
			ret+="";
			ret+="</td>";
		}
		ret+="</tr>";
	}
	ret+='</table>';
	return ret;
}
function fnc_pri(){
	myMonth--;
	if(myMonth == 0){
		myMonth = 12;
		myYear--;
	}
	get_ajdata();
}
function fnc_next(){
	myMonth++;
	if(myMonth == 13){
		myMonth = 1;
		myYear++;
	}
	get_ajdata();
}
function fnc_0add(str){
	str=str+'';
	if (str.length==1){
		str='0'+str;
	}
	return str+'';
}

function encodeURL(str) {
  var character = '';
  var unicode   = '';
  var string    = '';
  var i         = 0;

  for (i = 0; i < str.length; i++) {
    character = str.charAt(i);
    unicode   = str.charCodeAt(i);

    if (character == ' ') {
      string += '+';
    } else {
      if (unicode == 0x2a || unicode == 0x2d || unicode == 0x2e || unicode == 0x5f || ((unicode >= 0x30) && (unicode <= 0x39)) || ((unicode >= 0x41) && (unicode <= 0x5a)) || ((unicode >= 0x61) && (unicode <= 0x7a))) {
        string = string + character;
      } else {
        if ((unicode >= 0x0) && (unicode <= 0x7f)) {
          character   = '0' + unicode.toString(16);
          string += '%' + character.substr(character.length - 2);
        } else if (unicode > 0x1fffff) {
          string += '%' + (oxf0 + ((unicode & 0x1c0000) >> 18)).toString(16);
          string += '%' + (0x80 + ((unicode & 0x3f000) >> 12)).toString(16);
          string += '%' + (0x80 + ((unicode & 0xfc0) >> 6)).toString(16);
          string += '%' + (0x80 + (unicode & 0x3f)).toString(16);
        } else if (unicode > 0x7ff) {
          string += '%' + (0xe0 + ((unicode & 0xf000) >> 12)).toString(16);
          string += '%' + (0x80 + ((unicode & 0xfc0) >> 6)).toString(16);
          string += '%' + (0x80 + (unicode & 0x3f)).toString(16);
        } else {
          string += '%' + (0xc0 + ((unicode & 0x7c0) >> 6)).toString(16);
          string += '%' + (0x80 + (unicode & 0x3f)).toString(16);
        }
      }
    }
  }

  return string;
}


function closeBalloon(parents, current) {
	objDl=document.getElementsByTagName('dl');

	objRegex = new RegExp(parents);

	for(i=0; i < objDl.length; i++){
		if(objDl[i].id.match(objRegex)){
			if(objDl[i].id != current){
				document.getElementById(objDl[i].id).style.display = 'none';
			}
		}
	}
}

var mouseX = 0;
var mouseY = 0;

//window.document.onmousemove = getMouseXY;
function showBalloon(id) {

	if(document.getElementById(id).style.display == 'none' || showFlg == false){
//		posX = mouseX - 300;
//		posY = mouseY - 70;
//		document.getElementById(id).style.top = posY + 'px';
//		document.getElementById(id).style.left = posX + 'px';
		document.getElementById(id).style.display = 'none'; //090901修正箇所
//		showFlg = true;
	}
}

function getMouseXY(evt){
	if (window.createPopup){
		mouseX = event.x + document.body.scrollLeft;
		mouseY = event.y + document.body.scrollTop;
	}else{
		mouseX = evt.pageX - 450;
		mouseY = evt.pageY - 490;
	}
}

