var linkAdMouseOver = false;
var linkAdClickTracked = false;
var linkClickTrackedv1 = false;
var linkClickTrackedv2 = false;
var linkRedirectSecs = 0;
var linkRecordSecs = 0;
var linkFocused = null;
var linkCode = "";
var linkRecKey = "";
var linkCtrKey = "";
var linkDestUrl = "";
var linkRefererUrl = "";
var landingpage = false;
var linkComplete = "";

// Attach blur functions to the document
if (navigator.userAgent.toLowerCase().indexOf("msie") > -1) {
    document.onfocusout = function() {
        if (this._activeElement != document.activeElement)
            this._activeElement = document.activeElement;
        else
            onBlur();
    };
}
else {
    document.onblur = function() { onBlur() };
    window.onblur = function() { onBlur() };
}

// attach unload events to the document
window.onbeforeunload = function() { onUnload() };
window.onunload = function() { onUnload() };

// Focus the page on mouse over
document.onmouseover = function() { self.focus(); };

function initLink() {

    // Set the record click function timeout version 1
    setTimeout(function() { recordClick() }, linkRecordSecs * 1000);

    // Test of the record click system version 2
    if (linkRefererUrl != "")
        recordClickv2(linkRecordSecs, true);
    else
        recordClickv2(linkRecordSecs, false);

    // Set the countdown function
    if (linkRedirectSecs > 0)
        redirectTimer(linkRedirectSecs);
}

function redirectTimer(seconds) {

    if (isFocused() != null && isFocused() == false) {
        setTimeout(function() { redirectTimer(seconds) }, 1000);
        return;
    }

    var objSeconds = document.getElementById("loaderSeconds");
    seconds = seconds - 1;
    objSeconds.innerHTML = seconds;

    if (seconds > 0)
        setTimeout(function() { redirectTimer(seconds) }, 1000);
    else
        redirectLink(linkDestUrl);
}

function recordClick() {

    linkClickTrackedv1 = true;

    var imageURL = "/img/lp.php?ui=" + linkCode + "&c=" + linkRecKey + "&r=" + linkRefererUrl + "&" + linkComplete;
    var trackingImage = new Image();
    trackingImage.src = imageURL;
}

function recordClickv2(seconds, bypass) {

    if (bypass != true && isFocused() != null && isFocused() == false) {
        setTimeout(function() { recordClickv2(seconds, bypass) }, 1000);
        return;
    }

    seconds = seconds - 1;

    if (seconds > 0)
        setTimeout(function() { recordClickv2(seconds, bypass) }, 1000);
    else {

        linkClickTrackedv2 = true;
    
        var imageURL = "/img/lp.php?ui=" + linkCode + "&c=" + linkRecKey + "&r=" + linkRefererUrl + "&" + linkComplete;
        var trackingImage = new Image();
        trackingImage.src = imageURL;
    }
}

function recordAdClick() {

}

function linkSkip() {
    linkAdClickTracked = true;

    if (!linkClickTrackedv1)
        recordClick();

    if (!linkClickTrackedv2)
        recordClickv2(0, true);
}
function isFocused() {
    if (typeof document.hasFocus != "undefined") {
        linkFocused = document.hasFocus();
    }
    return linkFocused;
}
function onBlur() {
    if (linkAdMouseOver && !linkAdClickTracked)
        recordAdClick();
}
function onUnload() {
    if (linkAdMouseOver && !linkAdClickTracked)
        recordAdClick();
}
function trackMouseover() {
    linkAdMouseOver = true;
}
function trackMouseout() {
    linkAdMouseOver = false;
}
function redirectLink(destUrl) {
    if (landingpage) {
       document.location.href = destUrl;
    }
}


