
var dynMenuData = new Array();


function makeHover(itemId, menuId){
	var style = dynMenuData[menuId]['structure'][itemId]['hoverStyle'];

	setStyleString(itemId, style);	
	
	$(itemId).className = dynMenuData[menuId]['structure'][itemId]['hoverClass'];
}

function hideHover(itemId, menuId){
	var style = dynMenuData[menuId]['structure'][itemId]['orgStyle'];
	
	setStyleString(itemId, style);	
	
	$(itemId).className = dynMenuData[menuId]['structure'][itemId]['orgClass'];
}

function rolloutMenu(itemId, menuId){
	dynMenuData[menuId]['actuallyUnrolled'][itemId] = false;
	
	var structure = dynMenuData[menuId]['structure'];
	for (structItem in structure){
		if (structure[structItem]['parent'] == itemId)
			rolloutMenu(structItem, menuId);
	}
}
 

function hideSubMenu(itemId, menuId){
	var item = $(itemId);
	if (item){
		dynMenuData[menuId]['actuallyUnrolled'][itemId] = false;
		var itemData = dynMenuData[menuId]['structure'][itemId];
		if (itemData){
			item.innerHTML = itemData['orgContents'];
		}
		
		hideHover(itemId, menuId);
	}
}


function showSubMenu(itemId, menuId){
	var item = $(itemId);
	if (item){
		if (dynMenuData[menuId]['actuallyUnrolled'][itemId])
			return;
		
		dynMenuData[menuId]['actuallyUnrolled'][itemId] = true;
		var itemData = dynMenuData[menuId]['structure'][itemId];
		if (itemData){
		
			var actuallyUnrolled = dynMenuData[menuId]['unrolledChild'][itemData['parent']];
			if (actuallyUnrolled){
				if (itemData['popUpType']){
					rolloutMenu(actuallyUnrolled, menuId);
					hideSubMenu(actuallyUnrolled, menuId);
				}
			}
		
		
			item.innerHTML = itemData['orgContents'] + itemData['subContents'];
			dynMenuData[menuId]['unrolledChild'][itemData['parent']] = itemId;
		}
		
	}
	
}

function onMouseOverDynMenu(itemId, menuId){
	makeHover(itemId, menuId);
	showSubMenu(itemId, menuId);
}
 
function onMouseOutDynMenu(itemId, menuId){
	if (dynMenuData[menuId]['structure'][itemId]['popUpType'] == false){	
		hideHover(itemId, menuId);
	}
}


function hideMenu(menuId)
{
	for (var itemId in dynMenuData[menuId]['structure'])
	{
		if (!dynMenuData[menuId]['oryginallyUnrolled'][itemId])
		{
			hideSubMenu(itemId, menuId);
		}
	}
}

function leaveMenu(menuId)
{
	dynMenuData[menuId]['timer'] = setTimeout(function() { hideMenu(menuId); }, 100);
}

function enterMenu(menuId)
{
	clearTimeout(dynMenuData[menuId]['timer']);	
}


function initMenu(menuId)
{
}