function toggle_ul(anchor)
{
	var li_object = anchor.parentNode;

	var nodes = li_object.getElementsByTagName('ul');

	for (var i = 0; i < nodes.length; i++)
	{
		if (nodes[i].className == 'collapsed')
		{
			nodes[i].className = 'expanded';
			anchor.className = 'opened';
		}
		else
		{
			nodes[i].className = 'collapsed';
			anchor.className = 'closed';
		}
		// first is enough .. break loop
		break;
	}
}

function expand_first_ul(node)
{
	var nodes = node.getElementsByTagName('ul');
	for (var i = 0; i < nodes.length; i++)
	{
		nodes[i].className = 'expanded';
		return;
	}
}

function show_menu_node(rubriekid, pageid)
{
	var rubriek_anchor = document.getElementById('menunode_'+rubriekid);

	if (rubriek_anchor != null)
	{
		rubriek_anchor.className="active";
		var rubriek_li = rubriek_anchor.parentNode;
		expand_first_ul(rubriek_li);

		var superrubriek_ul = rubriek_li.parentNode;
		superrubriek_ul.className = "expanded";

		var superrubriek_li = superrubriek_ul.parentNode;
		if (superrubriek_li != null)
		{
			var superrubriek_ul2 = superrubriek_li.parentNode;
			superrubriek_ul2.className = "expanded";
		}
	}
}

function init()
{
	//make sure we only get here once
	if (arguments.callee.done)
	{
		return;
	}
	arguments.callee.done = true;

	var menu = document.getElementById('navtree');
	collapse_all(menu);
	build_treecontrols(menu);
	init_legislation();

	// Ruimte naast readspeaker icoon
	readspeaker_space();
}

function collapse_all(menu)
{
	var items = menu.getElementsByTagName('UL');

	for (var n = 0; n < items.length; n++)
	{
		items[n].className = 'collapsed';
	}
}

function build_treecontrols(menu)
{

	var items = menu.getElementsByTagName('LI');
	
	for (var n = 0; n < items.length; n++)
	{
		var a = items[n].getElementsByTagName('A');
		var ul = items[n].getElementsByTagName('UL');
		
		a[0].onclick = function() { toggle_ul(this); };

		if (ul.length > 0)
		{
			a[0].className = 'closed';
		}
	}

}

function readspeaker_space()
{
	var welcome = document.getElementById("welcome");
	var links = welcome.getElementsByTagName("a");
	
	for (var n = 0; n < links.length; n++)
	{
		if (links[n].className == "readspeaker")
		{
			var h1 = welcome.getElementsByTagName("h1");
			h1[0].style.marginRight = "3.5em";
		}	
	}
}

function init_legislation()
{
	var sum_link	= document.getElementById("reg_sum_link");
	var summary		= document.getElementById("reg_summary");
	var index		= document.getElementById("reg_index");
	var index_link	= document.getElementById("reg_index_link");
	var info		= document.getElementById("reg_info");
	var info_link	= document.getElementById("reg_info_link");

	if (summary)
	{
		summary.className = "invisible";	
	}
	
	if (index)
	{
		index.className = "invisible";	
	}
	
	if (info)
	{
		info.className = "invisible";
	}
	
	if (sum_link)
	{
		sum_link.onclick = function() { toggle('reg_summary'); return false; };
	}
	
	if (index_link)
	{
		index_link.onclick = function() { toggle('reg_index'); return false; };
	}
	
	if (info_link)
	{
		info_link.onclick = function() { toggle('reg_info'); return false; };
	}
}

function toggle(el)
{
	var elem		= document.getElementById(el);
	
	switch (el)
	{
		case "reg_summary":
			var sum_link	= document.getElementById("reg_sum_link");
			if (elem.className == "visible")
			{
				elem.className = "invisible";
				if (sum_link)
					sum_link.className = "dicht";
			}
			else
			{
				elem.className = "visible";
				if (sum_link)
					sum_link.className = "open";
			}
			break;
		case "reg_index":
			var index_link	= document.getElementById("reg_index_link");
			if (elem.className == "visible")
			{
				elem.className = "invisible";
				if (index_link)
					index_link.className="dicht";
			}
			else
			{
				elem.className = "visible";
				if (index_link)
					index_link.className="open";
			}
			break;
		case "reg_info":
			var index_link	= document.getElementById("reg_info_link");
			if (elem.className == "visible")
			{
				elem.className = "invisible";
				if (index_link)
					index_link.className="dicht";
			}
			else
			{
				elem.className = "visible";
				if (index_link)
					index_link.className="open";
			}
			break;
	}
}

// 	trigger onload when DOM is ready. for IE see ie_onload.js and the conditional
//	comment in main.jsp

//	(moz browsers)
if (document.addEventListener)
{
    document.addEventListener("DOMContentLoaded", init, null);
}
