(function($) {
    var defaults={
        sm : 540,
        md : 720,
        lg : 960,
        xl : 1140,
        xxl : 1200,
        navbar_expand: 'lg',
        animation: true,
        animateIn: 'fadeIn',
    };
    $.fn.bootnavbar = function(options) {

        settings = $.extend(defaults, options);

        // $(this).find('.dropdown').click(function(){
        //     if ($(this).hasClass('show'))
        //     {
        //         $(this).removeClass('show');
        //         $(this).find('.dropdown-menu').first().removeClass('show');
        //     } else {
        //         $(this).addClass('show');
        //         $(this).find('.dropdown-menu').first().addClass('show');
        //         if(settings.animation){
        //             $(this).find('.dropdown-menu').first().addClass('animated ' + settings.animateIn);
        //         }
        //     }
        // });
        $(this).find('.dropdown').hover(function() {
            if($(document).width() >= settings.xxl)
            {
                $(this).addClass('show');
                var subMenu = $(this).find('.dropdown-menu').first();
                $(subMenu).addClass('show');
                if ($(this).closest('.navbar-nav').find('li.fullWnav > ul ul').index($(this).find(' > ul')) != -1)
                {
                    $(subMenu).css('top', -1 * $(this).position().top);
                    $(subMenu).css('height', $(this).closest('.fullWnav > ul').height());
                }
                if(settings.animation){
                    $(subMenu).addClass('animated ' + settings.animateIn);
                }
            }
        }, function() {
            if($(document).width() >= settings.xxl)
            {
                $(this).removeClass('show');
                var subMenu = $(this).find('.dropdown-menu').first();
                $(subMenu).removeClass('show');
                if ($(this).closest('.navbar-nav').find('li.fullWnav > ul ul').index($(this).find(' > ul')) != -1)
                {
                    $(subMenu).css('top', 'unset');
                    $(subMenu).css('height', 'auto');
                }
            };
        });

        $('.dropdown-menu a.dropdown-toggle').on('click', function(e) {
          if (!$(this).next().hasClass('show')) {
            $(this).parents('.dropdown-menu').first().find('.show').removeClass("show");
          }
          var $subMenu = $(this).next(".dropdown-menu");
          $subMenu.toggleClass('show');

          $(this).parents('li.nav-item.dropdown.show').on('hidden.bs.dropdown', function(e) {
            $('.dropdown-submenu .show').removeClass("show");
          });

          return false;
        });
    };
})(jQuery);