var currentItem = "";
var popupFocus = false;
var switchDone = true;
var timeout = 0;
var lockTimeout = 0;
var waiting = "";

function displayHeader(item)
{	
	if (switchDone)
	{
		waiting = "";
		clearTimeout(timeout);
		switchDone = false;
		lockTimeout = setTimeout('unlock()', 500);
		if(currentItem != item){
			if(currentItem != ""){		
				hideHeader(true);
				currentItem = item;
			}
			else
			{
				currentItem = item;
				showHeader();
			}
			
		}
	}
	else
	{
		waiting = item;
	}
}

function unlock()
{
	switchDone = true;
}

function hideHeader(callShow)
{
	if(currentItem != "")
	{		
		if(callShow)
			new Effect.BlindUp(currentItem,{duration:0.25, afterFinish:showHeader});
		else
		{
			new Effect.BlindUp(currentItem,{duration:0.25});
			currentItem = "";
		}
		
	}
}

function showHeader(){
	try
	{
		new Effect.BlindDown(currentItem,{duration:0.25, afterFinish:setFocus});
		timeout = setTimeout('checkField()', 3000);
	}
	catch (e)
	{ /*do nothing*/ }
}

function checkField()
{
	if (currentItem == "searchDiv")
	{
		if ($('search').value == "" && !popupFocus )
		{
			hideHeader();
			return null;
		}
	}
	else
	{
		if ($('username').value == "" && !popupFocus)
		{
			hideHeader();
			return null;
		}
	}
	setTimeout('checkField()', 3000);
}

function setSearchFocus(){
	document.getElementById("search").focus();
}

function setFocus()
{
	switchDone = true;
	clearTimeout(lockTimeout);
	if (waiting != "") displayHeader(waiting);
	
	try
	{
	if (currentItem == "searchDiv")
		$('search').focus();
	else if(currentItem == "clientSite")
		$('username').focus();
	}
	catch (e)
	{}
}

function toggleHeader(item)
{
	if(currentItem == "")
		displayHeader(item);
	else
	{	
		if(currentItem == item)
			hideHeader();
	}
}

