var open_menu;
var suspended = false;

function OpenSubmenu(element) {
	
	/*if( suspended ) return;
	window.setTimeout( "unsuspend()", 150 );
	suspended = true;*/
	
	if( open_menu && open_menu != element )
		HideSubmenu(open_menu);
		
	open_menu = element;

	var submenu = $(element.getAttribute("submenu"));
	if( $(submenu).open ) { return; }
	//element.className = 'submenu';//_over';
	var count = parseInt($(submenu).getAttribute('count'));
	//if( count == 0 ) return;
	InsureAnimate(submenu,1);
}

function HideSubmenu(element) {
	var submenu = $(element.getAttribute("submenu"));
	//element.className = 'submenu';
	InsureAnimate(submenu,-1);
}

function InsureAnimate(submenu,step){
	var animating = false;
	if( submenu.step )animating=(submenu.step!=0);
		submenu.step = step;
	
	if(! animating )
		Animate( submenu.id );
}

function Animate( element_id ) {
	var element = $(element_id);
	var step = element.step;
	var count = parseInt(element.getAttribute('count'));
	var max_height = 7;
	var height = GetHeight(element);
	
	if( (step<0&&height<=.1)||(step>0&&height>=max_height)) {
		if( element.step > 0 ){ element.open = true;}
		else { element.open = false; }
		element.step = 0;
		return;
	} else {
		element.style.height = parseFloat(height+step)+"em";
		window.setTimeout("Animate('"+element_id+"');",30);
	}
}

function GetHeight(element) {
	var heightStr = element.style.height;
	if( heightStr && heightStr != "" )
		return parseFloat(heightStr.substring(0,heightStr.length-2));
	else
		return .1;
}

function unsuspend() {
	suspended = false;
}

function ToggleVisibility( levelId ) 
{
	if (document.all)
	{
		theLevel = document.all["div_" + levelId];
		theImage = document.all["img_" + levelId];
	}
	else
	{
		theLevel = document.getElementById( "div_" + levelId );
		theImage = document.getElementById( "img_" + levelId );
	}
	if( theLevel.style.display == "block" )
	{
		theLevel.style.display = "none";
		theImage.src = "/admin/images/closed_box.gif";	
	} else
	{
		theLevel.style.display = "block";
		theImage.src = "/admin/images/open_box.gif";	
	}
}
