var daysInMonth = new Array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);
var months      = new Array('Январь', 'Февраль', 'Март', 'Апрель', 'Май', 'Июнь', 'Июль', 'Август', 'Сентябрь', 'Октябрь', 'Ноябрь', 'Декабрь');

function DaysInMonth(m,y) // Определяем количество дней в месяце
{
	if(m==2 && y%4==0)	return 29
	return daysInMonth[m-1]
}

function FirstDay(m,y)
{
	var first= new Date(y, m-1, 1);
	fDay = first.getDay();

	if(fDay>0)	return fDay - 1;
	return 6;
}

function showCalTitle(m,y)
{
	return months[m-1]+" "+y;
}

function Move(to, d, m, y)
{
	switch(to)
	{
		case('-'):
			if(m>1)
				m--
			else
			{
				m = 12
				y--
			}
			var how = "left"
		break
		case('+'):
			if(m<12)
				m++
			else
			{
				m = 1
				y++
			}
			var how = "right"
		break
	}
	return "<a href=\"javascript:void(0)\" onClick=\"Calendar("+d+", "+m+", "+y+");\" title=\"\"><img src='/images/arr"+how+".gif' alt='' width='9' height='5' border='0' align='absmiddle' /></a>";
}

function Calendar(d, m, y)
{
	var date = new Date(y, m-1, d);
	var now  = new Date();
	var now  = new Date(now.getFullYear(),now.getMonth(),now.getDate());
	var days = DaysInMonth(m, y); // Кол-во дней в месяце
	var fDay = FirstDay(m,y);  // Каков день а недели первый день в месяце
	var day, answer='';

	document.getElementById('calendarTitle').innerHTML = showCalTitle(m,y);
	
	document.getElementById('leftMove').innerHTML = Move('-',d,m,y);
	document.getElementById('rightMove').innerHTML = Move('+',d,m,y);
	
	for(day=0;day<fDay;day++)
	{
		answer+="<li><a href='#' title=''> </a></li>";
	}
	
	for(day=1;day<=days;day++)
	{
		var idate = new Date(y, m-1, day);

		if(now.getTime()>idate.getTime())
			answer+="<li>"+day+"</li>";
		else if(date.getTime()==idate.getTime())
			answer+="<li><a href='/tickets/"+day+"-"+m+"-"+y+"/' title='' class='act'>"+day+"</a></li>";
		else
			answer+="<li><a href='/tickets/"+day+"-"+m+"-"+y+"/' title=''>"+day+"</a></li>";
	}

	document.getElementById('calendar').innerHTML = answer;
}