// ----- class handlers
function ttsNavTree_setClass( c_node, class_id )
{
	c_node.setAttribute( "class", "" );
	c_node.attributes[ "class" ].nodeValue= class_id;
}

function ttsNavTree_getClass( c_node )
{
	return c_node.attributes[ "class" ].nodeValue;
}

// ----- handle submenus
function ttsNavTree_handler( v_node, s_node )
{
	for( var j= 0; j< v_node.length; j++ )
	{
		for( var i= 0; i< v_node[ j ].parentNode.childNodes.length; i++ )
		{
			if( v_node[ j ].parentNode.childNodes[ i ] == s_node )
				ttsNavTree_toggle( v_node[ j ], s_node );
		}
	}
}

// ----- toggle submenus
function ttsNavTree_toggle( v_node, s_node )
{
	if( ttsNavTree_getClass( v_node ) == "open" )
		ttsNavTree_setClass( v_node, "close" );
	else
		ttsNavTree_setClass( v_node, "open" );
}

// ----- initialize tree
function ttsNavTree_init( ttsNavTree_ID )
{
	var ttsNavTree_node= document.getElementById( ttsNavTree_ID );
	var s_node= ttsNavTree_node.getElementsByTagName( "h2" );
	var v_node= ttsNavTree_node.getElementsByTagName( "ul" );

	for( var i= 0; i< s_node.length; i++ )
	{
		// --- fake mouse click handler for submenus
		s_node[ i ].onclick= function()
		{
			ttsNavTree_handler( v_node, this );
	    }
		s_node[ i ].onmouseover= function()
		{
			ttsNavTree_setClass( this, "hover" );
	    }
		s_node[ i ].onmouseout= function()
		{
			ttsNavTree_setClass( this, "" );
	    }	    
	}
}
