﻿var TAG_MAN_JS_SRC = "http://pfa.levexis.com/js/tman_iframe.js";
var IA_COOKIE_NAME = "IncomeAccessBTAG";
var TPID_COOKIE_NAME = "AffiliateTPID";

var IA_REGEX = /btag=\w*/;
var TPID_REGEX = /tpid=\w*/;

var day = 1000 * 60 * 60 * 24;
var inThirtyDays = new Date(new Date().valueOf() + (day * 30));
var url = window.location.toString();

function addLoadEvent(newEvent) {
	var currentLoadEvent = window.onload;
	if (typeof window.onload != 'function') {
		window.onload = newEvent;
	}
	else {
		window.onload = function() {
			currentLoadEvent();
			newEvent();
		}
	}
}

function recordCookie(cookieName, value, expires)
{
	if(value != '' && window.document.cookie.indexOf(cookieName) < 0)
	{
		window.document.cookie = cookieName + "=" + value + "; expires=" + expires.toString() + "; path=/";
	}
}

function recordSessionCookie(cookieName, value)
{
	if(value != '' && window.document.cookie.indexOf(cookieName) < 0)
	{
		window.document.cookie = cookieName + "=" + value + "; path=/";
	}
}

function getValueFromQueryString(regEx)
{
	if(url.match(regEx) != null && url.match(regEx).length != 0)
	{
		return url.match(regEx)[0].split("=")[1];
	}

	return '';
}

function recordTPIDCookie()
{
	recordSessionCookie(TPID_COOKIE_NAME, getValueFromQueryString(TPID_REGEX));
}

function recordIACookie()
{
	recordCookie(IA_COOKIE_NAME, getValueFromQueryString(IA_REGEX),inThirtyDays);
}

function setTagManVars()
{
	var regEx = /\/search\/.*\//;
	var landingPage = regEx.exec(url)[0].replace('/search/','').replace('/','');
	var tmPageRef = 0;

	switch(landingPage)
	{
		case 'betting':		tmPageRef = 1; break;
		case 'cricket':		tmPageRef = 2; break;
		case 'football':		tmPageRef = 3; break;
		case 'racing':		tmPageRef = 4; break;
		case 'rugby':		tmPageRef = 5; break;
		case 'spreadbet':		tmPageRef = 6; break;
		case 'independent':		tmPageRef = 7; break;
	}

	tmParam['tmpageref'] = tmPageRef;
	tmParam['IncomeAccessBTAG'] =  getValueFromQueryString(IA_REGEX);
}

function trackPage()
{
	recordTPIDCookie();
	recordIACookie();
	urchinTracker();	
}

function includeJSScript(url) 
{
	var js = window.document.createElement("script");

	js.setAttribute("type", "text/javascript");
	js.setAttribute("src", url);

	window.document.body.appendChild(js);
}

function getInternetExplorerVersion()
// Returns the version of Internet Explorer or a -1
// (indicating the use of another browser).
{
  var rv = -1; // Return value assumes failure.
  if (navigator.appName == 'Microsoft Internet Explorer')
  {
    var ua = navigator.userAgent;
    var re  = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
    if (re.exec(ua) != null)
      rv = parseFloat( RegExp.$1 );
  }
  return rv;
}

// Reloads the objects and embedded elements to 
// avoid the 'Click Here to use this object'
// message for IE 7
function ieObjectHack() 
{
	var ver = getInternetExplorerVersion();

	// reload objects only if IE 7
	if ( ver > -1 && ver > 6 ) 
	{
		var objectElements = document.getElementsByTagName("object");

		for (var i = 0; i < objectElements.length; i++) {
			if (objectElements[i].getAttribute("data")) objectElements[i].removeAttribute("data");
			objectElements[i].outerHTML = objectElements[i].outerHTML;
			objectElements[i].style.visibility = "visible";
		}

		var objectElements = document.getElementsByTagName("embed");
		
		for (var i = 0; i < objectElements.length; i++) {
			if (objectElements[i].getAttribute("data")) objectElements[i].removeAttribute("data");
			objectElements[i].outerHTML = objectElements[i].outerHTML;
			objectElements[i].style.visibility = "visible";
		}
	}
}


// GA Account for urchin.js
_uacct = "UA-1605044-9";

// TagMan parameters for JS include
var tmBaseUrl = 'http://pfa.levexis.com/sportingindex/tman.cgi';
var tmPageId = 1;
var tmAddJs = 1;
var tmParam = new Array();

addLoadEvent(trackPage);
addLoadEvent(ieObjectHack);
