var m_curMonth = 0;
var m_curYear = 0;
var m_curDay = 1;
var m_maxEventCount = 0;
var g_Month = new Array(
	'January',
	'February',
	'March',
	'April',
	'May',
	'June',
	'July',
	'August',
	'September',
	'October',
	'November',
	'December');
var urls = new Array(
		'http://musichall.org/layout/set/ajax/content/view/ajax/188',
		'http://jazzcafedetroit.com/layout/set/ajax/content/view/ajax/61');
var tagId = "#events";

var events_array = new Array();
var m_urlIndex = 0;
var loader_url = '';
var is_loaded = true;

function fn_events_sort(event1, event2) {
	var res = 0;
	if (event1.date_sort < event2.date_sort)
		res = -1;
	else if (event1.date_sort > event2.date_sort)
		res = 1;
	return res;
}

function fn_complite() {
		events_array = events_array.sort(fn_events_sort);
		$(tagId).empty();
		// вставляем в страницу
		var count = events_array.length
		if (m_maxEventCount > 0 && count > m_maxEventCount)
			count = m_maxEventCount;
		for (var index = 0; index < count; index++) {
			$(tagId).append(
				'<tr><td class="img"><img src="' + events_array[index].photo + '" /></td>'+
				'<td class="name"><a href="' + events_array[index].url + '">' + events_array[index].name + '</a></td>'+
				'<td class="place">'+ events_array[index].place + '</td>'+
				'<td class="date">' + events_array[index].date + ' | ' + events_array[index].time + '</td>' +
				//'<td class="time">' + events_array[index].time + '</td>' +
				'<td class="ticket"><a href="' + events_array[index].ticket + '">tickets</a></td>' +
				'</tr>')
		}
		is_loaded = true;
}

function fn_error() {
	fn_load();
}

function fn_get_url() {
	var url = urls[m_urlIndex] + '/month/' + m_curMonth + '/year/' + m_curYear + '/day/'+m_curDay;
	//if (m_maxEventCount > 0)
	url += '/(last)/' + m_maxEventCount;
	return url + '?jsoncallback=?';
}

function fn_call() {
	is_loaded = false;

	$.ajax({
		type: 'GET',
		url: fn_get_url(),
		dataType: 'jsonp',
		success: fn_load,
		error: fn_error
	});
}

function fn_load(json) {

	if (json != null)
		events_array = events_array.concat(json);
	m_urlIndex++;

	if (m_urlIndex == urls.length) {
		fn_complite()
	}
	else
		fn_call();
}

function fn_set_current_date() {
	$(tagId).html('<tr><td style="width:100%; border:0; text-align: center;"><img src="'+loader_url+'" alt=""/></td></tr>');
	$('#current_date').html(g_Month[m_curMonth - 1] + '&nbsp;' + m_curYear);
}

function fn_next_month() {
	if (!is_loaded)
		return;

	m_curMonth++;

	if (m_curMonth > 12) {
		m_curMonth = 1;
		m_curYear++;
	}
	fn_set_current_date();

	m_urlIndex = 0;
	events_array = new Array();
	fn_call();
}

function fn_prev_month() {
	if (!is_loaded)
		return;

	m_curMonth--;

	if (m_curMonth < 1) {
		m_curMonth = 12;
		m_curYear--;
	}
	fn_set_current_date();

	m_urlIndex = 0;
	events_array = new Array();
	fn_call();
}

$(document).ready(function() {
	loader_url = $('#loader_image').attr('src')
	fn_call();
})

