﻿var _productTabs;
var _antispam;
var _hitmanpro;
var _exchange;
var _prevx;
var _activeTab;
var _tabs;
var _tabsTimer;
var _pendingTab;
var _fadeTimer;
var _fadeValue = 1;

var _leaveTabTimeout = 5000;
var _cycleTabTimeout = 5000;
var _overTabTimeout = 50;
var _overTabTimer;

function initProductTabs() {

    _productTabs = document.getElementById("ProductTabs");
    
    _antispam = document.getElementById("ProductAntispam");
    _exchange = document.getElementById("ProductExchange");
    _hitmanpro = document.getElementById("ProductHitmanPro");
    _hitmanproutm = document.getElementById("ProductHitmanProUTM");
    _prevx = document.getElementById("ProductPrevx");

    _tabs = new Array(_antispam, _hitmanpro, _exchange);

    showTab(initialTab());

    _productTabs.style.visibility = "visible";
}


function initialTab() {
    var tab;
    var s = unescape(location.search);
    if (s.charAt(0) == '?') {
        var a = s.slice(1).split("&");
        for (var i in a) {
            var t = a[i].split("=", 2);
            if (t[0] != 'tab') {
                // not the term we're looking for
            }
            else if (t[1] == "antispam") {
                return _antispam;
            }
            else if (t[1] == "prevx") {
                return _prevx;
            }
            else if (t[1] == "exchange") {
                return _exchange;
            }
            else if (t[1] == "hitmanproutm") {
                return _hitmanproutm;
            }
            else if (t[1] == "hitmanpro") {
                return _hitmanpro;
            }
        }
    }
    return _hitmanpro;
}


function randomTabTimer() {
    randomTab();
    _tabsTimer = setTimeout(randomTabTimer, _cycleTabTimeout);
}

function randomTab() {
    var tabIndex;
    while (1) {
        tabIndex = Math.floor(Math.random() * _tabs.length);
        if (_tabs[tabIndex] != _activeTab) {
            break;
        }
    }
    showTab(_tabs[tabIndex], 0);
}


function overProducts(event) {
    _pendingTab = null;


    clearTimeout(_overTabTimer);

    var x = 0;
    var y = 0;

    if (event.offsetX) {
        x = event.offsetX;
        y = event.offsetY;
    }
    else {
        var e = (event.srcElement) ? event.srcElement : event.target;
        var left = 0; var top = 0;
        while (e.offsetParent) {
            left += e.offsetLeft;
            top += e.offsetTop;
            e = e.offsetParent;
        };

        x = event.pageX - left;
        y = event.pageY - top;
    }

    if (y > 18) {
        return;
    }

    var tab;

    if ((x >= 616) && (x <= 630)) {    
        tab = _antispam;
    }
    else if ((x >= 642) && (x <= 656)) {
        tab = _exchange;
    }
    else if ((x >= 668) && (x <= 684)) {
        tab = _hitmanpro;
    }
    else if ((x >= 696) && (x <= 710)) {
        tab = _hitmanproutm;
    }

    _pendingTab = tab;

    if (tab) {
        _overTabTimer = setTimeout(showPendingTab, _overTabTimeout);
    }
}

function showPendingTab() {
    if (_pendingTab) showTab(_pendingTab, 1);
}

function showTab(tab, mouse) {

    if (_activeTab && tab) {
        if (_activeTab != tab) {
            _activeTab.style.display = "none";
        }
        else {
            return;
        }
    }
    if (tab) {
        if (mouse == 1) {
            clearTimeout(_tabsTimer);
        }
        if (tab.style.display == 'none') {
            _activeTab = tab;
            tab.style.display = "block";
        }
    }
}

function enterProducts(enter) {
    clearTimeout(_tabsTimer);
    if (enter == 0) {
        _tabsTimer = setTimeout(randomTabTimer, _leaveTabTimeout);
    }
}

