function mainMenu() {
	function getIEVersion() {
		var ua = navigator.userAgent;
		var IEoffset = ua.indexOf("MSIE ");
		return parseFloat(ua.substring(IEoffset + 5, ua.indexOf(";", IEoffset)));
	}
	var isIE4 = ((navigator.appName.indexOf("Microsoft") == 0 && parseInt(getIEVersion()) >= 4));
	var isW3C = (document.documentElement) ? true : false;
	if (document.getElementById("mainMenu")) {
		var url = window.location.href;
		if (url.substring(url.length - 1, url.length) != "/") {
			var fileName = url.substring(url.lastIndexOf("/") + 1, url.lastIndexOf("."));
		} else {
			var fileName = "index";
		}
		var aElement = document.getElementById("mainMenu").getElementsByTagName("a");
		for (var i = 0; i < aElement.length; i++) {
			if (aElement[i].href.substring(aElement[i].href.length - 1, aElement[i].href.length) != "#") {
				var aElementName = aElement[i].href.substring(aElement[i].href.lastIndexOf("/") + 1, aElement[i].href.lastIndexOf("."));
				if (aElementName == fileName) {
					aElement[i].parentNode.className = "current";
				}
			}
		}
		var liElement = document.getElementById("mainMenu").getElementsByTagName("li");
		for (var i = 0; i < liElement.length; i++) {
			if (!isIE4 && isW3C) {
				// non IE:
				if (liElement[i].childNodes[3]) {
					liElement[i].onmouseover = function() {
						this.childNodes[3].style.display = "block";
						this.className = "active";
					}
					liElement[i].onmouseout = function() {
						this.childNodes[3].style.display = "none";
						this.className = "";
					}
				}
			} else {
				// IE:
				if (liElement[i].childNodes[2]) {
					liElement[i].onmouseover = function() {
						this.childNodes[2].style.display = "block";
						this.className = "active";
					}
					liElement[i].onmouseout = function() {
						this.childNodes[2].style.display = "none";
						this.className = "";
					}
				}
			}
		}
	}
}
function windowHeightCalculation() {
	var windowHeight = (window.innerHeight) ? /*non IE*/ window.innerHeight : /*IE 6+*/ document.documentElement.clientHeight;
	return windowHeight;
}
function footerPlacement() {
	if (document.getElementById) {
		var windowHeight = windowHeightCalculation();
		if (windowHeight > 0) {
			var headerElement = document.getElementById('header');
			var contentElement = document.getElementById('content');
			var footerElement = document.getElementById('footer');
			var headerHeight = headerElement.offsetHeight;
			var contentHeight = contentElement.offsetHeight;
			var footerHeight  = footerElement.offsetHeight;
			var footerOffset = windowHeight - (headerHeight + contentHeight + footerHeight);
			if (footerOffset >= 0) {
				contentElement.style.height = contentHeight + footerOffset + 'px';
				footerElement.style.top = footerOffset + 'px';
			} else {
				footerElement.style.top = '0px';
			}
		}
	}
}
function prepareGallery() {
	if (document.getElementById("photoThumbnail") && document.getElementById("photoOriginal")) {
		var photo = document.getElementById("photoOriginal").getElementsByTagName("img");
		var photos = document.getElementById("photoThumbnail").getElementsByTagName("a");
		for (var i=0; i< photos.length; i++) {
			photos[i].onclick = function() {
				photo[0].src = (this).href;
				return false;
			}
		}
	}
}
Date.prototype.getWeek = function (dayOfWeekOffset) {
	dayOfWeekOffset = typeof(dayOfWeekOffset) == 'int' ? dayOfWeekOffset : 1; // 0=Sunday 1=Monday
	var newYear = new Date(this.getFullYear(),0,1);
	var day = newYear.getDay() - dayOfWeekOffset; // the day of week the year begins on
	day = (day >= 0 ? day : day + 7);
	var dayNumber = Math.floor((this.getTime() - newYear.getTime() - (this.getTimezoneOffset() - newYear.getTimezoneOffset()) * 60000) / 86400000) + 1;
	var weekNumber;
	// if the year starts before the middle of a week
	if (day < 4) {
		weekNumber = Math.floor((dayNumber+day-1)/7) + 1;
		if (weekNumber > 52) {
			nYear = new Date(this.getFullYear() + 1,0,1);
			nday = nYear.getDay() - dayOfWeekOffset;
			nday = nday >= 0 ? nday : nday + 7;
			// if the next year starts before the middle of the week, it is week #1 of that year
			weekNumber = nday < 4 ? 1 : 53;
		}
	}
	else {
		weekNumber = Math.floor((dayNumber+day-1)/7);
	}
	return weekNumber;
}
function timetableLoad() {
	if (document.getElementById("timetableMenu")) {
		var tableElement = document.getElementsByTagName("div");
		for (var i = 0; i < tableElement.length; i++) {
			if ("week" == tableElement[i].id.substring(0,4)) {
				tableElement[i].style.display = "none";
				var tableElementName = tableElement[i].id.substring(tableElement[i].id.lastIndexOf("k") + 1, tableElement[i].id.length);
				if (new Date().getWeek() == tableElementName) {
					tableElement[i].style.display = "block";
				}
			}
		}
	}
}
function timetable(week) {
	var tableElement = document.getElementsByTagName("div");
	for (var i = 0; i < tableElement.length; i++) {
		if ("week" == tableElement[i].id.substring(0,4)) {
			tableElement[i].style.display = "none";
			var tableElementName = tableElement[i].id.substring(tableElement[i].id.lastIndexOf("k") + 1, tableElement[i].id.length);
			if (week == tableElementName) {
				tableElement[i].style.display = "block";
			}
		}
	}
}
window.onload = function() {
	mainMenu();
	footerPlacement();
	prepareGallery();
	timetableLoad();
}
window.onresize = function() {
	footerPlacement();
}