var MCalendar = {
	m : 0,
	y : 0,
	load : function(m,y){
		var t = $('#MCalendar tbody');
		t.ajaxStart(function(){t.html('<tr><td colspan="7" class="loading"></td></tr>');});
		$.post('/_/ck/index.php/calendar/getEvents', {m: m, y: y}, function(d){
			var a = [];
			var i=0,j=0;
			$.each(d, function(c,e){
				if(j%7==0) a[i++] = '<tr>';
				a[i++] = MCalendar.p(e);
				if(j%7==6) a[i++] = '</tr>';
				j++;
			});
			t.html(a.join(''));
			MCalendar.u(m,y);
		}, 'json');
	},
	p : function(d){
		var o1 = '<td class="';
		var c = '',e = '';
		var o2 = '</td>';
		if(d.day){
			if(d.events){
				c = 'event" onmouseover="MCalendar.s(this)';
				var h = '<div class="events">';
				$.each(d.events, function(c,e){
					if(e.id) h+= '<a href="/_/ck/index.php/site/article/_'+e.id+'/'+e.title+'">';
					h += e.startTime + ' - ' + e.endTime + ': ';
					h += e.title;
					if(e.id) h += '</a>';
					h += '<br/>';
				});
				h += '</div>';
				e = d.day + h;
			}
			else
				e = d.day;
		}
		else
			c = 'empty';
		return o1+c+'">'+e+o2;
	},
	u : function(m,y){
		MCalendar.m=m;MCalendar.y=y;
		var ms = new Array('','Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec', 'Sierpień', 'Wrzesień', 'Październik','Listopad','Grudzień');
		$('span#MCalendar_Month').text(ms[m]+' '+y);
	},
	s : function(a){
		$('div.events').hide();
		var d = $(a).children('div.events');
		d.top = a.top;
		d.css('margin-left', -d.width()/3);
		$(a).mouseleave(function(){d.fadeOut('fast');});
		d.show();
		
	},
	loadPrevious : function(){
		m = MCalendar.m == 1 ? 12 : MCalendar.m-1;
		y = MCalendar.m == 1 ? MCalendar.y-1 : MCalendar.y;
		MCalendar.load(m,y);
	},
	loadNext : function(){
		m = MCalendar.m == 12 ? 1 : MCalendar.m+1;
		y = MCalendar.m == 12 ? MCalendar.y+1 : MCalendar.y;
		MCalendar.load(m,y);
	}
};

