var request        = null;
var validimg      = 'http://www.kronos.com/images/icon_tick.gif';
var failimg         = 'http://www.kronos.com/images/error_cross.gif';
var clearimg      = 'http://www.kronos.com/images/spacer.gif';
var busyimg      = 'http://www.kronos.com/images/busy.gif';



var alreadyrunflag = 0; // flag to indicate whether target function has already been run

if (document.addEventListener)
  document.addEventListener("DOMContentLoaded", function(){alreadyrunflag=1; updateContentDownloadHyperlinks()}, false)
else if (document.all && !window.opera)
{
  document.write('<script type="text/javascript" id="contentloadtag" defer="defer" src="javascript:void(0)"><\/script>')
  var contentloadtag = document.getElementById("contentloadtag")
  contentloadtag.onreadystatechange=function()
  {
    if (this.readyState=="complete")
    {
      alreadyrunflag = 1;
      updateContentDownloadHyperlinks();
    }
  }
}

window.onload=function()
{
    setTimeout("if (!alreadyrunflag) updateContentDownloadHyperlinks()", 0)
}


// We need to search through the document looking for <ahref> tags
// and dynamically set some javascript that will get fired when the link's clicked
function updateContentDownloadHyperlinks()
{
	var anchors                = null; 
	var onclick                 = null;
	var contentBlockID     = null;
	var anchor                 = null;
	var href                     = null;
	
	if (!document.getElementsByTagName) 
		return null;
	else
	    anchors = document.getElementsByTagName("a");
    
	for(var i=0; i < anchors.length; i++)
	{
		anchor                 = anchors[i];
		href                     = anchor.href.toLowerCase();
		
		// we're dealing with a link that was handcoded to hit the downloadasset.aspx page
		if(href.indexOf('downloadasset.aspx') != -1)
		{
		    //workarea/downloadasset.aspx?id=2345&dd=1
		    contentBlockID = getQueryStringParameterValue('id', href);
		    addOnclick(contentBlockID, anchor);
		}
		// we're dealing with a link that was created by ektron
		else if (href.indexOf('linkit.aspx') != -1)
		{
		    //WorkArea/linkit.aspx?LinkIdentifier=id&amp;ItemID=4566&amp;dd=1
		    contentBlockID = getQueryStringParameterValue('itemid', href);
		    addOnclick(contentBlockID, anchor);
		}
	
	}
}

function addOnclick(whatContenBlockID, whatAnchor)
{
    if(isInteger(whatContenBlockID))
    {
        var onclick = "javascript:downloadAsset('" + whatContenBlockID + "');";
        whatAnchor.setAttribute("href", onclick);
    }
}

function ResetScrollPosition() 
{
    var scrollX = document.getElementById('__SCROLLPOSITIONX');
    var scrollY = document.getElementById('__SCROLLPOSITIONY');
    if (scrollX && scrollY) 
    {
        scrollX.value = 0;
        scrollY.value = 0;
    }
}

function downloadAsset(whatContentBlockId)
{
	if(whatContentBlockId!=null)
	{
		var myDomain = 'http://' + window.location.hostname + '/';
	    var myGuid = guid();
	    // var hiddenFieldID =  '<%=GoogleAnalyticsAccount.ClientID%>';
        // var googleAnalyticsAccount = document.getElementById(hiddenFieldID).value; // The localized value of the google analytics account is stored in a hidden input field within the SiteFooter.ascx file.
        // alert("googleAnalyticsAccount = " + googleAnalyticsAccount);
        // var googleAnalyticsAccount = getLocaleSpecificGoogleAnalyticsAccount(); // this function resides in the SiteFooter.ascx file
        // alert("googleAnalyticsAccount = " + googleAnalyticsAccount);
        // var pageTracker = _gat._getTracker(googleAnalyticsAccount);
        // pageTracker._initData();
        // pageTracker._trackPageview(whatContentBlockId); // you'll need to do a ContentBlockID lookup in the CMS but its the best we can do for now  

		document.cookie = "landingPageGUID=" + myGuid + "; path=/";
		 
		//document.cookie = 'landingPageGUID=' + myGuid;
        //alert("contentBlockID = " + whatContentBlockId + "myGuid = " + myGuid);
		var redirect = myDomain + 'workarea/downloadasset.aspx?id=' + whatContentBlockId + "&lpg=" + myGuid
		
		//alert(redirect)
        window.location.href = redirect;
	}
}

function S4() 
{
   return (((1+Math.random())*0x10000)|0).toString(16).substring(1);
}

function guid() 
{
   return (S4()+S4()+"-"+S4()+"-"+S4()+"-"+S4()+"-"+S4()+S4()+S4());
}

function getQueryStringParameterValue (whatParameterName, whatUrl)
{  
    whatParameterName = whatParameterName.replace(/[\[]/,"\\\[").replace(/[\]]/,"\\\]");
    var regexS = "[\\?&]"+whatParameterName+"=([^&#]*)";  
    var regex = new RegExp( regexS );  
    var results = regex.exec(whatUrl);  
    if( results == null )    
        return "";  
    else    
        return results[1];
}

function isInteger(input) 
{
 var val = parseInt(input, 10);

  if(isNaN(val))
    return false;
  else
    return true;
}

