﻿
var registeredSponsors = new Array();
var registeredSponsorsContent = new Array();
var registeredSponsorsSize = new Array();
var registeredSponsorOn;

function doSponsorTabHover(theElement) {
    hideAllRegisteredSponsorTabs();

    // Display the hover background on the tab
    for (var x = 0; x < registeredSponsors.length; x++)
        // Don't change the active tab
        if (registeredSponsors[x] == theElement && x != registeredSponsorOn) {
            // Select the right size
            switch (registeredSponsorsSize[x]) {
                case 1: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabSmallHover'"); break; }
                case 2: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabMediumHover'"); break; }
                case 3: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabLargeHover'"); break; }
            }
        }
}

function hideAllRegisteredSponsorTabs() {
    // Set the CSS to normal for all tabs except the active tab
    for (var x = 0; x < registeredSponsors.length; x++) {
        if (x != registeredSponsorOn) {
            switch (registeredSponsorsSize[x]) {
                case 1: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabSmallNormal'"); break; }
                case 2: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabMediumNormal'"); break; }
                case 3: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabLargeNormal'"); break; }
            }

            // Set all content to not be visible except active tab
            eval("document.getElementById('" + registeredSponsorsContent[x] + "').className='SponsorContentOff'");
        }
    }
}

function registerSponsorTab(theID, intSize, theContentID) {
    registeredSponsors[registeredSponsors.length] = theID;
    registeredSponsorsSize[registeredSponsorsSize.length] = intSize;
    registeredSponsorsContent[registeredSponsorsContent.length] = theContentID;

    // Set initial CSS class based on the tab size
    switch (intSize) {
        case 1: { eval("document.getElementById('" + theID + "').className='SponsorTabSmallNormal'"); break; }
        case 2: { eval("document.getElementById('" + theID + "').className='SponsorTabMediumNormal'"); break; }
        case 3: { eval("document.getElementById('" + theID + "').className='SponsorTabLargeNormal'"); break; }
    }

    // Set initial content to no display
    eval("document.getElementById('" + theContentID + "').className='SponsorContentOff'");
}

function setSponsorTab(theElement) {
    // Activate the tab passed in the param
    for (var x = 0; x < registeredSponsors.length; x++) {
        if (registeredSponsors[x] == theElement) {
            switch (registeredSponsorsSize[x]) {
                case 1: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabSmallOn'"); break; }
                case 2: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabMediumOn'"); break; }
                case 3: { eval("document.getElementById('" + registeredSponsors[x] + "').className='SponsorTabLargeOn'"); break; }
            }

            // Set the content of the tab to visible
            eval("document.getElementById('" + registeredSponsorsContent[x] + "').className='SponsorContentOn'");

            // Store the tab index that is visible into the variable
            registeredSponsorOn = x;
        }
    }
    
    // Reset all of the tabs
    hideAllRegisteredSponsorTabs();
}

// Sets the inital tab
// If no tab is specified in the query string, the tab that was registered first is selected
function setInitialSponsorTab() {
    var e = getQueryVariable("Tab");

    if (e == null) {
        setSponsorTab(registeredSponsors[0]);
    }
    else {
        var found = false;
        
        for (var x = 0; x < registeredSponsors.length; x++) {
            if (registeredSponsors[x] == e) {
                found = true;
                setSponsorTab(e);
            }
        }

        if (!found) {
            setSponsorTab(registeredSponsors[0]);
        }
    }
}

// Gets the query string
function getQueryVariable(variable) {
    var query = window.location.search.substring(1);
    var vars = query.split("&");
    variable = variable.toLowerCase();
    for (var i = 0; i < vars.length; i++) {
        var pair = vars[i].split("=");
        pair[0] = pair[0].toLowerCase();
        if (pair[0] == variable) {
            return pair[1];
        }
        else {
            return null;
        }
    }
}