function collapseLngList()
{
	var lngList = document.getElementById('lngList');
	
	if (null != lngList)
	{
		lngList.style.display = 'none';
		return true;
	}
	
	return false;
}

function hideLngList(event)
{
	var toElement = null;

	if (event.relatedTarget)
	{
		toElement = event.relatedTarget;
	}
	else if (event.toElement)
	{
		toElement = event.toElement;
	}
	
	while (toElement && toElement.id != 'lngList')
	{
		toElement = toElement.parentNode;
	}
	
	if (!toElement)
	{
		collapseLngList();
	}
}

function switchLngList()
{
	var lngList = document.getElementById('lngList');
	
	if (null != lngList)
	{
		if (lngList.style.display == 'block')
		{
			lngList.style.display = 'none';
		}
		else
		{
			lngList.style.display = 'block';
		}
		
		return true;
	}
	
	return false;
}

function switchDisplay(elementIdPrefix, currentElementNumber, elementCount)
{
	var element = document.getElementById(elementIdPrefix + currentElementNumber);
	
	if (null != element)
	{
		var currentStyle = element.style.display;
		
		//collapseItems(elementIdPrefix, elementCount);
		
		if (currentStyle == '' || currentStyle == 'block')
		{
			element.style.display = 'none';
		}
		else
		{
			element.style.display = 'block';
		}
	}
	
	return true;
}




function switchDisplayFAQ(elementIdPrefix, currentElementNumber, elementCount)
{ //nemam jistotu ze se tonepouziva jinde, zmnozuji pro FAQ kvuli odkazum
	var activeFAQ = getActiveTabPrefix();

	var hash = window.location.hash;
	if (hash.length > 4)
	{
		var ElementNumber = hash.substring(5) - 1;
		if (ElementNumber>-1) 
		{
			currentElementNumber = ElementNumber;
		}
		

	}

	var element = document.getElementById(elementIdPrefix + currentElementNumber);
	
	if (null != element)
	{
		var currentStyle = element.style.display;
		
		//collapseItems(elementIdPrefix, elementCount);
		
		if (currentStyle == '' || currentStyle == 'block')
		{
			element.style.display = 'none';
			if (hash.length > 4)
			{
				window.location.hash = "";
			}
		}
		else
		{
			element.style.display = 'block';
			var hash = elementIdPrefix+ '_' + (1+currentElementNumber);
			window.location.hash = hash;
		}
	}
	
	return true;
}



function openItems(elementIdPrefix, elementCount)
{
	for(var i = 0; i < elementCount; i++)
	{
		var item = document.getElementById(elementIdPrefix + i);
		
		if (null != item)
		{
			item.style.display = 'block';
		}
	}
}


function collapseItems(elementIdPrefix, elementCount)
{
	for(var i = 0; i < elementCount; i++)
	{
		var item = document.getElementById(elementIdPrefix + i);
		
		if (null != item)
		{
			item.style.display = 'none';
		}
	}
}

function changeProduct(selectedProductId, productIds)
{
	for(var i = 0; i < productIds.length; i++)
	{
		productElement = document.getElementById(productIds[i]);
		
		if (null != productElement)
		{
			productElement.className = 'product';
		}
	}

	selectedProduct = document.getElementById(selectedProductId);
	
	if (null != selectedProduct)
	{
		selectedProduct.className = 'selectedProduct';
	}
}



function switchTab(tabsId, contentId, activeTabId, activeContentId)
{
	var content = document.getElementById(contentId);

	/* skryti obsahu */
	if (content != null)
	{
		var nodes = content.childNodes;

		if (nodes != null)
		{
			for(var i = 0; i < nodes.length; i++)
			{
				if (nodes[i].nodeType == 1)
				{
					//nodes[i].style.display = 'none';
					nodes[i].className = 'tabContent';
				}
			}
		}
	}

	/* nastaveni neaktivity zalozek */
	var tabs = document.getElementById(tabsId);
	if (tabs != null)
	{
		var nodes = tabs.getElementsByTagName('h2');

		if (nodes != null)
		{
			for(var i = 0; i < nodes.length; i++)
			{
				nodes[i].className = 'tabHeading';
			}
		}
	}

	/* zobrazeni obsahu pod aktivni zalozkou */
	var activeContent = document.getElementById(activeContentId);
	if (activeContent != null)
	{
		activeContent.className = 'tabContentActive';
	}

	/* nastaveni stylu vybrane zalozky */
	var activeTab = document.getElementById(activeTabId);
	if (activeTab != null)
	{
		activeTab.className = 'tabHeadingActive';
	}

	return true;
}

function getActiveTabPrefix()
{
	var hash = window.location.hash;
	
	if (hash.length > 1)
	{
		var tabIdPrefix = hash.substring(1);
		
		if (null != tabIdPrefix && tabIdPrefix.length > 0)
		{
			return tabIdPrefix;
		}
	}
	
	return null;
}

function tabify(tabsEnvelopeId, headingsId, boxesId)
{
	var tabsEnvelope = document.getElementById(tabsEnvelopeId);
	
	if (null == tabsEnvelope)
	{
		return false;
	}
	
	if (null != tabsEnvelope.childNodes)
	{
		var headings = new Array();
		var boxes = new Array();
		
		for(var i = tabsEnvelope.childNodes.length-1; i > -1; i--)
		{
			var removedNode = tabsEnvelope.removeChild(tabsEnvelope.childNodes[i]);
		
			if (1 == removedNode.nodeType)
			{
				nodeName = removedNode.nodeName.toLowerCase();
				
				if ('h2' == nodeName)
				{
					headings.push(removedNode);
				}
				else if ('div' == nodeName)
				{
					boxes.push(removedNode);
				}
			}
		}

		if (headings.length > 0 && headings.length == boxes.length)
		{
			headings.reverse();
			boxes.reverse();
			
			headings[0].className = 'tabHeadingActive';
			boxes[0].className = 'tabContentActive';
			
			var headingsEl = document.createElement('div');
			headingsEl.className = 'headings';
			headingsEl.id = headingsId;
			
			var boxesEl = document.createElement('div');
			boxesEl.className = 'boxes';
			boxesEl.id = boxesId;
			
			for(var i = 0; i < headings.length; i++)
			{
				headingsEl.appendChild(headings[i]);
				boxesEl.appendChild(boxes[i]);
			}
			
			tabsEnvelope.appendChild(headingsEl);
			tabsEnvelope.appendChild(boxesEl);
		}
	}
	
	var activeTabPrefix = getActiveTabPrefix();
	
	if (null != activeTabPrefix)
	{
		var activeTabHeadingId = activeTabPrefix + 'h';
		var activeTabContentId = activeTabPrefix + 'c';
		
		if ( null != document.getElementById(activeTabHeadingId) && null != document.getElementById(activeTabContentId) )
		{
			switchTab(headingsId, boxesId, activeTabHeadingId, activeTabContentId);
		}
	}
	
	return true;
}


function switchDisplayInfo(elementAnotace, elementObsah, elementCount)
{
	var element = document.getElementById(elementObsah);
	var elementA = document.getElementById(elementAnotace);
	
	if (null != element)
	{
		var currentStyle = element.style.display;
		
		//collapseItems(elementIdPrefix, elementCount);
		
		if (currentStyle == '' || currentStyle == 'block')
		{
			element.style.display = 'none';
			elementA.style.display = 'block';
		}
		else
		{
			element.style.display = 'block';
			elementA.style.display = 'none';
		}
	}
	
	return true;
}

function collapseItemsInfo(elementIdPrefix, elementAIdPrefix, elementCount)
{
	for(var i = 0; i < elementCount; i++)
	{
		var item = document.getElementById(elementIdPrefix + i);
		var itemA = document.getElementById(elementAIdPrefix + i);
		
		if (null != item)
		{
			item.style.display = 'none';
			itemA.style.display = 'block';
		}
	}
}

function openItemsInfo(elementIdPrefix, elementAIdPrefix, elementCount)
{
	for(var i = 0; i < elementCount; i++)
	{
		var item = document.getElementById(elementIdPrefix + i);
		var itemA = document.getElementById(elementAIdPrefix + i);
		
		if (null != item)
		{
			item.style.display = 'block';
			itemA.style.display = 'none';
		}
	}
}

