//var args = window.dialogArguments;
var WeekTitles=new Array('Пн','Вт','Ср','Чт','Пт','Сб','Вс')
var month_name=new Array('Январь','Февраль','Март','Апрель','Май','Июнь','Июль','Август','Сентябрь','Октябрь','Ноябрь','Декабрь');
function showallweektitles(){
	var i, answer="  <tr>\n"
	for(i=0;i<WeekTitles.length;i++) answer+="    <th CLASS=\"calendar\">"+WeekTitles[i]+"</th>\n"
	answer+="  </tr>\n"
	return answer
}


function calendar_show(d,m,y){
	var sdate= new Date(m+'/1/'+y);
	var mdate= new Date(m+'/'+d+'/'+y);
	var todaydate= new Date();
	var days=dayonmonth(m,y)
	var iday=0, day, answer=''
	answer+='<table width="80%" border=0 CLASS="calendar">'
	answer+='  <tr CLASS="calendar">'
	answer+='  	<th colspan=7>'
	answer+='<table border=0 cellpadding=0 cellspacing=0 width="100%" height="100%">'
	answer+='  <tr CLASS="calendar">'
	answer+='    <td ><table onClick="calendar_move(\'-\',\'y\','+d+','+m+','+y+')" CLASS="calendar_button_0_1" onMouseOver="this.className=\'calendar_button_1_1\'" onMouseOut="this.className=\'calendar_button_0_1\'" border=0 cellpadding=0 cellspacing=0 width="100%" height="100%"><tr CLASS="calendar"><td style="cursor:pointer;"><<</td></tr></table></td>'
	answer+='    <td ><table onClick="calendar_move(\'-\',\'m\','+d+','+m+','+y+')" CLASS="calendar_button_0_2" onMouseOver="this.className=\'calendar_button_1_2\'" onMouseOut="this.className=\'calendar_button_0_2\'" border=0 cellpadding=0 cellspacing=0 width="100%" height="100%"><tr CLASS="calendar"><td style="cursor:pointer;"><</td></tr></table></td>'
  answer+='<td ><table border=0 cellpadding=0 cellspacing=0 width="100%" height="100%" CLASS="calendar_month"><tr CLASS="calendar"><td>'+month_name[m-1]+' '+y+'</td></tr></table></td>'
	answer+='<td ><table onClick="calendar_move(\'+\',\'m\','+d+','+m+','+y+')" CLASS="calendar_button_0_2" onMouseOver="this.className=\'calendar_button_1_2\'" onMouseOut="this.className=\'calendar_button_0_2\'" border=0 cellpadding=0 cellspacing=0 width="100%" height="100%"><tr CLASS="calendar"><td style="cursor:pointer;">></td></tr></table></td>'
	answer+='    <td><table onClick="calendar_move(\'+\',\'y\','+d+','+m+','+y+')" CLASS="calendar_button_0_1" onMouseOver="this.className=\'calendar_button_1_1\'" onMouseOut="this.className=\'calendar_button_0_1\'" border=0 cellpadding=0 cellspacing=0 width="100%" height="100%"><tr CLASS="calendar"><td style="cursor:pointer;">>></td></tr></table></td>'
	answer+='  </tr>'
	answer+='</table>'
	answer+='	</th>'
	answer+='  </tr>'
	answer+='  <tr>'
	answer+=showallweektitles()
  var s_day=sdate.getDay()-1;
  if (s_day<0) s_day=6;
	for(day=0;day<s_day;day++){
		iday++
		answer+="    <td></td>"
	}
	for(day=1;day<=days;day++){
		iday++
    if((todaydate.getMonth()+1)==m && todaydate.getDate()<day && todaydate.getFullYear()==y)
      answer+="    <td CLASS=\"calendar_future\"><table border=0 cellpadding=0 cellspacing=0 width=\"100%\" height=\"100%\"><tr CLASS=\"calendar\"><td>"+day+"</td></tr></table></td>"
    else if((todaydate.getMonth()+1)==m && todaydate.getDate()==day && todaydate.getFullYear()==y)
			answer+="    <td CLASS=\"calendar_today\"><table onMouseOver=\"this.className='calendar_active'\" onMouseOut=\"this.className=''\" border=0 cellpadding=0 cellspacing=0 width=\"100%\" height=\"100%\"><tr CLASS=\"calendar\"><td><a href=\"diary.html?date="+day+"."+m+"."+y+"\">"+day+"</a></td></tr></table></td>"
		else
			answer+="    <td CLASS=\"calendar\"><table onMouseOver=\"this.className='calendar_active'\" onMouseOut=\"this.className=''\" border=0 cellpadding=0 cellspacing=0 width=\"100%\" height=\"100%\"><tr CLASS=\"calendar\"><td><a href=\"diary.html?date="+day+"."+m+"."+y+"\">"+day+"</a></td></tr></table></td>"
		if(iday==7){
			answer+="</tr><tr>"
			iday=0
		}
	}
	answer+="  </tr>"
	answer+='</table>'
	//self.calendar.innerHTML=answer
	document.all.calendar.innerHTML=answer
}
function dayonmonth(m, y){ // Функция, для определения количества дней в месяце
	var answer
	if(m!=2){ // Если не "Февраль"
		var date1=new Date(m+'/31/'+y)
		var mm=(m<12)?(m+1):1;
		var yy=(m<12)?y:(y+1);
		var date2=new Date(mm+'/1/'+yy)
		answer=(date1.getDay()==date2.getDay())?'30':'31';
	}else{
		var date1=new Date(m+'/29/'+y)
		var mm=(m<12)?(m+1):1;
		var yy=(m<12)?y:(y+1);
		var date2=new Date(mm+'/1/'+yy)
		answer=(date1.getDay()==date2.getDay())?'28':'29';
	}
	return answer
}
function calendar_move(to, index, d, m, y){
	switch(to){
		case('-'):
			switch(index){
				case('m'):
					if(m>1){
						m--
					}else{
						m=12
						y--
					}
					break
				case('d'):
					var mm=(m>1)?--m:1
					var yy=(m>1)?y:--y
					var days=dayonmonth(mm, yy)
					if(d>1){
						d--
					}else{
						d=days
						m=mm
						y=yy
					}
					break
				case('y'):
					y--
					break
			}
			break
		case('+'):
			switch(index){
				case('m'):
					if(m<12){
						m++
					}else{
						m=1
						y++
					}
					break
				case('d'):
					var mm=(m<12)?++m:1
					var yy=(m<12)?y:++y
					var days=dayonmonth(m, y)
					if(d<days){
						d++
					}else{
						d=1
						m=mm
						y=yy
					}
					break
				case('y'):
					y++
					break
				}
			break
	}
	calendar_show(d, m, y)
}
