$(function() {

    //Main banner switch ----------------------------> Begin

    if ($('#banners_list li').length > 1) {
        
        var banners_list = $('#banners_list');
        var banner_buttons = $('#banner_buttons');
        
        var switchBannerTimeout;
        var hideNotActive = function(box,className) {
          $('li',box).filter(function(){
            return !$(this).hasClass(className)
          }).css('display','none');
        }
        hideNotActive(banners_list,'active_banner')
        function switch_banner(control_button) {
            hideNotActive(banners_list,'active_banner')
            var active_banner = $('.active_banner', banners_list);
            var active_button = $('.active_button', banner_buttons);
            if (control_button.index() !== active_banner.index()) {
                var next_banner_id = '#banner_' + (control_button.index() + 1);
                active_banner.removeClass('active_banner');
                var new_act_banner = $(next_banner_id, banners_list);
                new_act_banner.addClass('active_banner');
                active_banner.fadeOut(800);
                new_act_banner.fadeIn(800);
                active_button.removeClass('active_button');
                control_button.addClass('active_button');
                return true;
            } else {
                return false;
            }
        }
        function auto_switch_banner() {
            var current_button = $('.active_button', banner_buttons);
            switchBannerTimeout = setTimeout(function() {
                if ($('li', banner_buttons).length > current_button.index() + 1) {
                    switch_banner(current_button.next());
                } else {
                    switch_banner($('li', banner_buttons).eq(0));
                }
                auto_switch_banner();
            }, 8000);
        }
        $('li', banner_buttons).click(function() {
            clearTimeout(switchBannerTimeout);
            auto_switch_banner();
            clearTimeout(switchBannerTimeout) /* stops auto scrolling */
            switch_banner($(this));
        });
        auto_switch_banner();
    }
});
