// JavaScript Document
var calendar = {
	timer: null,
	boxWidth:200,
	isRender:false,
	toggle: function(){
		$('#calendar_c').toggle( 400, function(){
			if( calendar.isRender == false){
				calendar.isRender = true;
				calendar._render();
			} else {
				calendar.isRender = true;
			}
		} );
		//
		
	},
	_render: function(){
		var config = {
		 
			editable: false,
			theme: true,
			events: langCode + '_' + langCode  + "/calendar/events/",
			
			eventMouseover: function( view, e,e2){ 
				calendar.viewDescription( view, e,e2 ) },
			 eventMouseout: function ( view, e ){
				calendar.hideDescription( view, e );
			},			
			loading: function(bool) {
				if (bool) $('#loading').show();
				else $('#loading').hide();
			}
			
		};
		
		if( langCode == 'pl' )
			config = $.extend(config,{
							  monthNames: ['Styczeń', 'Luty', 'Marzec', 'Kwiecień', 'Maj', 'Czerwiec', 'Lipiec',
 'Sierpień', 'Wrzesień', 'Październik', 'Listopad', 'Grudzień'],
							  monthNamesShort: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun','Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],
							  dayNames: ['Niedziela', 'Poniedziałek', 'Wtorek', 'Środa',
 'Czwartek', 'Piątek', 'Sobota'],
							  dayNamesShort: ['N','Pn', 'Wt', 'Śr', 'Cz', 'Pt', 'So'],
							  buttonText: {   today:'dzisiaj',month:'miesiąc', week:'tydzień', day: 'dzień' }
});
		$('#calendar').fullCalendar(config);	

	},
	viewDescription: function (  view, e, e2 ){


		 if (calendar.timer) clearTimeout( calendar.timer );
		 calendar._hideDescription();

		$('<div id="calendar_event_desc_' + view.id + '"></div>').html('<div>'+view.description+'</div>').prependTo( 'body' ).hide()
		.addClass('calendar_event_desc ' + view.className )
		.mouseenter( function(){  if (calendar.timer) clearTimeout( calendar.timer ); })
		.mouseleave(function(){ calendar.hideDescription(null,null); })
		.click(function(){ window.location = view.url; })
		.animate({
			'left': (e.pageX - calendar.boxWidth/2) + 'px',
			'top': e.pageY+ 'px',		
			
		},100).show(100);
		//*/
	},
	
	hideDescription: function(  view, e ){
		calendar.timer = setTimeout(calendar._hideDescription,2000);
	},
	 _hideDescription: function(){
	 	$('.calendar_event_desc').remove();
	 }
	
	};

	$(document).ready(function() {	
		$('#panel .menu .li_1 a').click(function(){ calendar.toggle(); return false; });
	});
