/**
 * Main
 */
function main()
{
	addMenuEventListeners();
	setBlocksWidth();
}

/**
 * Add menu event listeners to make the CSS hover function work.
 */
function addMenuEventListeners()
{
	//detect internet explorer 6
	if (navigator.userAgent.indexOf("MSIE") == -1) return false;
	
	//get menu element
	var menuDiv = document.getElementById('menuDiv');
	if (menuDiv == null) return false;
	var listItems = menuDiv.getElementsByTagName('li');
	
	for (i = 0; i < listItems.length; i++)
	{
		listItems[i].attachEvent('onmouseover', ieMenuOnMouseOver);
		listItems[i].attachEvent('onmouseout', ieMenuOnMouseOut);
	}
}

/**
 * IE : On Mouse Over
 */
function ieMenuOnMouseOver()
{
	e = window.event;	
	
	sourceNode  = e.srcElement;
	parentNode  = e.srcElement.parentNode;

	mainNode = (sourceNode.nodeName == 'LI') ? sourceNode : parentNode;
	if (mainNode.className == 'active') return false;
	
	mainNode.className = 'onmouseover';
	
	subNodes = mainNode.getElementsByTagName('a');
	if (subNodes.length <= 0) return false;
	subNode = subNodes[0];
	
	subNode.className  = 'onmouseover';
}

/**
 * IE : On Mouse Out
 */
function ieMenuOnMouseOut()
{
	e = window.event;	
	
	sourceNode  = e.srcElement;
	parentNode  = e.srcElement.parentNode;

	mainNode = (sourceNode.nodeName == 'LI') ? sourceNode : parentNode;
	if (mainNode.className == 'active') return false;
	
	mainNode.className = 'onmouseout';
	
	subNodes = mainNode.getElementsByTagName('a');
	if (subNodes.length <= 0) return false;
	subNode = subNodes[0];
	
	subNode.className  = 'onmouseout';
}

/**
 * Specific CSS Theme width
 */
function setBlocksWidth()
{
	// CSS original size
	var leftColumnWidth   = 171;//px
	var centerColumnWidth = 940;//px
	var rightColumnWidth  = 171;//px
	//-----------------------
	
	//define center column width
	if (hasLeftBlocks)
	{
		centerColumnWidth -= leftColumnWidth;
	}
	
	if (hasRightBlocks)
	{
		centerColumnWidth -= rightColumnWidth;
	}
	
	//define divs
	var divColumnLeft   = document.getElementById('blocks-left');
	var divColumnCenter = document.getElementById('blocks-center');
	var divColumnRight  = document.getElementById('blocks-right'); 
	
	//hide columns
	if (!hasLeftBlocks) divColumnLeft.style.display = "none";
	if (!hasRightBlocks) divColumnRight.style.display = "none";
	
	//set proper widths
	divColumnLeft.style.width   = leftColumnWidth + 'px';
	divColumnCenter.style.width = centerColumnWidth + 'px';
	divColumnRight.style.width  = rightColumnWidth + 'px';
	
	//relative widths
	var divColumnCenterDivs = divColumnCenter.getElementsByTagName('div');
	for (var i = 0; i < divColumnCenterDivs.length; i ++)
	{
		switch (divColumnCenterDivs[i].className)
		{
			case "blocks-center-top":
			case "blocks-center-middle":
			case "blocks-center-bottom":
				divColumnCenterDivs[i].style.width = (centerColumnWidth - 21) + 'px';
			break;
			case "blocks-center-top-m":
			case "blocks-center-bottom-m":
				divColumnCenterDivs[i].style.width = (centerColumnWidth - 29) + 'px';
			break;
			case "blocks-center-middle-m":
				divColumnCenterDivs[i].style.width = (centerColumnWidth - 61) + 'px';
			break;
		}
	}	
}

/**
 * Faq handler
 */
function toggleFaq(el, name)
{
	//define answerdiv
	var answerDiv = document.getElementById(name);
	if (!answerDiv) return false;
	
	//define whether we should close all	
	var closeAll = (answerDiv.style.display == 'none') ? false : true;

	//hide all answers
	var allDivs = document.getElementsByTagName('div');
	for (var i = 0; i < allDivs.length; i ++)
	{
		if (allDivs[i].className == 'answer')
		{
			allDivs[i].style.display = 'none';
		}
	}	
	
	//deactivate all questions
	var allA = document.getElementsByTagName('a');
	for (var i = 0; i < allA.length; i ++)
	{
		if (allA[i].className == 'questionActive')
		{
			allA[i].className = 'question';
		}
	}
	
	//show answer
	if (!closeAll)
	{
		el.className = 'questionActive';
		answerDiv.style.display = 'block';
	}
}

/**
 * Opens a new window.
 */
function newWindow(url) {
	var load = window.open(url,'','');
}
