function doLoad(year, month, pageurl, sitePrefix) {
	var req = new Subsys_JsHttpRequest_Js();

	req.onreadystatechange = function() {
		if (req.readyState == 4 && req.responseJS.calendar) {

			var tableInStr = "<table class='days' cellpadding='0' cellspacing='2'  align='center'>";
			tableInStr += "<tr class='week'><td>Пн</td><td>Вт</td><td>Ср</td><td>Чт</td><td>Пт</td><td>Сб</td><td>Вс</td></tr>";

			for (var week in req.responseJS.calendar) {
				tableInStr += "<tr>";
				for(var weekday = 1; weekday <= 7; weekday++) {
					var day = req.responseJS.calendar[week][weekday].date;

					if (day > 0) {
						var eventUrl = pageurl + req.responseJS.year + "/" + req.responseJS.month+ "/" + day + "/";
						
						if (1 == req.responseJS.calendar[week][weekday].past) {
							tableInStr += "<td class='daypast' onclick='location.href = \"" + eventUrl + "\"'>";
							tableInStr += "<a href='" + eventUrl + "'>";
							tableInStr += day;
							tableInStr += "</a>";
							tableInStr += "</td>";
						} else if (1 == req.responseJS.calendar[week][weekday].future) {
							tableInStr += "<td class='dayfuture'  onclick='location.href = \"" + eventUrl + "\"'>";
							tableInStr += "<a href='" + eventUrl + "'>";
							tableInStr += day;
							tableInStr += "</a>";
							tableInStr += "</td>";
						} else {
							tableInStr += "<td>" + day + "</td>";
						}
					} else {
						tableInStr += "<td class='dayempty'/>";
					}

				}
				tableInStr += "</tr>";
			}
			tableInStr += "</table>";
			document.getElementById("calendar").innerHTML = tableInStr;
			
			document.getElementById("month").value = req.responseJS.month;
			document.getElementById("year").value = req.responseJS.year;
			document.getElementById("monthname").innerHTML = GetMonthName(req.responseJS.month);
			document.getElementById("yearname").innerHTML = req.responseJS.year;
			
			setCookie ("year_cookie",  req.responseJS.year, sitePrefix);
			setCookie ("month_cookie", req.responseJS.month, sitePrefix);
		}
	}
	
	req.open(null, '?jsmodule=Calendar', true);
	req.send( { year: year, month: month } );
}

/* month functions */
function getThisMonth() {
	var block  = document.getElementById("month") || false;
	if (!block) return -100;
	var thisMonth = parseInt(block.value) || -100;
	return thisMonth;
}

function getPrevMonth() {
	return (getThisMonth() - 1);
}

function getNextMonth() {
	return (getThisMonth() + 1);
}

function GetMonthName(number) {
	if (1  == number) return "январь";
	if (2  == number) return "февраль";
	if (3  == number) return "март";
	if (4  == number) return "апрель";
	if (5  == number) return "май";
	if (6  == number) return "июнь";
	if (7  == number) return "июль";
	if (8  == number) return "август";
	if (9  == number) return "сентябрь";
	if (10 == number) return "октябрь";
	if (11 == number) return "ноябрь";
	if (12 == number) return "декабрь";
	return "-";
}

/* Year functions */
function getThisYear() {
	var block  = document.getElementById("year") || false;
	if (!block) return -100;
	var thisYear = parseInt(block.value) || -100;
	return thisYear;
}

function getPrevYear() {
	return (getThisYear() - 1);
}

function getNextYear() {
	return (getThisYear() + 1);
}

/* Cookies */
function getCookie(Name) {
	var search = Name + "=";
	if (document.cookie.length > 0) {
		var offset = document.cookie.indexOf(search);
		if (offset != -1) {
			offset += search.length
			var end = document.cookie.indexOf(";", offset)
			if (end == -1) {
				end = document.cookie.length
			}
			return unescape(document.cookie.substring(offset, end));
		}
	}
}


function setCookie (name, value, path, domain, expires,  secure) {
	document.cookie = name + "=" + escape(value) +
	((path) ? "; path=" + path : "") +
	((expires) ? "; expires=" + expires : "") +
	((domain) ? "; domain=" + domain : "") +
	((secure) ? "; secure" : "");
}


