$(document).ready(function () {
    /*
    $(".ddContainer").ready(function () {
    alert("loaded");
    });
    $(".ddContainer").hover(function (e) {

    //$("*").removeClass("hilite");
    //var kids = $(e.target).children();
    var kids = $(this).children().length;
    var childWidth = $(".subMenuColumn").width();
        
    var ddCont = eval(kids) * eval(childWidth) + (eval(childWidth) * eval(kids - 1));
    $(".ddContainer").width(ddCont);

    if($(".ddContainer").css("left") == "0")
    alert("aaa");
    }

    });*/

    //=========================================================================
    //On Hover Over
    function megaHoverOver() {
        $(this).find(".sub").stop().fadeTo('fast', 1).show(); //Find sub and fade it in
        (function ($) {
            //Function to calculate total width of all ul's
            jQuery.fn.calcSubWidth = function () {
                rowWidth = 0;
                //Calculate row
                $(this).find("ul").each(function () { //for each ul...
                    rowWidth += $(this).width(); //Add each ul's width together
                });
            };
        })(jQuery);


        if ($(this).find(".row").length > 0) { //If row exists...

            var biggestRow = 0;

            $(this).find(".row").each(function () {	//for each row...
                $(this).calcSubWidth(); //Call function to calculate width of all ul's
                //Find biggest row
                if (rowWidth > biggestRow) {
                    biggestRow = rowWidth;
                }
            });

            $(this).find(".sub").css({ 'width': biggestRow }); //Set width
            $(this).find(".row:last").css({ 'margin': '0' });  //Kill last row's margin

        } else { //If row does not exist...

            $(this).calcSubWidth();  //Call function to calculate width of all ul's
            $(this).find(".sub").css({ 'width': rowWidth }); //Set Width

            //if menu slides of the screen, slide it to left
            var offset = $(this).offset();
            var winWidth = $(window).width();
            var divWidth = rowWidth;
            //alert(divWidth);
            if (divWidth <= 0) { $(this).find(".sub").css({ 'display': 'none' }); }
            if ((offset.left + divWidth) > winWidth) {
                var correctPosition = winWidth - divWidth - offset.left;
                $(this).find(".sub").css({ 'left': correctPosition - 20 });


            }

        }
    }
    //On Hover Out
    function megaHoverOut() {
        //alert("hiding");
        $(this).find(".sub").stop().fadeTo('fast', 0, function () { //Fade to 0 opactiy
            $(this).hide();  //after fading, hide it
        });
    }

    //====================================================
    //Set custom configurations

    //document.getElementsBy
    //Set custom configurations
    var config = {
        sensitivity: 2, // number = sensitivity threshold (must be 1 or higher)
        interval: 100, // number = milliseconds for onMouseOver polling interval
        over: megaHoverOver, // function = onMouseOver callback (REQUIRED)
        timeout: 200, // number = milliseconds delay before onMouseOut
        out: megaHoverOut // function = onMouseOut callback (REQUIRED)
    };

    $("ul#topnav li .sub").css({ 'opacity': '0' }); //Fade sub nav to 0 opacity on default
    $("ul#topnav li").hoverIntent(config); //Trigger Hover intent with custom configurations





});







/*===========================================================*/
/*================== SCROLLING NAVIGATION ===================*/
/*===========================================================*/

var scrollHidden = true;

var currentPosX = 0;
var step = 10;
var timerEnabled;
var interval = 60;
var itemWidth = 0;
var itemCount = 0;
var totalItemWidth = 0;

var imgNavLeft = '/imagesV6/scrollLeft.png';
var imgNavLeftGrayed = '/imagesV6/scrollLeft_grayed.png';
var imgNavRight = '/imagesV6/scrollRight.png';
var imgNavRightGrayed = '/imagesV6/scrollRight_grayed.png';

$(document).ready(function () {

    //MegaMenu scrolling
    $(".navigationHolder").css("position", "relative");
    $("#topnav").css("padding-left", "20px");
    $("#topnav").css("padding-right", "20px");

    $(".navigationHolder").append("<div class='scroll scrollLeft'></div>");
    $(".navigationHolder").append("<div class='scroll scrollRight'></div>");

    $("#topnav").css("left", "0px");

    $("#navigationHolderLeft").css("display","none"); //hide if scrolling is not visible

    var tm;

    timerEnabled = false;

    currentPosX = parseInt($("#topnav").css("left"));

    $(".scrollRight").mouseover(function () {

        if (!scrollHidden) {

            timerEnabled = true;

            if (timerEnabled == true) {

                scrollRight();

            }
        }

    });

    var offsetItem = 0;
    var offsetButtonLeft = 0;



    $(".scrollLeft").mouseover(function () {

        if (!scrollHidden) {
            timerEnabled = true;

            if (timerEnabled == true) {
                scrollLeft();
            }

        } else {
            //break;
        }
    });

    $(".scrollLeft").mouseout(function () {

        timerEnabled = false;

    });

    $(".scrollRight").mouseout(function () {

        timerEnabled = false;

    });


    /* calculate width and number of all the mega menu parent items */
    $(".mainMenuItem").each(function () {
        itemWidth += $(this).width();
        itemCount += 1;
    });

    /* calculate difference in width of all the parent items of megamenu and navigation holder */
    /* js looses 3px when calculating width of items, that is why we need itemCount * 3 */
    var navHolderWidthDiff = parseInt($(".navigationHolder").css("width"));
    totalItemWidth = navHolderWidthDiff - itemWidth - itemCount * 3 - step;


    //sets width of UL where parent items are
    $("#topnav").css("width", itemWidth + 55 + "px");


    /*   SHOW BUTTONS ONLY IF ITEMS TOTAL WIDTH > MENUHOLDER WIDTH   */
    /*if (totalItemWidth > 0) {
        $(".scrollLeft").css("background-image", "url('')");
        $(".scrollRight").css("background-image", "url('')");
        $("#navigationHolderLeft").show();
        scrollHidden = true;
    }*/





    //  ============ navigationHolderRight HIDING OVERFLOW ============ //

    /* ADD RIGHT DIV TO NAVIGATION TO HIDE OVERFLOW */



    var btnRightOffset = $(".scrollRight").offset();
    var btnRightWidth = $(".scrollRight").width();
    var btnRightHeight = $(".scrollRight").height();
    var docWidth = $(document).width();

    if (!scrollHidden) {

        $("#navigationHolderRight").width(docWidth - (btnRightOffset.left + btnRightWidth));
        $("#navigationHolderRight").height(btnRightHeight + 0);
        $("#navigationHolderRight").css("background-color", "white");

    }
    /* ADD LEFT DIV TO NAVIGATION TO HIDE OVERFLOW */
    var btnLeftOffset = $(".scrollLeft").offset();
    var btnLeftHeight = $(".scrollLeft").height();

    if (!scrollHidden) {

        $("#navigationHolderLeft").css("left", "-" + btnLeftOffset.left + "px");
        $("#navigationHolderLeft").width(btnLeftOffset.left);
        $("#navigationHolderLeft").height(btnLeftHeight + 0);



        /* ADD IMAGE TO RIGHT DIV */
        var RightSide = $(".rightside").offset();
        var imgPos = RightSide.left - (btnRightOffset.left + btnRightWidth);
        $("#navigationRightImage").css("left", "" + imgPos + "px");

    }

});

function scrollLeft() {

    if (timerEnabled == true) {

        $(".scrollRight").css("background-image", "url('" + imgNavRight + "')");

        if (currentPosX < 0) {
            currentPosX += step;
            $("#topnav").css("margin-left", currentPosX + "px");
            $("#topnav").css("margin-right", -currentPosX + "px");

            $(".scrollLeft").css("background-image", "url('" + imgNavLeft + "')");

        } else {
            $(".scrollLeft").css("background-image", "url('" + imgNavLeftGrayed + "')");
        }

        tm = setTimeout("scrollLeft()", interval);
    }

}

function scrollRight() {

//    var navHolderWidth = parseInt($(".navigationHolder").css("width"));
//    totalItemWidth = navHolderWidth - itemWidth - itemCount * 3 - 10;

    if (timerEnabled == true) {

        $(".scrollLeft").css("background-image", "url('" + imgNavLeft  + "')");



        if (currentPosX <= 0 && currentPosX > totalItemWidth) {
            currentPosX -= step;
            $("#topnav").css("margin-left", currentPosX + "px");
            $("#topnav").css("margin-right", -currentPosX + "px");

            $(".scrollRight").css("background-image", "url('" + imgNavRight + "')");

        } else {
            $(".scrollRight").css("background-image", "url('" + imgNavRightGrayed + "')");
        }

        tm = setTimeout("scrollRight()", interval);
    }

}
