﻿// global
var cIndex = 1;
var imgIndex = 0;
var lasthash;
var pb = 0;
var pbCtl;
var simpopupIndex = 0;
var xPos; 
var yPos;

// request stuff
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_beginRequest(BeginRequestHandler);

function BeginRequestHandler(sender, args) {
    lasthash = $get('txtHash').value;
    
    if (lasthash != undefined && lasthash.length > 0)
    {
        window.location.hash = lasthash.replace('/', '|').replace('/', '|').replace('/', '|').replace('/', '|').replace('/', '|').replace('/', '|');
    }
}

function pageLoad() {
    var mi = $get('menu').getElementsByTagName('td');
    for (var i = 0; i < mi.length; i++) {
        var a = mi[i].getElementsByTagName('a');
        for (var x = 0; x < a.length; x++) {
            $aeh(a[x], 'mouseover', Function.createDelegate(this, mi_a_over));
            $aeh(a[x], 'mouseout', Function.createDelegate(this, mi_a_out));
            if (a[x].id != 'aColleague') {
                $aeh(a[x], 'click', Function.createDelegate(this, mi_a_click));
            }
        }
    }

    try {
        var items = $get('sidemenu').getElementsByTagName('a');
        for (var i = 0; i < items.length; i++) {
            if (items[i].href.length > 0) {
                $aeh(items[i], 'click', Function.createDelegate(this, item_a_click));
            }
        }
    }
    catch (ex) {
    }
    
    if (window.location.hash.length == 0)
        window.location.hash = '|';
   
    var hash = window.location.hash.replace('#', '').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/');
    $get('txtHash').value = hash;
    
    if (pb == 0) {
        pb = 1;
        
        // set top menu selection
        setTopMenu(hash);
        
        if (hash.length <= 1)
        {
            $get('upMenu').className = 'invisible';
        }
        else
        {
            $get('upMenu').className = 'visible';
        }      
        
        __doPostBack('up');
        $get('btn').click();
    }
    
    setSideMenu();
    
    lasthash = hash;
    setInterval(pollHash, 50);
}

function page_divContent_div_h2_a_click(event) {
    event.preventDefault();

    var c = event.target.href.substring(event.target.href.indexOf('#')).replace('#', '');

    var ctl = $get('page_divContent_div').getElementsByTagName('div');

    for (var i = 0; i < ctl.length; i++) {
        if (ctl[i].parentNode.id != 'page_divContent_div') {
            if (ctl[i].id == c) {
                ctl[i].className = 'visible';
            }
            else {
                ctl[i].className = 'invisible';
            }
        }
    }

    var links = $get('page_divContent_div_h2').getElementsByTagName('a');
    for (var i = 0; i < links.length; i++) {
        if (links[i].href == event.target.href) {
            links[i].className = 'selected';
        }
        else {
            links[i].className = '';
        }
    }
}

// top menu events
function mi_a_click(event) {
    var mi = $get('menu').getElementsByTagName('td');
    for (var i = 0; i < mi.length; i++) {

        if (i > 0 && mi[i].className.indexOf('divider') > -1 && mi[i-1].className.indexOf('selected') == -1) { mi[i].className = 'divider'; }
    
        var a = mi[i].getElementsByTagName('a');
        for (var x = 0; x < a.length; x++) {
            if (a[x].href == event.target.href && a[x].innerHTML.indexOf('Colleague') == -1) {
                if (i > 1) { mi[i - 1].className = 'dividerselected'; }
                mi[i].className = 'menuselected';
                if (i < (mi.length - 1)) { mi[i + 1].className = 'dividerselected'; }
            }
            else {
                mi[i].className = '';
            }
        }
    }
    
    var hash = event.target.href;
    var split = hash.split('#');
    
    if (split.length > 0) {
        hash = split[1].replace('#', '').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/');
        
        $get('txtHash').value = hash;
        
        if (hash.length <= 1)
        {
            try { $get('page').className = 'invisible'; } catch (exc) {}
            $get('upMenu').className = 'invisible';
        }
        else
        {
            $get('upMenu').className = 'visible';
        }
        
        $get('btn').click();
    }
}
function mi_a_out(event) {
    try {
        var index = 0;
        var mi = event.target.parentElement.parentElement.getElementsByTagName('td');
        var length = mi.length;

        for (i = 0; i < length; i++) {
            var a = mi[i].getElementsByTagName('a');
            for (var x = 0; x < a.length; x++) {
                if (a[x].innerHTML == event.target.innerHTML) {
                    index = i;
                    break;
                }
            }
        }

        var prevItem = mi[index - 2];
        var prevSpacer = mi[index - 1];
        var currentItem = mi[index];
        var nextSpacer = mi[index + 1];
        var nextItem = mi[index + 2];

        if (index > 1 && prevItem.className != 'menuselected' && currentItem.className != 'menuselected') {
            prevSpacer.className = 'divider';
        }

        if (index < (length - 1) && nextItem.className != 'menuselected' && currentItem.className != 'menuselected') {
            nextSpacer.className = 'divider';
        }
    }
    catch (ex) {
    }
}
function mi_a_over(event) {
    try {
        var index = 0;
        var mi = event.target.parentElement.parentElement.getElementsByTagName('td');
        var length = mi.length;

        for (i = 0; i < length; i++) {
            var a = mi[i].getElementsByTagName('a');
            for (var x = 0; x < a.length; x++) {
                if (a[x].innerHTML == event.target.innerHTML) {
                    index = i;
                    break;
                }
            }
        }

        var prevSpacer = mi[index - 1];
        var currentItem = mi[index];
        var nextSpacer = mi[index + 1];

        if (index > 1 && currentItem.className != 'menuselected') {
            prevSpacer.className = 'dividerselected';
        }

        if (index < (length - 1) && currentItem.className != 'menuselected') {
            nextSpacer.className = 'dividerselected';
        }
    }
    catch (ex) {
    }
}

// side menu events
function item_a_click(event) {
    if (event.target.disabled || (event.target.onclick != null && event.target.onclick.indexOf('return false;') > -1)) {
        event.preventDefault();
    }
}

// global functions
function setSideMenu() {
    if ($get('sidemenu') != undefined) {

        var hash = window.location.hash;
        
        // remove all
        $('#sidemenu td').removeClass('selected');

        $('#sidemenu td').each(function() {
            var _href = $(this).children('a').attr('href');
            if (_href != undefined && _href.indexOf('#') > -1) {
                var _hash = _href.substr(_href.indexOf('#'));

                if (hash == _hash) {
                    $(this).addClass('selected');

                    $(this).parent().parent().parent().parent().addClass('selected');
                    $(this).parent().parent().parent().parent().parent().parent().parent().parent().addClass('selected');

                } else {
                    $(this).removeClass('selected');
                }
            }
        });
    }
}
function setTopMenu(hash) {
    var mi = $get('menu').getElementsByTagName('td');
    for (var i = 0; i < mi.length; i++) {
        if (mi[i].className == 'dividerselected') {
            mi[i].className = 'divider';
        }
        else if (mi[i].className != 'divider') {
            mi[i].className = '';
        }
    }
    
    if (hash.indexOf('/company/') > -1) {
        mi[1].className = 'dividerselected';
        mi[2].className = 'menuselected';
        mi[3].className = 'dividerselected';
    } 
    else if (hash.indexOf('/products/') > -1) {
        mi[3].className = 'dividerselected';
        mi[4].className = 'menuselected';
        mi[5].className = 'dividerselected';
    }
    else if (hash.indexOf('/subscriptions/') > -1) {
        mi[5].className = 'dividerselected';
        mi[6].className = 'menuselected';
        mi[7].className = 'dividerselected';
    }
    else if (hash.indexOf('/cart/') > -1) {
        mi[7].className = 'dividerselected';
        mi[8].className = 'menuselected';
        mi[9].className = 'dividerselected';
    } 
    else if (hash.indexOf('/account/') > -1) {
        mi[9].className = 'dividerselected';
        mi[10].className = 'menuselected';
    }
    else
    {
        mi[0].className = 'menuselected';
        mi[1].className = 'dividerselected';
    }
}
function ltrim(str, chars) {
    chars = chars || '\\s';
    return str.replace(new RegExp('^[' + chars + ']+', 'g'), '');
}

// ajax navigation
function pollHash() {
    var hash = window.location.hash.replace('#', '').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/').replace('|', '/');
    if (hash != $get('txtHash').value) {
        // set hash
        $get('txtHash').value = hash;

        pageIndex = 0;

        // if scrolling div, reset
        try {
            $get('eventscroll').scrollLeft = 0;
            $get('eventscroll').scrollTop = 0;
        } catch (ex) {
        }

        // subscribe buttons
        if (hash == '/subscriptions/silver') {
            $get('btnSubscribeNow').src = '/images/buttons/subscribeSilver.jpg';
        }
        else if (hash == '/subscriptions/gold') {
            $get('btnSubscribeNow').src = '/images/buttons/subscribeGold.jpg';
        }
        else if (hash == '/subscriptions/platinum') {
            $get('btnSubscribeNow').src = '/images/buttons/subscribePlatinum.jpg';
        }
        else if (hash == '/subscriptions/titanium') {
            $get('btnSubscribeNow').src = '/images/buttons/subscribeTitanium.jpg';
        }
        else {
            $get('btnSubscribeNow').src = '/images/buttons/subscribeNow.jpg';
        }

        setTopMenu(hash); 
        
        $get('upMenu').className = 'visible';
        
        $get('btn').click();
    }

    return;
}











