﻿
    $(document).ready(function() {


        function megaHoverOver() {
            $(this).find(".sub").stop().fadeTo('fast', 1).show();

            //Calculate width of all ul's
            (function($) {
                jQuery.fn.calcSubWidth = function() {
                    rowWidth = 0;
                    //Calculate row
                    $(this).find("ul").each(function() {
                        rowWidth += $(this).width();
                    });
                };
            })(jQuery);

            if ($(this).find(".row").length > 0) { //If row exists...
                var biggestRow = 0;
                //Calculate each row
                $(this).find(".row").each(function() {
                    $(this).calcSubWidth();
                    //Find biggest row
                    if (rowWidth > biggestRow) {
                        biggestRow = rowWidth;
                    }
                });
                //Set width
                $(this).find(".sub").css({ 'width': biggestRow });
                $(this).find(".row:last").css({ 'margin': '0' });

            } else { //If row does not exist...

                $(this).calcSubWidth();
                //Set Width
                $(this).find(".sub").css({ 'width': rowWidth });

            }
        }

        function megaHoverOut() {
            $(this).find(".sub").stop().fadeTo('fast', 0, function() {
                $(this).hide();
            });
        }


        var config = {
            sensitivity: 2, // number = sensitivity threshold (must be 1 or higher)    
            interval: 1, // number = milliseconds for onMouseOver polling interval    
            over: megaHoverOver, // function = onMouseOver callback (REQUIRED)    
            timeout: 150, // number = milliseconds delay before onMouseOut    
            out: megaHoverOut // function = onMouseOut callback (REQUIRED)    
        };

        $("ul#navLocations li .sub").css({ 'opacity': '0' });
        $("ul#navLocations li").hoverIntent(config);



    });


