// Element Slide
// ------------------------------

function show(id) {
	document.getElementById(id).style.display = 'block';
}

function hide(id) {
	document.getElementById(id).style.display = 'none';
}

// Verändern der Elementgröße
function changeSize(height,id) {
	document.getElementById(id).style.height = height;
}

// Auf und zuklappen von Divelementen
function slide(down,id,hi) {
	if (down) {
		if (parseInt(document.getElementById(id).style.height) < hi) {
			setTimeout(function () { slide(1,id,hi) }, 5);
			changeSize(parseInt(document.getElementById(id).style.height) + 6 + "px",id);
			show(id);
		} 
		else {
			changeSize(hi + "px" ,id);
		}
	}
	
	if (!down && parseInt(document.getElementById(id).style.height) > 0) {
		setTimeout(function () { slide(0,id,hi) }, 5);
		if ((parseInt(document.getElementById(id).style.height) - 6) <= 12) {
			changeSize("0px",id);            
			hide(id);
		}
		else {
			changeSize(parseInt(document.getElementById(id).style.height) - 6 + "px",id);
		}
	}
}

// Menü Aufklappen
// ------------------------------

var timeout	= 500;
var closetimer	= 0;
var ddmenuitem	= 0;
var hoehemarker=new Array();

function mopen(id)
{	
	mcancelclosetime();


	//if(ddmenuitem)slide(0,ddmenuitem.id,0);
	
	if(ddmenuitem) ddmenuitem.style.visibility = 'hidden';
	ddmenuitem = document.getElementById(id);
	
	// Wir merken uns die orginale Größe
	if(!hoehemarker[id]) {
		hoehemarker[id] = ddmenuitem.offsetHeight+12;
	}
	
	//changeSize(1,ddmenuitem.id);
	ddmenuitem.style.visibility = 'visible';
	//slide(1,ddmenuitem.id,hoehemarker[id]);

}

function mclose()
{
	if(ddmenuitem) {
		//slide(0,ddmenuitem.id,0);
		ddmenuitem.style.visibility = 'hidden';
	}
}

function mclosetime()
{
	closetimer = window.setTimeout(mclose, timeout);
}

function mcancelclosetime()
{
	if(closetimer)
	{
		window.clearTimeout(closetimer);
		closetimer = null;
	}
}
document.onclick = mclose; 

