$(document).ready( function() {
	$("#cal_prevMonth").click(function() { cal_changemonth(-1); })
	$("#cal_nextMonth").click(function() { cal_changemonth(1); })
	window.today=new Date();
	cal_changemonth();
});

cal_date=new Date(); cal_date.setDate(1);
cal_monthLengths=[31,28,31,30,31,30,31,31,30,31,30,31]
cal_monthNames=['Ocak', 'Şubat', 'Mart', 'Nisan', 'Mayıs', 'Haziran', 'Temmuz', 'Ağustos', 'Eylül', 'Ekim', 'Kasım', 'Aralık' ]
cal_events={
}

window.cal_openedactlist=false;

function cal_changemonth(nm) {
	if (!nm) nm=today.getMonth();
    else if ( typeof(nm)!="string" ) nm+=cal_date.getMonth();
	
	if (nm<0) { nm=11; cal_date.setFullYear(cal_date.getFullYear()-1); }
	else if (nm>11) { nm=0; cal_date.setFullYear(cal_date.getFullYear()+1); }
	
	cal_date.setMonth(nm); var firstday=cal_date.getDay(); var lastday=cal_monthLengths[cal_date.getMonth()];
	if (lastday==28) { var theyear=cal_date.getFullYear(); lastday = (theyear%4==0 ? ( theyear%100==0 ? ( theyear%400==0 ? 29 : 28 ) : 29 ) : 28 ) }
	$('#cal_monthName').html(cal_monthNames[nm]+' '+cal_date.getFullYear());
	var day=0; if (firstday==0) firstday=7;
	for (var ex=1; ex<=42; ex++) { 
        day=ex-firstday;
        $('#cal_day'+ex).removeClass('cal_actday').html((day<0 || day>=lastday ? '' : day+1)).attr('title','').unbind('click').get(0).evtlist='';
    }
    $('#etkinliktakvimi td').removeClass('cal_today');
    if (cal_date.getFullYear()==today.getFullYear() && cal_date.getMonth()==today.getMonth()) $('#cal_day'+(firstday+today.getDate()-1)).addClass('cal_today');

	$('tr.cal_evtlist').remove();
	var evtkeyleft='d'+cal_date.getFullYear()+String("0"+(cal_date.getMonth()+1)).slice(-2);
	for (var dx=1; dx<=lastday; dx++) { var evtkey=evtkeyleft+String("0" + dx).slice(-2); if (!cal_events[evtkey]) continue;
		var dayelm=$('#cal_day'+(dx+firstday-1)).get(0);
		var evts=cal_events[evtkey];
		for (var ex=0; ex<evts.length; ex++) {
			var evt=evts[ex];
			dayelm.evtlist+='<a title="'+evt[1]+'" href="'+evt[2]+'">'+evt[0]+'</a>';
		}
		$(dayelm).addClass('cal_actday').attr('title', evts.length+' etkinlik/olay... Detaylar için tıklayın.').bind('click', function() {
			$('tr.cal_evtlist').remove();
			if (cal_openedactlist==this) { window.cal_openedactlist=false; return true; }
			$(this).parents(':first').after('<tr class="cal_evtlist"><td colspan="7" class="cal_evtlist">'+this.evtlist+'</td></tr>');
			window.cal_openedactlist=this;
		});
	}
}
