addEvent(window,'load',miniMapInit);
//addEvent(window,'resize',miniMapDebug);
addEvent(window,'scroll',miniMapScroll);
addEvent(window,'resize',miniMapScroll);

var miniMapContainer, latestNewsContainer, lowerNavigationContainer;
var marginTop = 20;
var cScroll = null;

var MiniMapTween;


if (!window.$)
{
	function $(x)
	{ return document.getElementById(x);}
}

function miniMapInit()
{
	var miniMapContainer = $('miniMap');
	latestNewsContainer = $('latestNewsContainer');
	latestNewsTd = latestNewsContainer.parentNode.parentNode;
	//miniMapContainer.style.paddingBottom = $('Footer').getElementsByTagName('td')[0].offsetHeight + 'px';
	miniMapScroll();
}

function miniMapDebug()
{
//	$('miniMapDebug').innerHTML = 'Latest News: ' + latestNewsContainer.offsetHeight + '<br />' + 'TD: ' + latestNewsTd.offsetHeight;
}

function miniMapScroll()
{
	if (!window.miniMapContainer)
		miniMapContainer = $('miniMapContainer');
	if (!window.latestNewsContainer)
		latestNewsContainer = $('latestNewsContainer');
	if (!window.lowerNavigationContainer)
		lowerNavigationContainer = $('lowerNavigationContainer');
	
	var bodyHeight = $('mainLayout').offsetHeight;
	
	var newPos = getScroll()[1] - getPageY(latestNewsContainer) - latestNewsContainer.offsetHeight + 100;
	
	var y1 = getPageY(miniMapContainer);
	var y2 = getPageY(lowerNavigationContainer);
	var h1 = miniMapContainer.offsetHeight;
	var h2 = lowerNavigationContainer.offsetHeight;
	var d = (y1 + h1 ) - (y2 + h2);
//	window.status = d;
	
	var delta = bodyHeight - (getPageY(latestNewsContainer) + latestNewsContainer.offsetHeight + marginTop + miniMapContainer.offsetHeight + $('Footer').getElementsByTagName('td')[1].offsetHeight);
	
	if (0 < newPos)
	{
		if (!matchClass(miniMapContainer,'miniMapScrolling'))
			addClass(miniMapContainer,'miniMapScrolling');
	}
	else
	{
		if (matchClass(miniMapContainer,'miniMapScrolling'))
		{
			removeClass(miniMapContainer,'miniMapScrolling');
			if (isOpera || isSafari)
				document.getElementsByTagName('body')[0].className += ' ';
		}
	}
	
	if (delta > 0)
	{
		$('lowerNavigationContainer').style.height = 'auto';
	}
	else
	{
		$('lowerNavigationContainer').style.height = $('lowerNavigationContainer').offsetHeight - 100 - delta + 'px';
	}
	//document.title = minPos + ' :: ' + (newPos) + ' :: ' + cScroll;
	
}


function showMiniMap()
{
	var miniMap = document.getElementById('miniMap');
	if (parseInt(miniMap.style.left) != 0)
		new Tween(miniMap, 'left', Math.easeOutSine, parseInt(miniMap.style.left), 0, 30, 'px');
		
	$('rootLink').href = '/';
	$('rootLink').style.cursor = 'pointer';
}
function hideMiniMap()
{
	var miniMap = $('miniMap');
	var leftTween = new Tween(miniMap, 'left', Math.easeInSine, parseInt(miniMap.style.left), 500, 30, 'px');
	$('rootLink').href = '';
	$('rootLink').style.cursor = 'default';
}

function showMiniMapItem(sectionId)
{
	addClass($('mini_content_'+sectionId),'visible');
	removeClass($('mini_content_'+sectionId),'hidden');
	addClass($('mini_'+sectionId),'currentLink');
}
function hideMiniMapItem(sectionId)
{
	removeClass($('mini_content_'+sectionId),'visible');
	addClass($('mini_content_'+sectionId),'hidden');
	removeClass($('mini_'+sectionId),'currentLink');
}
function scrollFromMiniMap(sectionId)
{
	window.scrollTo(0,getPageY($(sectionId + '_navigation')));
}
function switchMiniMapItem(sectionId,url,title)
{
	if (!pagesSummary)
		return;
	if (pagesSummary[sectionId] == -1)
		ShowSection(sectionId,url,title);
		
	scrollFromMiniMap(sectionId);
}