var agent = navigator.userAgent.toLowerCase();
var ver = parseInt(navigator.appVersion);
var ie = agent.indexOf("msie") >= 0;
var ie6 = ie && agent.indexOf("msie 6") >= 0;

// ******************** Global Variables ****************

var centerContentURL = null;
var leftMenuItemOnNumber = 1;

var newNav1 = 0;
var newNav2 = 0;

// these items are for the demo/webinar slider--removed from final new nav

//var sliderDemoState = new Array();
//sliderDemoState[0] = 1;
//sliderDemoState[1] = 1;
//sliderDemoState[2] = 1;
//var sliderDemoMax = new Array();
//sliderDemoMax[0] = null;
//sliderDemoMax[1] = null;
//sliderDemoMax[2] = null;

//var sliderWebinarState = new Array();
//sliderWebinarState[0] = 1;
//sliderWebinarState[1] = 1;
//sliderWebinarState[2] = 1;
//var sliderWebinarMax = new Array();
//sliderWebinarMax[0] = null;
//sliderWebinarMax[1] = null;
//sliderWebinarMax[2] = null;

function initializeNewNavigation() {
    // add hoverIntent bindings for header nav    

    $(".navElement").hoverIntent(function () { navElementSelected(this); }, function () { });

    $(".navElementSpecial").hoverIntent({
        sensitivity: 15, // number = sensitivity threshold (must be 1 or higher)    
        interval: 100, // number = milliseconds for onMouseOver polling interval    
        over: function () { $("#navElement_1").queue(function () { newNav1 = 1; navElementSpecialSelected(this); $("#navElement_1").dequeue(); }) }, // function = onMouseOver callback (REQUIRED)    
        timeout: 500, // number = milliseconds delay before onMouseOut    
        out: function () { $("#navElement_1").queue(function () { newNav1 = 0; timedHideNewNavigation(); $("#navElement_1").dequeue(); }) } // function = onMouseOut callback (REQUIRED)    
    });

    $("#bd1").hoverIntent({
        sensitivity: 15, // number = sensitivity threshold (must be 1 or higher)    
        interval: 0, // number = milliseconds for onMouseOver polling interval    
        over: function () { $("#navElement_1").queue(function () { newNav2 = 1; $("#navElement_1").dequeue(); }) }, // function = onMouseOver callback (REQUIRED)    
        timeout: 500, // number = milliseconds delay before onMouseOut    
        out: function () { $("#navElement_1").queue(function () { newNav2 = 0; timedHideNewNavigation(); $("#navElement_1").dequeue(); }) } // function = onMouseOut callback (REQUIRED)    
    });


    // this is a fix for the nav on ie6.  without this, the nav with dissappear when mousing over the selections, because there is a gap between the list elements in the nav (only ie6)
    if (ie6) {
        var config = {
            sensitivity: 15, // number = sensitivity threshold (must be 1 or higher)    
            interval: 100, // number = milliseconds for onMouseOver polling interval    
            over: function () { }, // function = onMouseOver callback (REQUIRED)    
            timeout: 100, // number = milliseconds delay before onMouseOut    
            out: function () { navElementUnselectAll(); } // function = onMouseOut callback (REQUIRED)    
        };
        $("#navBar").hoverIntent(config);
    }
    else {
        $("#navBar").hoverIntent(function () { }, function () { navElementUnselectAll(); });
    }

    $(".bdLeftMenuItem").mouseover(function () { leftElementSelected($(this)); });

    // $("#bd1").cornerz({ radius: 8, corners: "tl" });
    //    $("#bd1BackgroundDefault").cornerz({ radius: 4, background: "#a11c20" });

    //    $("#bd1BackgroundDefault").cornerz({ radius: 8, background: "white" });

    // $("#bdLeftNav").cornerz({ radius: 12, corners: "tl", background: "white", borderWidth: 1, borderColor: "#a11c20" });

    // $("#navElement_7").cornerz({ radius: 8, corners: "tr" });

    // add hover bindings for bdSelectors
    // $(".bdSelector").click(function () { bdSelected(this); });
    // $("#bdSelectorCaption_1").click(function () { bdSelected("#bdSelector_1"); });
    // $("#bdSelectorCaption_2").click(function () { bdSelected("#bdSelector_2"); });
    //    $("#bdSelectorCaption_3").click(function() { bdSelected("#bdSelector_3"); });

    //    $(".bdSelectorCaption").hover(function() { $(this).css("color", "#ADD8E6"); }, function() { $(this).css("color", ""); });
    //    $("#bdSelector_1").hover(function() { $("#bdSelectorCaption_1").css("color", "#ADD8E6"); }, function() { $("#bdSelectorCaption_1").css("color", ""); });
    //    $("#bdSelector_2").hover(function() { $("#bdSelectorCaption_2").css("color", "#ADD8E6"); }, function() { $("#bdSelectorCaption_2").css("color", ""); });
    //    $("#bdSelector_3").hover(function() { $("#bdSelectorCaption_3").css("color", "#ADD8E6"); }, function() { $("#bdSelectorCaption_3").css("color", ""); });

    // loadbdCenterContent4();

    //  $(".bdLeftMenuItem").click(function() { leftMenuItemSelected($(this)); });

};


// ******************** Search form code ****************
// function submitform() {
//    document.searchForm.submit();
// }

// ******************** Nav bar code ********************
function navElementSelected(thisElement) {
    var splitString = $(thisElement).attr("id").split("_");
    var menuNum = splitString[1];

    $("#navElement_1").queue(function () { forceHideNewNavigation(); $("#navElement_1").dequeue(); });
    navElementUnselectAll();
    navigatorDetected = navigator.userAgent.toLowerCase();

    if (checkIt('firefox', navigatorDetected)) {
        // find the position of the nav element (for FF)
        var pos = $(thisElement).offset();
    } else {
        // find the position of the nav element (for IE and others)
        var pos = $(thisElement).position();
    }

    // place the menu content in the right spot
    $("#navContent_" + menuNum).css("left", pos.left + 1).css("top", pos.top + 40).css("visibility", "visible");
    $(thisElement).css("background-color", "#EEEEEE").css("color", "black");
}

function navElementUnselectAll() {
    $(".navElement").css("background-color", "").css("color", "#444444");
    $(".navContent").css("visibility", "hidden");
}


// ******************** Nav bar code ********************
function navElementSpecialSelected(thisElement) {
    var thisID = $(thisElement).attr("id");
    var splitString = thisID.split("_");
    var menuNum = splitString[1];
    navElementUnselectAll();
    $("#" + thisID).addClass("navElementHot");
    // navElementSpecialUnselectAll();

    showNewNavigation();

    navigatorDetected = navigator.userAgent.toLowerCase();

    if (checkIt('firefox', navigatorDetected)) {
        // find the position of the nav element (for FF)
        var pos = $(thisElement).offset();
    } else {
        // find the position of the nav element (for IE and others)
        var pos = $(thisElement).position();
    }

}

function navElementSpecialUnselectAll() {
    $("#navElement_1").removeClass("navElementHot");
}

function getElementSuffixNum(thisElement) {
    var splitString = $(thisElement).attr("id").split("_");
    return splitString[1];
}
function getElementSubSuffixNum(thisElement) {
    var splitString = $(thisElement).attr("id").split("_");
    return splitString[2];
}

function checkIt(string, navigatorDetected) {
    var place = navigatorDetected.indexOf(string) + 1;
    return place;
}

function hideNewNavigation() {
    navElementSpecialUnselectAll();
    // revertCenterContent();
    $('#bd').show(); 
    $('#bd1').hide();
    $('#bdCenterContent').hide();
    $('#bdCenterContentExtended').hide();
    $('#bdRightContent').hide();
    $('#bdBottomContent1').hide();
    $('#bd2').css('margin-top', '379px');
}

function showNewNavigation() {
    $('#bd').hide();
    $('#bd1').show();
//    if (leftMenuItemOnNumber < 5) {
//        $('#bdCenterContent').show();
//        $('#bdRightContent').show();
//        $('#bdCenterContentExtended').hide();
//    }
//    else {
//        $('#bdCenterContent').hide();
//        $('#bdRightContent').hide();
//        $('#bdCenterContentExtended').show();
//    }
    $('#bd2').css('margin-top', '32px');
    bdSelected('#bdSelector_1');
}

function forceHideNewNavigation() {
    if ((newNav1 == 1) || (newNav2 == 1)) {
        // force them to
        hideNewNavigation();
    }
    else {
        // they're already closing...
    }
}


function timedHideNewNavigation() {
    if ((newNav1 == 1) || (newNav2 == 1)) {
        // something still wants the new nav shown
    }
    else {
        hideNewNavigation();
    }
}

//function showHideBottom2Menu(desired) {
//    for (idx = 1; idx <= 4; idx++) {
//        if ("2_" + idx == desired) {
//            $('#bdBottomContent_2_' + idx).toggle()
//        }
//        else {
//            $('#bdBottomContent_2_' + idx).hide()
//        }
//    }
//}

//function playCenterContent(srcURL) {
//    $('#bdRightContentFooter').show();
//    replaceDivContentsWithUrl("#bdCenterContent", srcURL);
//}


//function revertCenterContent() {
//    $("#bdRightContentFooter").hide();
//    replaceDivContentsWithUrl("#bdCenterContent", centerContentURL);
//}

function replaceDivContentsWithHTML(dest, source) {
    $source = $(source);
    $dest = $(dest);
    $dest.html($source.html()); 
}

function leftElementSelected(thisElement) {
    var thisID = $(thisElement).attr("id");
    $(".bdLeftMenuItem").removeClass("bdLeftMenuItemHot");
    $("#" + thisID).addClass("bdLeftMenuItemHot");

    var thisSelected = getElementSuffixNum(thisElement) + "_" + getElementSubSuffixNum(thisElement);
    var pos = $(thisElement).position();
    $("#leftMenuBit").animate({ marginTop: pos.top + 13 }, 150);

    // if (leftMenuItemOnNumber != thisSelected) {
        // centerContentURL = "/TestRoot4_html/bdCenterContent_" + thisSelected + ".html";
        // revertCenterContent();
        leftMenuItemOnNumber = thisSelected;
        // hack to accommodate wide center content with no right-nav
        if ((thisID == 'bdLeftMenuItem_1_5') || (thisID == 'bdLeftMenuItem_1_6')) {
            // hide standard middle/right area for expanded content area
            $('#bdCenterContent').hide();
            $('#bdRightContent').hide();
            // $('#bdRightContentFooter').hide();
            $('#bdCenterContentExtended').show();
            // replaceDivContentsWithUrl("#bdCenterContentExtended", "/TestRoot4_html/bdCenterContent_" + thisSelected + ".html");
            replaceDivContentsWithHTML("#bdCenterContentExtended", "#src_bdCenterContent_" + thisSelected);
        }
        else {
            // show layer - workaround for expanded content area
            $('#bdCenterContent').show();
            $('#bdRightContent').show();
            // $('#bdRightContentFooter').show();
            $('#bdCenterContentExtended').hide();
            // replaceDivContentsWithUrl("#bdCenterContent", "/TestRoot4_html/bdCenterContent_" + thisSelected + ".html");
            replaceDivContentsWithHTML("#bdCenterContent", "#src_bdCenterContent_" + thisSelected);
            // replaceDivContentsWithUrl("#bdRightContent", "/TestRoot4_html/bdRightContent_" + thisSelected + ".html");
            replaceDivContentsWithHTML("#bdRightContent", "#src_bdRightContent_" + thisSelected);
            // replaceDivContentsWithUrl("#bdBottomContentDemo", "/TestRoot4_html/bdDemoContent_" + thisSelected + ".html");
            // replaceDivContentsWithUrl("#bdBottomContentWebinars", "/TestRoot4_html/bdWebinarContent_" + thisSelected + ".html");
            // replaceDivContentsWithUrl("#bdBottomContentEval", "/TestRoot4_html/bdEvalContent_" + thisSelected + ".html");
        }
        $('#bdBottomContent1').show();
   // }

}


function showLeftNav(numSelected) {
    $("#bd1BackgroundDefault").hide();
    //$("#bdLeftNav").fadeIn(fadeInTime);
	$("#bdLeftNav").show();    
	$(".bdLeftMenu").hide();
    //$("#bdLeftMenu_" + numSelected).fadeIn();
	$("#bdLeftMenu_" + numSelected).show();
    // show the default rightInnerContent
    // $("#bdCenterContent").fadeIn();
    // set the default menu selected to the first one in this nav list
    leftElementSelected($("#bdLeftMenuItem_" + numSelected + "_1"));
}

function bdSelected(selectedElement) {
    var bdNum = getElementSuffixNum(selectedElement);

//    if (bdNum != currentBdSelected) {
        // animate down everything that is not the selectedElement
        // show left nav container
        showLeftNav(bdNum);
        currentBdSelected = bdNum;
//    }
}



/* *********************************************** */

function slideDemoVidThumbsLeft(divToSlide) {
    var sliderNum = divToSlide.split("_");
    sliderIndex = sliderNum[1] - 1;

    if (!$("#bdDemoVidSliderInner_" + divToSlide).is(':animated')) {
        if (sliderDemoState[sliderIndex] > 1) {
            var slideAmount = parseInt($(".bdDemoVidSliderOuter").css("width"));
            var newMarginLeft = parseInt($("#bdDemoVidSliderInner_" + divToSlide).css("margin-left")) + (slideAmount / 2);
            $("#bdDemoVidSliderInner_" + divToSlide).animate(
                { marginLeft: newMarginLeft },
                500
            );
            sliderDemoState[sliderIndex]--;

            if (sliderDemoState[sliderIndex] == 1) {
                $("#bdDemoInnerLeftArrow_" + divToSlide).hide();
            } else {
                $("#bdDemoInnerLeftArrow_" + divToSlide).show();
            }

            if (sliderDemoState[sliderIndex] == sliderDemoMax[sliderIndex] - sliderShowAtOnce + 1) {
                $("#bdDemoInnerRightArrow_" + divToSlide).hide();
            } else {
                $("#bdDemoInnerRightArrow_" + divToSlide).show();
            }
        }
    }
}

function slideDemoVidThumbsRight(divToSlide) {
    var sliderNum = divToSlide.split("_");
    sliderIndex = sliderNum[1] - 1;

    if (!$("#bdDemoVidSliderInner_" + divToSlide).is(':animated')) {
        if (sliderDemoState[sliderIndex] < sliderDemoMax[sliderIndex] - sliderShowAtOnce + 1) {
            var slideAmount = parseInt($(".bdDemoVidSliderOuter").css("width"));
            var newMarginLeft = parseInt($("#bdDemoVidSliderInner_" + divToSlide).css("margin-left")) - (slideAmount / 2);
            $("#bdDemoVidSliderInner_" + divToSlide).animate(
                { marginLeft: newMarginLeft },
                500
            );
            sliderDemoState[sliderIndex]++;

            if (sliderDemoState[sliderIndex] == 1) {
                $("#bdDemoInnerLeftArrow_" + divToSlide).hide();
            } else {
                $("#bdDemoInnerLeftArrow_" + divToSlide).show();
            }

            if (sliderDemoState[sliderIndex] == sliderDemoMax[sliderIndex] - sliderShowAtOnce + 1) {
                $("#bdDemoInnerRightArrow_" + divToSlide).hide();
            } else {
                $("#bdDemoInnerRightArrow_" + divToSlide).show();
            }
        }
    }
}


function slideWebinarVidThumbsLeft(divToSlide) {
    var sliderNum = divToSlide.split("_");
    sliderIndex = sliderNum[1] - 1;

    if (!$("#bdWebinarVidSliderInner_" + divToSlide).is(':animated')) {
        if (sliderWebinarState[sliderIndex] > 1) {
            var slideAmount = parseInt($(".bdWebinarVidSliderOuter").css("width"));
            var newMarginLeft = parseInt($("#bdWebinarVidSliderInner_" + divToSlide).css("margin-left")) + (slideAmount / 2);
            $("#bdWebinarVidSliderInner_" + divToSlide).animate(
                { marginLeft: newMarginLeft },
                500
            );
            sliderWebinarState[sliderIndex]--;

            if (sliderWebinarState[sliderIndex] == 1) {
                $("#bdWebinarInnerLeftArrow_" + divToSlide).hide();
            } else {
                $("#bdWebinarInnerLeftArrow_" + divToSlide).show();
            }

            if (sliderWebinarState[sliderIndex] == sliderWebinarMax[sliderIndex] - sliderShowAtOnce + 1) {
                $("#bdWebinarInnerRightArrow_" + divToSlide).hide();
            } else {
                $("#bdWebinarInnerRightArrow_" + divToSlide).show();
            }
        }
    }
}

function slideWebinarVidThumbsRight(divToSlide) {
    var sliderNum = divToSlide.split("_");
    sliderIndex = sliderNum[1] - 1;

    if (!$("#bdWebinarVidSliderInner_" + divToSlide).is(':animated')) {
        if (sliderWebinarState[sliderIndex] < sliderWebinarMax[sliderIndex] - sliderShowAtOnce + 1) {
            var slideAmount = parseInt($(".bdWebinarVidSliderOuter").css("width"));
            var newMarginLeft = parseInt($("#bdWebinarVidSliderInner_" + divToSlide).css("margin-left")) - (slideAmount / 2);
            $("#bdWebinarVidSliderInner_" + divToSlide).animate(
                { marginLeft: newMarginLeft },
                500
            );
            sliderWebinarState[sliderIndex]++;

            if (sliderWebinarState[sliderIndex] == 1) {
                $("#bdWebinarInnerLeftArrow_" + divToSlide).hide();
            } else {
                $("#bdWebinarInnerLeftArrow_" + divToSlide).show();
            }

            if (sliderWebinarState[sliderIndex] == sliderWebinarMax[sliderIndex] - sliderShowAtOnce + 1) {
                $("#bdWebinarInnerRightArrow_" + divToSlide).hide();
            } else {
                $("#bdWebinarInnerRightArrow_" + divToSlide).show();
            }
        }
    }
}


/* **************************************************** */
