var intervalOpenId;
var intervalCloseId;
var actualSubMenu = "";

function toggleSubMenu(submenu, size)
{
	if (intervalOpenId) clearInterval(intervalOpenId);
	if (intervalCloseId) clearInterval(intervalCloseId);
	
	var element = document.getElementById(submenu);
	if (element.style.height == '') element.style.height = "0px";
	
	if (actualSubMenu != "" && actualSubMenu != submenu) closeSubMenu(actualSubMenu);
	
	if (parseInt(element.style.height) == 0)
	{
		actualSubMenu = submenu;
		openSubMenu(submenu, size);
	}
	else
	{
		actualSubMenu = "";
		closeSubMenu(submenu);
	}
}

function openSubMenu(submenu, size)
{
	intervalOpenId = setInterval('checkOpen(\''+submenu+'\', '+size+')', 10);
}

function quickSizeSubMenu(submenu, size)
{
	var element = document.getElementById(submenu);
	element.style.height = size + "px";	
}

function checkOpen(submenu, size)
{
	var element = document.getElementById(submenu);
	var count = parseInt(element.style.height) + 10;
	
	if (count >= size)
	{
		element.style.height = size+"px";
		clearInterval(intervalOpenId);
	}
	else
	{
		element.style.height = count + "px";	
	}
}

function closeSubMenu(submenu)
{
	intervalCloseId = setInterval('checkClose(\''+submenu+'\')', 10);
}

function checkClose(submenu)
{
	var element = document.getElementById(submenu);
	var count = parseInt(element.style.height) - 10;
	
	if (count <= 0)
	{
		element.style.height = "0px";
		clearInterval(intervalCloseId);
	}
	else
	{
		element.style.height = count + "px";
	}
}
