// JavaScript Document

function addEventToNodeName(nodeType, eventType, eventFunction)
{
	var nodes;
	nodes=document.getElementsByTagName(nodeType);
	for(var i=0; i<nodes.length; i++)
	{
		var node = nodes[i];
		Lib.Dom.addEvent(node, eventType, eventFunction);
	}
}

var openNode = false;
function hideAll()
{
	var faqs = Lib.Dom.getElementsByClassName(document, 'ul', 'faq');
	for (var i=0; i<faqs.length; i++){
		h3s = faqs[i].getElementsByTagName("h3");
		for (var a=0; a<h3s.length; a++){
			var reldiv = Lib.Dom.Elm.first(h3s[a].parentNode, "div");
			h3s[a].isOpen = false;
			reldiv.style.display='none';
			h3s[a].className = "";
		}
	}

}

function showSection(e)
{
	var node = $(e);

	var doOpen = false;
	if(!node.isOpen)
	{
		doOpen = true;
	}

	hideAll();

	if(doOpen)
	{
		displaySiblingUL(node);
		node.isOpen = true;
		node.className = 'selected';
	}else {
		node.className = '';
		node.isOpen = false;
	}
}

function highlightHeader(e, showHighLight)
{
	var node = $(e);
	if (!node.isOpen){
		if(showHighLight)
		{
			node.className = 'headerHighLight';
		}
		else
		{
			node.className = '';
		}
	}
}

function displaySiblingUL(headerNode)
{

	var nextNode=Lib.Dom.Elm.first(headerNode.parentNode, "div");
	nextNode.style.display='block';
	
}

var isDone = false;
var h3list = new Array();
var faqDivs;
function init()
{
	if (isDone){
	return;
	}
	isDone = true;
	
	faqDivs = Lib.Dom.getElementsByClassName(document, 'ul', 'faq');
	
	
	for (var a=0; a<faqDivs.length; a++){
	  var h3elms = faqDivs[a].getElementsByTagName('h3');
	  for (var e=0; e<h3elms.length; e++){
	    h3list.push(h3elms[e]);
	  }
	  
	}
	
	if (faqDivs.length > 0){
	hideAll();
	}
	for (var i=0;i<h3list.length;i++)
	{
		
		Lib.Dom.addEvent(h3list[i], 'click', showSection);
		h3list[i].style.cursor = 'pointer';
		Lib.Dom.addEvent(h3list[i], 'mouseover', function(e) {highlightHeader(e, true);});
		Lib.Dom.addEvent(h3list[i], 'mouseout',  function(e) {highlightHeader(e, false);});
	}
	

}
	

Lib.Dom.addEvent(window, 'load', init);