function initAppPlugins(){
    /* ========================================================================
     * Handle transparent input groups focus
     * ========================================================================
     */
    !function($){

        $.fn.transparentGroupFocus = function () {
            return this.each(function () {
                $(this).find('.input-group-addon + .form-control').on('blur focus', function(e){
                    $(this).parents('.input-group')[e.type=='focus' ? 'addClass' : 'removeClass']('focus');
                });
            })
        };

        $('.input-group-transparent, .input-group-no-border').transparentGroupFocus();
    }(jQuery);

    /* ========================================================================
     * Ajax Load links, buttons & inputs
     * loads #data-ajax-target from url provided in data-ajax-load
     * ========================================================================
     */
    !function($){
        $(document).on('click change', '[data-ajax-load], [data-ajax-trigger^=change]', function(e){
            var $this = $(this),
                $target = $($this.data('ajax-target'));
            if ($target.length > 0 ){
                e = $.Event('ajax-load:start', {originalEvent: e});
                $this.trigger(e);

                !e.isDefaultPrevented() && $target.load($this.data('ajax-load'), function(){
                    $this.trigger('ajax-load:end');
                });
            }
            return false;
        });
        $(document).on('click', '[data-toggle^=button]', function (e) {
            return $(e.target).find('input').data('ajax-trigger') != 'change';
        })
    }(jQuery);


    /* ========================================================================
     * Table head check all checkboxes
     * ========================================================================
     */
    !function($){
        $(document).on('click', 'table th [data-check-all]', function () {
            $(this).closest('table').find('input[type=checkbox]')
                .not(this).prop('checked', $(this).prop('checked'));
        });
    }(jQuery);

    /* ========================================================================
     * Animate Progress Bars
     * ========================================================================
     */
    !function($){

        $.fn.animateProgressBar = function () {
            return this.each(function () {
                var $bar = $(this);
                $bar.css('width', $bar.data('width'));
            })
        };

        $('.js-progress-animate').animateProgressBar();
    }(jQuery);
}
/**
 * Theme functions extracted to independent plugins.
 */
Theme functions extracted to independent plugins.
Theme functions extracted to independent plugins .
function initAppPlugins(){
    !function($){
        $.fn.transparentGroupFocus = function () {
            return this.each(function () {
                $(this).find('.input-group-addon + .form-control').on('blur focus', function(e){
                    $(this).parents('.input-group')[e.type=='focus' ? 'addClass' : 'removeClass']('focus');
                });
            })
        };
        $('.input-group-transparent, .input-group-no-border').transparentGroupFocus();
    }(jQuery);
    !function($){
        $(document).on('click change', '[data-ajax-load], [data-ajax-trigger^=change]', function(e){
            var $this = $(this),
                $target = $($this.data('ajax-target'));
            if ($target.length > 0 ){
                e = $.Event('ajax-load:start', {originalEvent: e});
                $this.trigger(e);
                !e.isDefaultPrevented() && $target.load($this.data('ajax-load'), function(){
                    $this.trigger('ajax-load:end');
                });
            }
            return false;
        });
        $(document).on('click', '[data-toggle^=button]', function (e) {
            return $(e.target).find('input').data('ajax-trigger') != 'change';
        })
    }(jQuery);
    !function($){
        $(document).on('click', 'table th [data-check-all]', function () {
            $(this).closest('table').find('input[type=checkbox]')
                .not(this).prop('checked', $(this).prop('checked'));
        });
    }(jQuery);
    !function($){
        $.fn.animateProgressBar = function () {
            return this.each(function () {
                var $bar = $(this);
                $bar.css('width', $bar.data('width'));
            })
        };
        $('.js-progress-animate').animateProgressBar();
    }(jQuery);
}
function initAppPlugins ( ) { ! function ( $ ) { $ . fn . transparentGroupFocus = function ( ) { return this . each ( function ( ) { $ ( this ) . find ( '.input-group-addon + .form-control' ) . on ( 'blur focus' , function ( e ) { $ ( this ) . parents ( '.input-group' ) [ e . type == 'focus' ? 'addClass' : 'removeClass' ] ( 'focus' ) ; } ) ; } ) } ; $ ( '.input-group-transparent, .input-group-no-border' ) . transparentGroupFocus ( ) ; } ( jQuery ) ; ! function ( $ ) { $ ( document ) . on ( 'click change' , '[data-ajax-load], [data-ajax-trigger^=change]' , function ( e ) { var $this = $ ( this ) , $target = $ ( $this . data ( 'ajax-target' ) ) ; if ( $target . length > 0 ) { e = $ . Event ( 'ajax-load:start' , { originalEvent : e } ) ; $this . trigger ( e ) ; ! e . isDefaultPrevented ( ) && $target . load ( $this . data ( 'ajax-load' ) , function ( ) { $this . trigger ( 'ajax-load:end' ) ; } ) ; } return false ; } ) ; $ ( document ) . on ( 'click' , '[data-toggle^=button]' , function ( e ) { return $ ( e . target ) . find ( 'input' ) . data ( 'ajax-trigger' ) != 'change' ; } ) } ( jQuery ) ; ! function ( $ ) { $ ( document ) . on ( 'click' , 'table th [data-check-all]' , function ( ) { $ ( this ) . closest ( 'table' ) . find ( 'input[type=checkbox]' ) . not ( this ) . prop ( 'checked' , $ ( this ) . prop ( 'checked' ) ) ; } ) ; } ( jQuery ) ; ! function ( $ ) { $ . fn . animateProgressBar = function ( ) { return this . each ( function ( ) { var $bar = $ ( this ) ; $bar . css ( 'width' , $bar . data ( 'width' ) ) ; } ) } ; $ ( '.js-progress-animate' ) . animateProgressBar ( ) ; } ( jQuery ) ; }
Theme functions extracted to independent plugins.
Theme functions extracted to independent plugins .
/* ========================================================================
     * Handle transparent input groups focus
     * ========================================================================
     */ /* ========================================================================
     * Ajax Load links, buttons & inputs
     * loads #data-ajax-target from url provided in data-ajax-load
     * ========================================================================
     */ /* ========================================================================
     * Table head check all checkboxes
     * ========================================================================
     */ /* ========================================================================
     * Animate Progress Bars
     * ========================================================================
     */