$(document).ready(function(){
	
	
	$('#calendar').datepicker({
		beforeShowDay: setScheduledDays,
		afterShow: renderAfisha,
		onSelect: showEvent,
		dateFormat: 'dd/mm/yy',
		onChangeMonthYear: function(year, month, inst) {
			$.cookie('calendarM', '01/' + month + '/' + year);
		}
	});
	
	

	// ставим сохраненный месяц в афише
	var calendarM = $.cookie('calendarM');
	if (calendarM !== null)
	{
		//console.log(calendarM);
		$('#calendar').datepicker("setDate" , calendarM );
	}
	
	// наведение на дату
	$("td.afisha-event").live("mouseenter", function(e){
		e.preventDefault();
		$this = $(this);
		var nodeTitle = $this.attr("info");
        //$.data(this, 'title', nodeTitle);
        //$this.removeAttr('title');
		var tooltip = $("div.calendar-event");
		
		$(tooltip).html(nodeTitle);
		$(tooltip).delay(500).show();
		var x = e.pageX;
		var y = e.pageY;
		$(tooltip).css('left', x);
		$(tooltip).css('top', y);
	});
	$("td.afisha-event").live("mousemove", function(e){	
		e.preventDefault();
		var tooltip = $("div.calendar-event");
		var x = e.pageX + 10;
		var y = e.pageY + 10;
		$(tooltip).css('left', x);
		$(tooltip).css('top', y);
	});
	$("td.afisha-event").live("mouseleave", function(e){	
		$("div.calendar-event").hide();
		//$(this).attr('title', $.data(this, 'title'));
	});
	
	
	// tooltip
	//$('#calendar td.afisha-event[title]').tooltip();
});


// рендерем афишу
// проход по каждому заполненному дню
function renderAfisha ()
{	
	var path, img;
	$("td.afisha-event").each(function()
	{
		path 	= '/content/images/newsi2/tn/';
		img 	= classOption($(this).attr('class'), "node-image-").substr(11);
		$(this).find("a").css('background-image', 'url('+ path + img +')');
	});
	
	$("td.afisha-event-more").each(function()
	{
		//$(this).append('<div class="event_more"><div>еще</div></div>');
		var info = $(this).attr('info');
		var count_events = occur(info, 'event_block') - 1;
		if (count_events == 2) $(this).append('<div class="event_more"><div>+2 концерта</div></div>');
		if (count_events == 1) $(this).append('<div class="event_more"><div>+1 концерт</div></div>');
		//console.log();
	});
}

/* Подсчет вхождений подстроки pattern в строку str */ 
function occur(str, pattern) {
  var pos = str.indexOf(pattern);
  for (var count = 0; pos != -1; count++)
    pos = str.indexOf(pattern, pos + pattern.length);
  return count;
}

function setScheduledDays(date) 
{
	var isScheduled 	= false;
	var scheduleStatus 	= "";

    // Check 
    for (i = 0; i < scheduledDays.length; i++) 
	{
		if (date.getMonth() == scheduledDays[i][1] - 1 && date.getDate() == scheduledDays[i][0] && date.getFullYear() == scheduledDays[i][2])
		{
			isScheduled 	= true;
			scheduleStatus 	= scheduledDays[i][3];
			sheduleDescr	= scheduledDays[i][4];
		}
	}
	
	if (isScheduled)
        return [true, scheduleStatus, sheduleDescr];
    else
      return [false, '', ''];
}  

// клик на дату
function showEvent (dateText, inst) 
{
	var day = inst.selectedDay;
	var obj = $('td.afisha-event a:contains("'+ day +'")');	
	var _class	= $(obj).parent().attr("class");
	var nodeURL	= classOption(_class, "go-to-").substr(6);
	document.location.href=nodeURL;
}
	
// Разбор класса даты
// в классе кодируется параметры
// @prefix=node-id- айди ноды
// @prefix=node-url- урл ноды
function classOption(_class, prefix)
{
		var b_s		= _class.search(prefix);
		var b		= _class.substr(b_s);
		var a_n		= b.search(" ");
		var a		= (a_n > 0) ? b.substr(0, a_n) : b;
		return a;
}	


