/*
* Description: Mouseover elements
*/
  
var W3CDOM = (document.createElement && document.getElementsByTagName);

var mouseOvers = new Array();
var mouseOuts = new Array();

function addLoadEvent(func) {
  var oldonload = window.onload;
  if (typeof window.onload != 'function') {
    window.onload = func;
  } else {
    window.onload = function() {
      if (oldonload) {
        oldonload();
      }
      func();
    }
  }
}

addLoadEvent(function()
{
	if (!W3CDOM) return;
	var nav = document.getElementById('mouseovers');
	var imgs = nav.getElementsByTagName('img');
	for (var i=0;i<imgs.length;i++)
	{
		imgs[i].onmouseover = mouseGoesOver;
		imgs[i].onmouseout = mouseGoesOut;
		var suffix = imgs[i].src.substring(imgs[i].src.lastIndexOf('.'));
		mouseOuts[i] = new Image();
		mouseOuts[i].src = imgs[i].src;
		mouseOvers[i] = new Image();
		mouseOvers[i].src = imgs[i].src.substring(0,imgs[i].src.lastIndexOf('.')) + "_omo" + suffix;
		imgs[i].number = i;
	}
});

addLoadEvent(function()
{
		this.allinks = document.getElementsByTagName('a');
		for (i=0; i<this.allinks.length; i++){
			var lnk = this.allinks[i];
			if (lnk.href && lnk.href.indexOf('account.php') != -1 && lnk.href.indexOf('u=') != -1) {
				lnk.onmouseover = function(e){
					UserInfoTooltip.updateXY(e);
					var userid = this.href;
					userid = userid.substring(userid.indexOf('u=') + 2);
					UserInfoTooltip.GetTooltip(this, userid);
                }
				lnk.onmouseout = function(e){
					UserInfoTooltip.HideTooltip();
				}
			}
		}
	});

function mouseGoesOver()
{
	this.src = mouseOvers[this.number].src;
}

function mouseGoesOut()
{
	this.src = mouseOuts[this.number].src;
}

var UserInfoTooltip = {
	xCord: 0,
	GetTooltip: function(lnk, userid) {
		var tip = document.getElementById('TooltipContainer');
		var scrX = Number(this.xCord);
		var scrY = Number(this.yCord);
		var tp = parseInt(scrY+15);
		var lt = parseInt(scrX+10);
		tip.innerHTML = '<div id="TooltipLoading">Loading user info...</div>';
		if ( parseInt(document.documentElement.clientWidth+document.documentElement.scrollLeft) < parseInt(tip.offsetWidth+lt) ) {
			tip.style.left = parseInt(lt-(tip.offsetWidth+10))+'px';
		} else {
			tip.style.left = lt+'px';
		}
		if ( parseInt(document.documentElement.clientHeight+document.documentElement.scrollTop) < parseInt(tip.offsetHeight+tp) ) {
			tip.style.top = parseInt(tp-(tip.offsetHeight+10))+'px';
		} else {
			tip.style.top = tp+'px';
		}	
		tip.style.display = "block";

		var dm = new DataManager();
		dm.Param = 'UserInfoTooltip';
		dm.RequestFailedEvent = UserInfoTooltip.HandleFailure;
		dm.RequestCompleteEvent = UserInfoTooltip.ShowTooltip;
		dm.LoadData("extensions/UserInfoTooltip/ajax.php?u="+userid);
	},

	ShowTooltip: function(Request) {
		var tip = document.getElementById('TooltipContainer');
		tip.innerHTML = Request.responseText;
	},

	HideTooltip: function() {
		var tip = document.getElementById('TooltipContainer');
		tip.style.display = "none";
		tip.innerHTML = "";
	},

	HandleFailure: function(Request) {

	},
	
	updateXY: function(e) {
		if ( document.captureEvents ) {
			UserInfoTooltip.xCord = e.pageX;
			UserInfoTooltip.yCord = e.pageY;
		} else if ( window.event.clientX ) {
			UserInfoTooltip.xCord = window.event.clientX+document.documentElement.scrollLeft;
			UserInfoTooltip.yCord = window.event.clientY+document.documentElement.scrollTop;
		}
	}
}

/*
* Description: Radio
*/

function radio() {
	var radio = window.open ( 'http://www.freakangels.com/radio/', null, 'width=220,height=300,title=Whitechapel Radio');
	radio.focus();
}
