﻿// now called in template 
//var j$ = jQuery.noConflict();

//initialize scrollbars
//var initializeAllScrollbars = function() {
//};

//refresh scrollbars
//var refreshAllScrollbars = function() {
//};


//adjust interface height
//var adjustInterfaceHeight = function() {
//};

//adjust interface width
//var adjustInterfaceWidth = function() {
//};



//handle side nav toggle
var toggleSideNav = function(setStatus) {

    j$('#iv03-side-nav').css('position', 'relative');

    if (setStatus == 'open') {
        j$('#iv03-side-nav').css('display', 'block');
        j$('#iv03-side-nav').css('border-right', 'none');


        j$('#iv03-side-nav-toggle').attr('status', 'open');
        j$('#iv03-side-nav-toggle').removeClass('iv03-quicklinks-close');
        j$('#iv03-side-nav-toggle').addClass('iv03-quicklinks-open');

        //add class to site-wrapper
        //.side-nav-open
        j$('#iv03-site-wrapper').removeClass('side-nav-closed');
        j$('#iv03-site-wrapper').addClass('side-nav-open');
    }

    if (setStatus == 'closed') {
        j$('#iv03-side-nav').css('display', 'none');
        j$('#iv03-side-nav').css('border-right', '1px solid #14387e');

        var centerHeight = j$('#iv03-content-wrapper').height();
        //alert(centerHeight);
        j$('#iv03-side-nav').css('height', centerHeight);


        j$('#iv03-side-nav-toggle').attr('status', 'closed');
        j$('#iv03-side-nav-toggle').removeClass('iv03-quicklinks-open');
        j$('#iv03-side-nav-toggle').addClass('iv03-quicklinks-close');

        //add class to site-wrapper
        //.side-nav-closed
        j$('#iv03-site-wrapper').removeClass('side-nav-open');
        j$('#iv03-site-wrapper').addClass('side-nav-closed');
    }

    j$('#iv03-side-nav-toggle').attr('status', setStatus);

    j$.cookie('sideNavStatus', setStatus, { expires: 365 });
};


//toggle the side nav open/closed
var initializeSideNavToggle = function() {

    j$('#iv03-side-nav-toggle').hover(
        //mouseenter
        function() {

            var sideNavCurrentStatus = j$('#iv03-side-nav-toggle').attr('status');
            if (sideNavCurrentStatus == 'closed') {
                j$('#iv03-side-nav').css('position', 'absolute');
                j$('#iv03-side-nav').css('z-index', '9999');
                j$('#iv03-side-nav').css('display', 'block');
            }

        },
        //mouseleave
        function() {

            var sideNavCurrentStatus = j$('#iv03-side-nav-toggle').attr('status');
            if (sideNavCurrentStatus == 'closed') {
                j$('#iv03-side-nav').css('position', 'relative');
                j$('#iv03-side-nav').css('z-index', '0');
                j$('#iv03-side-nav').css('display', 'none');
            }

        }
    );



    j$('#iv03-side-nav-toggle').click(function() {
        var sideNavCurrentStatus = j$('#iv03-side-nav-toggle').attr('status');

        if (sideNavCurrentStatus == 'open') {
            setSideNavStatus = 'closed';
        }

        if (sideNavCurrentStatus == 'closed') {
            setSideNavStatus = 'open';
        }

        toggleSideNav(setSideNavStatus);

        //disabled for testing
        var sideNavCookie  = j$.cookie('sideNavStatus',setSideNavStatus,{expire: 365});
        cookieSideNavStatusSet = true;

    });
    


    j$('#iv03-side-nav').hover(
        //mouseenter
        function() {

            var sideNavCurrentStatus = j$('#iv03-side-nav-toggle').attr('status');
            if (sideNavCurrentStatus == 'closed') {
                j$('#iv03-side-nav').css('position', 'absolute');
                j$('#iv03-side-nav').css('z-index', '9999');
                j$('#iv03-side-nav').css('display', 'block');
            }

        },
        //mouseleave
        function() {

           var sideNavCurrentStatus = j$('#iv03-side-nav-toggle').attr('status');
           if (sideNavCurrentStatus == 'closed') {
               j$('#iv03-side-nav').css('position', 'relative');
               j$('#iv03-side-nav').css('z-index', '0');
               j$('#iv03-side-nav').css('display', 'none');
           }
        }
    );

    
};



//side nav accordion

//var initializeSideNavAccordion = function() {

    
    /*
    
    //can set this to remove all but .not(the one to leave open)
    j$('#iv03-side-nav-inner ul.iv03-quicklinks-element').each(function() {
        //j$(this).height(0);
        j$(this).hide();
        j$(this).css("overflow", "hidden");
    });

    if (openAccordionPanel >= 0) {
        //corresponds to the rel of the UL
        //need to open that item (if openable)
        //need to get the previous A and put the style on there
        
        var openPanel = j$("#iv03-side-nav-inner ul[rel*='" + openAccordionPanel + "']");
        openPanel.prev('a').addClass('iv03-quicklinks-open');
        //openPanel.show(100, refreshAllScrollbars());
        
    }

    //j$(this).toggle(
    j$('#iv03-side-nav-inner a.iv03-quicklinks-toggle').click(
            function() {
                //turn them all back to normal
                j$('#iv03-side-nav-inner a.iv03-quicklinks-toggle').not(j$(this)).removeClass('iv03-quicklinks-open');
                if (j$(this).hasClass('iv03-quicklinks-open')) {
                    j$(this).removeClass('iv03-quicklinks-open');
                    //j$(this).next('ul').hide(300, refreshAllScrollbars());   
                }
                else {
                    j$(this).addClass('iv03-quicklinks-open');
                    j$('#iv03-side-nav-inner ul.iv03-quicklinks-element').hide(300, refreshAllScrollbars());
                    //j$(this).next('ul').show(300, refreshAllScrollbars());
                }
            }
        );


    j$('#iv03-side-nav-inner a.iv03-quicklinks-toggle').each(function() {


    });

    */


//};




var initializePopdownMenus = function () {

    //////////////////////
    // COMMUNITY POPDOWN
    /////////////////////

    var communityPopdownIsOpen = false;


    j$('#iv03-primary-nav-community').hover(
    //mouseenter
        function () {
            j$('#iv03-community-popdown-toggle').addClass('iv03-toggle-hover');
        },
    //mouseleave
        function () {
            j$('#iv03-community-popdown-toggle').removeClass('iv03-toggle-hover');
        }
    );


    j$('#iv03-community-popdown-toggle').hover(
    //mouseenter
        function () {
            j$('#iv03-community-popdown-toggle').addClass('iv03-toggle-hover');

            var primaryNavIsSelected = j$('#iv03-primary-nav-community').hasClass('iv03-community-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-community').addClass('iv03-community-hover');
            }

        },
    //mouseleave
        function () {
            if (!communityPopdownIsOpen) {
                j$('#iv03-community-popdown-toggle').removeClass('iv03-toggle-hover');

                var primaryNavIsSelected = j$('#iv03-primary-nav-community').hasClass('iv03-community-on');
                if (!primaryNavIsSelected) //and not currently hovering on primary nav!
                {
                    j$('#iv03-primary-nav-community').removeClass('iv03-community-hover');
                }
            }
        }
    );


    j$('#iv03-community-popdown-toggle').click(

        function () {

            switch (communityPopdownIsOpen) {
                case true:
                    j$('#iv03-community-popdown-wrapper').css('display', 'none'); //fade('out');//
                    communityPopdownIsOpen = false;
                    break;

                case false:
                    j$('#iv03-community-popdown-wrapper').css('display', 'block'); //.fade('in'); //
                    communityPopdownIsOpen = true;
                    break;
            }

            closeStorePopdown();
            closeSupportPopdown();
        }
    );



    var closeCommunityPopdown = function () {

        if (communityPopdownIsOpen) {

            j$('#iv03-community-popdown-wrapper').css('display', 'none'); //fade('out');//

            var primaryNavIsSelected = j$('#iv03-primary-nav-community').hasClass('iv03-community-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-community').removeClass('iv03-community-hover');
            }

            j$('#iv03-community-popdown-toggle').removeClass('iv03-toggle-hover');

            communityPopdownIsOpen = false;
        }
    };


    //////////////////////
    // STORE POPDOWN
    /////////////////////


    var storePopdownIsOpen = false;


    j$('#iv03-primary-nav-store').hover(
    //mouseenter
        function () {
            j$('#iv03-store-popdown-toggle').addClass('iv03-toggle-hover');
        },
    //mouseleave
        function () {
            j$('#iv03-store-popdown-toggle').removeClass('iv03-toggle-hover');
        }
    );


    j$('#iv03-store-popdown-toggle').hover(
    //mouseenter
        function () {
            j$('#iv03-store-popdown-toggle').addClass('iv03-toggle-hover');

            var primaryNavIsSelected = j$('#iv03-primary-nav-store').hasClass('iv03-community-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-store').addClass('iv03-store-hover');
            }

        },
    //mouseleave
        function () {
            if (!storePopdownIsOpen) {
                j$('#iv03-store-popdown-toggle').removeClass('iv03-toggle-hover');

                var primaryNavIsSelected = j$('#iv03-primary-nav-store').hasClass('iv03-store-on');
                if (!primaryNavIsSelected) //and not currently hovering on primary nav!
                {
                    j$('#iv03-primary-nav-store').removeClass('iv03-store-hover');
                }
            }
        }
    );


    j$('#iv03-store-popdown-toggle').click(

        function () {

            switch (storePopdownIsOpen) {
                case true:
                    j$('#iv03-store-popdown-wrapper').css('display', 'none'); //fade('out');//
                    storePopdownIsOpen = false;
                    break;

                case false:
                    j$('#iv03-store-popdown-wrapper').css('display', 'block'); //.fade('in'); //
                    storePopdownIsOpen = true;
                    break;
            }

            closeCommunityPopdown();
            closeSupportPopdown();
        }
    );



    var closeStorePopdown = function () {

        if (storePopdownIsOpen) {

            j$('#iv03-store-popdown-wrapper').css('display', 'none'); //fade('out');//

            var primaryNavIsSelected = j$('#iv03-primary-nav-store').hasClass('iv03-store-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-store').removeClass('iv03-store-hover');
            }

            j$('#iv03-store-popdown-toggle').removeClass('iv03-toggle-hover');

            storePopdownIsOpen = false;
        }
    };






    //////////////////////
    // SUPPORT POPDOWN
    /////////////////////


    var supportPopdownIsOpen = false;


    j$('#iv03-primary-nav-support').hover(
    //mouseenter
        function () {
            j$('#iv03-support-popdown-toggle').addClass('iv03-toggle-hover');
        },
    //mouseleave
        function () {
            j$('#iv03-support-popdown-toggle').removeClass('iv03-toggle-hover');
        }
    );


    j$('#iv03-support-popdown-toggle').hover(
    //mouseenter
        function () {
            j$('#iv03-support-popdown-toggle').addClass('iv03-toggle-hover');

            var primaryNavIsSelected = j$('#iv03-primary-nav-support').hasClass('iv03-support-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-support').addClass('iv03-support-hover');
            }

        },
    //mouseleave
        function () {
            if (!supportPopdownIsOpen) {
                j$('#iv03-support-popdown-toggle').removeClass('iv03-toggle-hover');

                var primaryNavIsSelected = j$('#iv03-primary-nav-support').hasClass('iv03-support-on');
                if (!primaryNavIsSelected) //and not currently hovering on primary nav!
                {
                    j$('#iv03-primary-nav-support').removeClass('iv03-support-hover');
                }
            }
        }
    );


    j$('#iv03-support-popdown-toggle').click(

        function () {

            switch (supportPopdownIsOpen) {
                case true:
                    j$('#iv03-support-popdown-wrapper').css('display', 'none'); //fade('out');//
                    supportPopdownIsOpen = false;
                    break;

                case false:
                    j$('#iv03-support-popdown-wrapper').css('display', 'block'); //.fade('in'); //
                    supportPopdownIsOpen = true;
                    break;
            }

            closeCommunityPopdown();
            closeStorePopdown();

        }
    );



    var closeSupportPopdown = function () {

        if (supportPopdownIsOpen) {

            j$('#iv03-support-popdown-wrapper').css('display', 'none'); //fade('out');//

            var primaryNavIsSelected = j$('#iv03-primary-nav-support').hasClass('iv03-support-on');
            if (!primaryNavIsSelected) {
                j$('#iv03-primary-nav-support').removeClass('iv03-support-hover');
            }

            j$('#iv03-support-popdown-toggle').removeClass('iv03-toggle-hover');

            supportPopdownIsOpen = false;
        }
    };






    j$(window).click(

        function (e) {

            //alert();

            if (storePopdownIsOpen) {
                if (!j$(e.target).parents().andSelf().is('#iv03-primary-nav-store-wrapper')) {
                    closeStorePopdown();
                }
            }

            if (communityPopdownIsOpen) {
                if (!j$(e.target).parents().andSelf().is('#iv03-primary-nav-community-wrapper')) {
                    closeCommunityPopdown();
                }
            }


            if (supportPopdownIsOpen) {
                //if (!j$('#iv03-primary-nav-community-wrapper').children(e.target)) {
                if (!j$(e.target).parents().andSelf().is('#iv03-primary-nav-support-wrapper')) {
                    closeSupportPopdown();
                }
            }

        });

}





j$(document).ready(function () {

    initializePopdownMenus();

    //lets see if the sidenav exists, if so, initialize it.
    if (j$("#iv03-side-nav").length > 0) {

        windowWidth = j$(window).width();

        var initialSideNavStatus = 'open';
        cookieSideNavStatusSet = false;
        var cookieSideNavStatus = j$.cookie('sideNavStatus');


        if (cookieSideNavStatus == 'open' || cookieSideNavStatus == 'closed') {
            initialSideNavStatus = cookieSideNavStatus;
            cookieSideNavStatusSet = true;
        }
        else {
            if (windowWidth < 1174) {
                initialSideNavStatus = 'closed';
            }
            else {
                initialSideNavStatus = 'open';
            }
        }

        //initializeSideNavAccordion();

        initializeSideNavToggle();

        toggleSideNav(initialSideNavStatus);

    }




});


j$(window).resize(function () {

    //lets see if the sidenav exists
    if (j$("#iv03-side-nav").length > 0) {

        windowWidth = j$(window).width();

        if (cookieSideNavStatusSet === false) {
            if (windowWidth < 1160) { //1114
                toggleSideNav('closed');
            }
            else {
                toggleSideNav('open');
            }
        }
    }

});
	



