
var activeOpening = new Array(2);
var activeClosing = new Array(2);

var opentimer = 5;
var closetimer = 5;

var ArrMenus = new Array();
ArrMenus[0] = new Object();
ArrMenus[0]["maxheight"] = 170;
ArrMenus[0]["minheight"] = 15;
ArrMenus[0]["id"] = "player";

function menu_show($intMenu) {
	// falls Animation 'Öffne' noch nicht gestartet...
	if (!activeOpening[$intMenu]) {
		// falls Minimalhöhe noch nicht gesetzt... setzte Minimalhöhe des Menüs
		if (!document.getElementById(ArrMenus[$intMenu]["id"]).style.height) {
			document.getElementById(ArrMenus[$intMenu]["id"]).style.height = ArrMenus[$intMenu]["minheight"] + "px";
		}
		// falls Animation 'Schließe' zuvor im Gange, diese beenden
		if(activeClosing[$intMenu]) {
			window.clearInterval(activeClosing[$intMenu]);
			delete activeClosing[$intMenu];
		}
		// Animation 'Öffne' starten durch Setzen des Intervalls
		activeOpening[$intMenu] = window.setInterval("menu_opening(" + $intMenu + ")", 1);
	}
}

function menu_opening($intMenu) {
	// frage aktuelle Menühöhe ab
	var intNowheight = eval(document.getElementById(ArrMenus[$intMenu]["id"]).style.height.split("px")[0]);
	// wenn aktuelle Menühöhe < Maximalhöhe... dann vergrößere das Menü weiter
	if(intNowheight < ArrMenus[$intMenu]["maxheight"]) {
		var intNewheight = intNowheight + opentimer;
		document.getElementById(ArrMenus[$intMenu]["id"]).style.height = Math.min(intNewheight, ArrMenus[$intMenu]["maxheight"]) + "px";
	}
	// ansonsten: Maximalhöhe erreicht, beende Animation durch Unterbrechen der Intervallschaltung
	else {
		document.getElementById(ArrMenus[$intMenu]["id"]).style.height = ArrMenus[$intMenu]["maxheight"] + "px";
		window.clearInterval(activeOpening[$intMenu]);
		delete activeOpening[$intMenu];
	}
}

function menu_hide($intMenu) {
	if (!activeClosing[$intMenu]) {
		if (!document.getElementById(ArrMenus[$intMenu]["id"]).style.height) {
			document.getElementById(ArrMenus[$intMenu]["id"]).style.height = ArrMenus[$intMenu]["maxheight"] + "px";
		}
		
		// delete opening process if active
		if(activeOpening[$intMenu]) {
			window.clearInterval(activeOpening[$intMenu]);
			delete activeOpening[$intMenu];
		}
		
		activeClosing[$intMenu] = window.setInterval("menu_closing(" + $intMenu + ")", 1);
	}
}

function menu_closing($intMenu) {
	var intNowheight = eval(document.getElementById(ArrMenus[$intMenu]["id"]).style.height.split("px")[0]);
	if (intNowheight > ArrMenus[$intMenu]["minheight"]) {
		var intNewheight = intNowheight - closetimer;
		document.getElementById(ArrMenus[$intMenu]["id"]).style.height = Math.max(intNewheight, ArrMenus[$intMenu]["minheight"]) + "px";
	}
	else {
		document.getElementById(ArrMenus[$intMenu]["id"]).style.height = ArrMenus[$intMenu]["minheight"] + "px";
		window.clearInterval(activeClosing[$intMenu]);
		delete activeClosing[$intMenu];
	}
}