var currentPanel;
currentPanel = "#subsec-1";
var currentSel;
currentSel = "#SubSecItem-1";
var intervalID;
var nextPanel = 0;
var nextSel = 0;
var intervalID = 0;

window.onload = SetUp();

function SetUp() {
    AnimateSubsections();
}


//##########################################
//            control subsections
//##########################################
function ShowHideSubsection(item, navitem) {
    $(document).ready(function() {
        if (item == currentPanel)
            return;
        else {
            clearTimeout(intervalID);
            ToggleSubSection();
            ToggleSelection();
            currentPanel = item;
            currentSel = navitem;
            setTimeout('ToggleSubSection()', 600);
            setTimeout('ToggleSelection()', 600);
            setTimeout('intervalID = setInterval("AnimateSubs()", 10000)',20000);
        }
    });
}

function AnimateSubs() {
    $(document).ready(function() {
        if ("#subsec" + nextPanel == currentPanel)
            return;
        else {
            ToggleSubSection();
            ToggleSelection();
            currentPanel = "#subsec" + nextPanel;
            currentSel = "#SubSecItem" + nextSel;
            setTimeout('ToggleSubSection()', 600);
            setTimeout('ToggleSelection()', 600);
            nextPanel = nextPanel + 1
            nextSel = nextSel + 1

            var SelLen = SelectionLength();
            if (nextPanel > SelLen - 2) {
                nextPanel = -1;
                nextSel = -1;
            }
        }
    });
}

function ToggleSubSection() {
    $(currentPanel).toggleFade({ speedIn: "slow" });
}

function ToggleSelection() {
    $(currentSel).toggleClass('Active');
}

function SelectionLength() {
    var ul = document.getElementById("SubSecNav");
    return loopLen = ul.childNodes.length;
    }


function AnimateSubsections() {
    intervalID = setInterval("AnimateSubs()", 10000)
}

function DeanimateSubsections() {
    clearInterval(intervalID);
}

//##########################################
//            Keypresses
//##########################################
// function to only allow numeric key presses in a textbox
// this doesn't stop pasting of non numeric values
function numeric_only(e) {
    // deal with unicode character sets
    var unicode = e.charCode ? e.charCode : e.keyCode;

    // if the key is backspace, tab, or numeric
    if (unicode == 8 || unicode == 9 || (unicode >= 48 && unicode <= 57)) {
        // we allow the key press
        return true;
    }
    else {
        // otherwise we don't
        return false;
    }
}
