var SiteUnderOptions = {

	activeStatus: '',
	targetUrl: ''

}

function addLoadEvent(a)
{
	var b=window.onload;
	if(typeof window.onload!="function")
		window.onload=a
	else
	{
		window.onload=function()
		{
			if(b)b();
			a();
		}
	}
}

var SiteUnder = {

	initialize: function()
	{
		SiteUnder.statusFlag = false;
		SiteUnder.isOpened	= SiteUnder.getCookie('ap');

		if (SiteUnderOptions.activeStatus == true && SiteUnder.isOpened == false)
		{
			SiteUnder.statusFlag = true;
		}

		if (SiteUnder.statusFlag == true && SiteUnder.isOpened == false)
		{
			SiteUnder.eventListener(document.body, 'mouseup', SiteUnder.preLoad, false);
			setTimeout('SiteUnder.launchWindow(self)', 100);
		}
	},

	preLoad: function(e)
	{
		oTarget = e.target || e.srcElement;

		if (oTarget.tagName.toLowerCase() != 'select')
		{
           		 SiteUnder.launchWindow(oTarget);
		}
	},

	eventListener: function(oTarget, sEvent, sFunction, bCapture)
	{
		if(document.addEventListener)
		{
			return oTarget.addEventListener(sEvent, sFunction, bCapture);
		}
		else
		{
			return oTarget.attachEvent('on' + sEvent, sFunction);
		}
	},

	launchWindow: function(oTarget)
	{
		if(SiteUnder.statusFlag == true)
		{
			var popUnder = window.open(SiteUnderOptions.targetUrl,'_blank','toolbar=1,location=1,directories=1,status=1,scrollbars=1,resizable=1,copyhistory=1,menuBar=1');

			if(null == popUnder || true == popUnder.closed || !popUnder || popUnder == undefined || popUnder == 'undefined')
			{
				this.statusFlag = true;
			}
			else
			{
				popUnder.blur();
				window.focus();
				oTarget.focus();
				this.setCookie('ap', '1', 3);
				this.statusFlag = false;
			}
		}
	},

	getCookie: function(sName)
	{
		var sValueTop = document.cookie.indexOf(sName + '=');

		if(sValueTop >= 0)
		{
			var sValueEnd = document.cookie.indexOf(';', sValueTop);
			sValueTop 	+= sName.length + 1;

			if(sValueEnd < 0)
				sValueEnd = document.cookie.length;
			return unescape(document.cookie.substring(sValueTop, sValueEnd));
		}
		return false;
	},

	setCookie: function(sName, sValue, sDate)
	{
		var oDate = new Date();

		oDate.setTime(oDate.getTime() + (sDate * 3600 * 1000));
		document.cookie = sName + '=' + escape(sValue) + ';expires=' + oDate.toGMTString();
	}
}

addLoadEvent(SiteUnder.initialize);