

var g_strGlobParam	= '';
var webUrlToOpen	= '';
var windParams;
var oObj = null;
var id;


function addParams(u)
{
	
	// special code to pass beta=1 for beta clicktracking.
	if(g_sUrlPrefix.indexOf("beta") > -1)
		if (u.indexOf('?')> 0)
			u += "&" + "beta=1";
		else
			u += "?" + "beta=1";
	
	// add player verison if in corona
		if(g_fInCorona)
			if (u.indexOf('?')>0)
				u += "&" + "version=" + g_sPlayerVersion;
			else
				u += "?" + "version=" + g_sPlayerVersion;
			
	
	// add tracking data
	if(g_sData != "blank")
		if (u.indexOf('?')>0)
			u += "&" + g_sData;
		else
			u += "?" + g_sData;
	return u;		
}		

function setPV(u)
{
	pageFrm.location.replace(u);
}

function openWebUrl() 
{
	if (g_fInCorona) 
		{
		 player.launchURL(webUrlToOpen);
		}
	else
		{
			window.open(webUrlToOpen, 'wmc', (!windParams ? 'width=600,height=330,menubar=yes,resizable=yes,scrollbars=yes,status=yes,toolbar=yes,location=yes' : windParams), true);
		}
		
	if (g_fInPlayer) window.top.focus();
}

function openInternalWeb() 
{
	window.location=webUrlToOpen;
}

function openInternalWebParent() 
{
	window.top.location=webUrlToOpen;
}

function viewUrl(sType, sArea, sStr) 
{
	var url = g_sRedirUrl;
	
	if(url == '')
		url = 'http://redir.windowsmedia.com/'
		
	if(sArea)
		sArea = sArea + '/';
		
	url += sType + '/' + g_sClickPrefix + '/' + sArea + sStr;
	
	if (g_fInPlayer) 
	{
		if (url.indexOf('?') > 0)
			url += '&WMPFriendly=true';
		else
			url += '?WMPFriendly=true';
		
	}
	
	
	return url;
	
}

function buildRedirUrl(sTrack, sLinkId)
{
	if(sLinkId != '')
		sLinkId = '?Click=' + sLinkId;
	
	var url=viewUrl('CT', sTrack, 'd.htm'+ sLinkId);
	url = addParams(url);
	url += '&page='+g_sClickUrl;
	return url;
}

function clk(sTrack)
{
	return clickLink(this, sTrack);
}

function clickLink(obj, sTrack, sLinkId)
{
	
	oObj = obj;
	if ((sTrack != ''))	{
		var url = buildRedirUrl(sTrack, sLinkId);
		setPV(url);
		id = window.setTimeout("doClick()",1500);
		
	} else {
		id = 0;	doClick();
	}
	if (window.event != null) window.event.cancelBubble = true;	
	return false;
}

function doClick() 
{
	if(id)window.clearTimeout(id);
	if (oObj)
	{
		if (oObj.pfnCallback) 
		{
			oObj.pfnCallback(oObj);
			
		}
		else
		{ 
			clickLinkReal(oObj);
			
		}	
	}
	oObj=null;
}

function doCCB()
{
	window.setTimeout("doClick();",0);
}

function clickLinkReal(o)
{
	var l1=o.href,l2=o.web,stype=o.stype,href,s,iTimeToWait=0,prefix,protectedUrl;
	if(l2=='')
		href=l1;
	else if(l2=='#')
		s=l1;
	else
	{
		s=l1;href=l2;
	}
	if (s && (s != ''))	
	{
		// new code for protected asx
		if(o.lDest == "4"){
			// link to the app which handles the protected content.
			protectedUrl = g_sUrlPrefix + "/serveASX/serveASX.aspx?ET=" + href + "&S=" + s ;
			//ocx code
			if (g_fInCorona)
			{
				player.URL = protectedUrl;
				player.controls.play();
			}
			else
			{	
				if (g_fInPlayer)
				{
					window.external.playMedia(protectedUrl);
				}
				else
				{
					window.location = protectedUrl;
				}
			}
		}
		
		else if (s.substr(0, 4) != 'wmc:') 
		{
			//ocx code
			if (g_fInCorona)
			{
				player.URL = s;
				player.controls.play();
			}
			else
			{	
				if (g_fInPlayer)
				{
					window.external.playMedia(s);
				}
				else
				{
					window.location = s;
				}
			}
			iTimeToWait = 3000;
		}
	}
	
	if (href&&(href!='')&&(href!='#')) 
	{
		prefix = href.substr(0, 4);	
		if (prefix == 'drm:') {
			var aUrls = href.substr(4).split('|');
			if (g_fInPlayer && (aUrls.length > 0))
				href = aUrls[1];
			else
				href = aUrls[0];
		}
		if(!o.wind)
		    if (o.lDest == "0" && ((href.indexOf(g_sUrlPrefix)==0)||(href.substr(0,1)=='/'))) 
				o.lDest = "1";

		if ((o.lDest == "1") || (o.lDest == "3")) {
			
			if (g_fInPlayer && href.indexOf('WMPFriendly=true')<0) 
			{
				if (href.indexOf('?')>0)
					href+='&';
				else
					href+='?';
				href+='WMPFriendly=true';
			}
			// adding corona support here
			
			if (g_fInCorona && href.indexOf('version=')<0) 
			{
				if (href.indexOf('?')>0)
					href+='&';
				else
					href+='?';
				href+='version=' + g_sPlayerVersion;
			}
			
			// adding cobrand support here
			
			if(g_sPartner!="" && href.indexOf('partner=')<0) 
			{
				if (href.indexOf('?')>0)
					href+='&';
				else
					href+='?';
				href+='partner=' + g_sPartner;
			}
			
			
			webUrlToOpen = href; 
			if (o.lDest == "1")
				setTimeout("openInternalWeb()", iTimeToWait);
			else
				setTimeout("openInternalWebParent()", iTimeToWait);
		} 
		
		// new code for protected asx
		else if(o.lDest == "4"){
			// REVIEW: dont know what to do here so nothing.
		}
		else 
		{
			
			//href = 'http://'+ window.location.hostname + window.location.pathname+ '?wmis.page.redirclickurl=42&dest=' + escape(href);
			href = 'http://'+ window.location.hostname + g_sAppPath + '/ClickTracking/Redir.htm?dest=' + escape(href);
			if (iTimeToWait > 0) 
			{
			    windParams=o.wind;
				webUrlToOpen = href; setTimeout("openWebUrl()", iTimeToWait);
			} 
			else 
			{
				if (g_fInCorona) 
				{
					player.launchURL(href);
				}
				else
				{
					var win = window.open(href, 'wmcbig', (!o.wind ? '' : o.wind), true);
				}
			}
		}
	}
}




