var jQuery = jQuery || $;
(function ($) {

    // lazyload Image Handling
    $('body').on('unveil', 'div.js-slideIn', function () {

        var $this = $(this);
        var removeClass = ' js-slideIn';
        var addClass = ' js-slideIn--finished';
        if ($this.data('removeclass')) {
            removeClass += ' ' + $this.data('removeclass');
        }
        if ($this.data('addclass')) {
            addClass += ' ' + $this.data('addclass');
        }
        $this.addClass(addClass).removeClass(removeClass);
    });

    $('body').on('unveil', 'img.js-lazyloaded', function () {
        var retina = window.devicePixelRatio > 1;
        var attrib = retina ? 'data-src-retina' : 'data-src';
        var $this = $(this);
        var source = $this.attr(attrib);

        var removeClass = ' js-lazyloaded';
        var addClass = ' lazyloadedFinished';

        if ($this.data('removeclass')) {
            removeClass += ' ' + $this.data('removeclass');
        }
        if ($this.data('addclass')) {
            addClass += ' ' + $this.data('addclass');
        }

        //console.log('removeClass', removeClass);
        $this.addClass(addClass).removeClass(removeClass);
        source = source || $this.attr('data-src');
        $this.attr('src', source);
    });

    // lazyload Background Handling
    $('body').on('unveil', '.lazyload-bg.js-lazyloaded', function () {

        var retina = window.devicePixelRatio > 1;
        var attrib = retina ? 'data-src-bg-retina' : 'data-src-bg';
        var $this = $(this);
        var source = $this.attr(attrib);

        var removeClass = ' js-lazyloaded';
        var addClass = ' lazyloadedFinished';

        if ($this.data('removeclass')) {
            removeClass += ' ' + $this.data('removeclass');
        }
        if ($this.data('addclass')) {
            addClass += ' ' + $this.data('addclass');
        }

        //console.log('removeClass', removeClass);
        $this.addClass(addClass).removeClass(removeClass);

        if ($this.hasClass('js-responsive-background')) {
            $this.trigger('loadImage');
            bm.responsiveBackground.change(bm.breakpointEvents.getBreakpoint());
        } else {
            source = source || $this.attr('data-src-bg');
            $this.css('background-image', 'url(' + source + ')');
        }
    });


    $(document).ready(function () {
        $('#content').lazyload({itemSelector: '.js-lazyload'});
        //$('.page-content').lazyload('addItems', $('.img-signet'));
    });

    $('body').on('openLightbox', function () {
        $('.lightbox-content').lazyload({itemSelector: '.js-lazyload'});
        $('.lightbox-content').trigger('lookup.unveil');
    })

    $(document).on('shown.bs.collapse', function () {
        $(window).trigger('lookup.unveil');
    });
    $(document).on('shown.bs.tab', function () {
        $(window).trigger('lookup.unveil');
    });
    $(window).on('content.change', function () {
        $(window).trigger('reset.unveil');
        $(window).trigger('lookup.unveil');
    });
    $(document).ready(function () {
        $(window).trigger('lookup.unveil');
    });
    $(window).on('load', function () {
        $(window).trigger('lookup.unveil');
    });


})(jQuery);