var IE = document.all?true:false
var tempX = 0
var tempY = 0

if(window.XMLHttpRequest){
	XMLHttpRequestObject = new XMLHttpRequest();
} else if(window.ActiveXObject) {
	XMLHttpRequestObject = new ActiveXObject("Microsoft.XMLHTTP");
}

function setRollOverTimer(id, field, balloon, thumb, position)
{
	if(balloon=="desc_container_top")
	{
		hideBalloon('desc_container');
	}
	else
	{
		hideBalloon('desc_container_top');	
	}
	document.getElementById("rollOveredGame").value=id;
	setTimeout(function(){getPopContent(id, field, balloon, thumb, position)}, 300);
}

function clearRollOverTimer()
{
	document.getElementById("rollOveredGame").value="";
}

function getPopContent(id, field, balloon, thumb, position)
{	
	if(document.getElementById("currentGame").value==id)
	{
		return;
	}
	else
	{	
		
		if(document.getElementById("rollOveredGame").value==id)
		{
			showLoading(field)
			document.getElementById(field).innerHTML = "";
			
			showBalloon(balloon, thumb, position);
			if(position=="auto_fixed")
			{
				var url = "http://www.ultimatearcade.com/include/php/description-mini.php";
			}
			else
			{
				var url = "http://www.ultimatearcade.com/include/php/description.php";
			}
			
			if(XMLHttpRequestObject) {
				XMLHttpRequestObject.open("POST", url);
				XMLHttpRequestObject.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
				
				
				XMLHttpRequestObject.onreadystatechange = function()
				{			
					if(XMLHttpRequestObject.readyState == 4 && XMLHttpRequestObject.status == 200)
					{			
						result = XMLHttpRequestObject.responseText;
						document.getElementById(field).style.height="auto";								
						document.getElementById(field).innerHTML = result;
						hidePreloader(field);
						if(position=='fixed')
						{			
							repositionBalloonFixed(balloon, thumb);
						}
						else
						{
							repositionBalloonAuto(balloon, thumb);
						}
						document.getElementById("currentGame").value=id;
					}
				}
				
				post_data = "id=" + id;
				
				XMLHttpRequestObject.send(post_data);
			}
		}
	}
	
}

function updateTimer()
{
	document.getElementById("rollOverTimer").value="true";
}

function hideBalloon(balloon)
{	
	try
	{
		tooltip_top	= document.getElementById("desc_container_top");
		tooltip_top.style.visibility = "hidden";
	}
	catch(err)
	{
		//nothing
	}
	
	try
	{
		tooltip	= document.getElementById(balloon);
		tooltip.style.visibility = "hidden";
	}
	catch(err)
	{
		//nothing
	}
	
	document.getElementById("currentGame").value="";
	document.getElementById("rollOveredGame").value="";
}

function showBalloon(balloon, thumb, position)
{
	document.getElementById(balloon).style.visibility = "visible";
	if(position=='fixed')
	{	
		repositionBalloonFixed(balloon, thumb);
	}
	else
	{
		repositionBalloonAuto(balloon, thumb);
	}	
}

function hidePreloader(field)
{
	document.getElementById(field).style.backgroundPosition="-100px -100px";
}

function showLoading(field)
{
	document.getElementById(field).style.height="100px";
	document.getElementById(field).style.backgroundPosition="50% 50%";	
}


function repositionBalloonFixed(balloon, thumb)
{	
	gameLink = document.getElementById(thumb);
	tooltip = document.getElementById(balloon);
	h=document.getElementById("description_div");	
	marginLeft=gameLink.offsetWidth-80;
	marginTop=0;
		
	tooltip.style.left = gameLink.offsetLeft-tooltip.offsetWidth+(150)+"px";
	tooltip.style.top = gameLink.offsetTop-tooltip.offsetHeight-marginTop-87+(323)+"px";
	
}


function repositionBalloonAuto(balloon, thumb)
{	
	gameLink 		= document.getElementById(thumb);
	tooltip 		= document.getElementById(balloon);
	h				= document.getElementById("description_div_top");
	marginLeft		= gameLink.offsetWidth-120;
	marginTop		= 420;
	outerTableLeft	= document.getElementById("fg_table").offsetLeft+(80);
	genres 			= thumb.substring(thumb.length-7, thumb.length);
	catCode 		= thumb.substring(thumb.length-9, thumb.length);
	genreTableLeft	= 0;
	genreTableTop	= 0;
	centerLeft		= 150;
	centerTop		= 43;
	
	if(genres=="_genres")
	{
		switch(catCode)
		{
			case "_1_genres": genreTableLeft = document.getElementById("Action_genres").offsetLeft; 	genreTableTop = document.getElementById("Action_genres").offsetTop;		break;
			case "_2_genres": genreTableLeft = document.getElementById("Sports_genres").offsetLeft; 	genreTableTop = document.getElementById("Sports_genres").offsetTop;		break;
			case "_3_genres": genreTableLeft = document.getElementById("Arcade_genres").offsetLeft;		genreTableTop = document.getElementById("Arcade_genres").offsetTop;		break;
			case "_4_genres": genreTableLeft = document.getElementById("Classic_genres").offsetLeft;	genreTableTop = document.getElementById("Classic_genres").offsetTop;	break;
			case "_5_genres": genreTableLeft = document.getElementById("Puzzles_genres").offsetLeft;	genreTableTop = document.getElementById("Puzzles_genres").offsetTop;	break;
			case "_6_genres": genreTableLeft = document.getElementById("Casino_genres").offsetLeft; 	genreTableTop = document.getElementById("Casino_genres").offsetTop;		break;
		}		
		genreTableLeft += 0;
		genreTableTop += 350;
	}
	
	tooltip.style.left = (gameLink.offsetLeft-tooltip.offsetWidth)+(outerTableLeft)+(genreTableLeft)+(centerLeft)+"px";
	tooltip.style.top = (gameLink.offsetTop+gameLink.offsetHeight+marginTop)+genreTableTop+(centerTop)+"px";
	if(tooltip.offsetLeft < 0)
	{
		tooltip.style.left = gameLink.offsetLeft+marginLeft+(outerTableLeft-80)+(genreTableLeft)+(centerLeft)+"px";		
	}		

}
