function elemGetPosition(elem)
{
		var left = 0;
		var top  = 0;

		while (elem.offsetParent)
		{
			left += elem.offsetLeft;
			top += elem.offsetTop;
			elem = elem.offsetParent;
		}
	
		left += elem.offsetLeft;
		top += elem.offsetTop;
		
		return {x:left, y:top};
} // elemGetPosition

var userInfoTimer = 0;
var userInfoImage = null;

function showUserInfo(elem, pic, names, values)
{
	clearTimeout(userInfoTimer);
	var div = document.getElementById('userInfoDiv');
	if (div == null)
	{
		var body = document.getElementsByTagName('body')[0];
		var div = document.createElement('div');
		div.setAttribute('id', 'userInfoDiv');
		div.style.position = 'absolute';
		div.style.backgroundColor = '#ed090a';
		div.style.backgroundImage = "url('graphics/red/master_top_gradient_32x90.jpg')";
		div.style.backgroundRepeat = "repeat-x";
		div.style.cursor = 'default';
		div.style.border = '1px solid #000000';
		div.style.visibility = 'hidden';
		div.style.zIndex = 900;
		body.appendChild(div);
	}
	
	if(elem.addEventListener) 
		elem.addEventListener('mouseout', hideUserInfoDiv, false);
	else if(elem.attachEvent)
		elem.attachEvent('onmouseout', hideUserInfoDiv);


	var divHeight = 115+10;
	if (pic == '')
		divHeight = 80+10;
	
	var elemHeight = 25;
	var divWidth = 400;
	var divTop = 0;
	var divLeft = 0;
	var elemPos = elemGetPosition(elem);
	var elemTop = elemPos.y;
	var elemLeft = elemPos.x;
	
	if (document.body.scrollTop+(document.body.clientHeight/2) < elemTop && elemTop > divHeight+elemHeight)
		divTop = elemTop-divHeight;
	else
		divTop = elemTop+elemHeight;
	
	div.style.top = divTop + 'px';
	
	if (document.body.scrollLeft+document.body.clientWidth < elemLeft + divWidth)
		divLeft = document.body.scrollLeft+document.body.clientWidth-divWidth;
	else
		divLeft = elemLeft;
	
	if (divLeft < document.body.scrollLeft)
		divLeft = document.body.scrollLeft;
	
	div.style.left = divLeft+ 'px';

	var table = '<table cellspacing="0" style="padding: 0px;">';
	if (pic != '')
	{
		userInfoImage = new Image();
		userInfoImage.src = 'http://www.fiestainfo.com/profiles/pictures/'+pic;
		table += '<tr><td><img style="height: 120px" id="userInfoImage" /></td>';
	}
	else
	{
		userInfoImage = null;
		table += '<tr>';
	}
	
	table += '<td style="vertical-align: top"><table>';
	for (i=0; i<names.length; i++)
		table += '<tr><td class="font_small" style="padding-right: 5px">'+ names[i] +':</td><td class="font_small" style="padding-right: 5px">'+ values[i] +'</td></tr>';
	table += '</table></td></tr></table>';
	
	div.innerHTML = table;
	
	
	var elemPos = elemGetPosition(elem);
	var elemTop = elemPos.y;
	var elemLeft = elemPos.x;
	userInfoTimer  = setTimeout(showUserInfoDiv, 1000);
} // showUserInfo

function showUserInfoDiv()
{
	clearTimeout(userInfoTimer);
	
	if (userInfoImage != null)
	{
		if (!userInfoImage.complete)
		{
			userInfoTimer  = setTimeout(showUserInfoDiv, 100);
			return;
		}
		var pic = document.getElementById('userInfoImage');
		pic.src = userInfoImage.src;
	}
	
	div = document.getElementById('userInfoDiv');
	div.style.visibility = 'visible';
} // showUserInfoDiv

function hideUserInfoDiv()
{
	clearTimeout(userInfoTimer);
	div = document.getElementById('userInfoDiv');
	div.style.visibility = 'hidden';
} // hideUserInfoDiv