text: /**
   * @author: Alec Fenichel
   * @webSite: https://fenichelar.com
   * @version: v1.0.0
   */
  
  (function ($) {
  
    'use strict';
  
    $.extend($.fn.bootstrapTable.defaults, {
      autoRefresh: false,
      autoRefreshInterval: 60,
      autoRefreshSilent: true,
      autoRefreshStatus: true,
      autoRefreshFunction: null
    });
  
    $.extend($.fn.bootstrapTable.defaults.icons, {
      autoRefresh: 'glyphicon-time icon-time'
    });
  
    $.extend($.fn.bootstrapTable.locales, {
      formatAutoRefresh: function() {
        return 'Auto Refresh';
      }
    });
  
    $.extend($.fn.bootstrapTable.defaults, $.fn.bootstrapTable.locales);
  
    var BootstrapTable = $.fn.bootstrapTable.Constructor;
    var _init = BootstrapTable.prototype.init;
    var _initToolbar = BootstrapTable.prototype.initToolbar;
    var sprintf = $.fn.bootstrapTable.utils.sprintf;
  
    BootstrapTable.prototype.init = function () {
      _init.apply(this, Array.prototype.slice.apply(arguments));
  
      if (this.options.autoRefresh && this.options.autoRefreshStatus) {
        var that = this;
        this.options.autoRefreshFunction = setInterval(function () {
          that.refresh({silent: that.options.autoRefreshSilent});
        }, this.options.autoRefreshInterval*1000);
      }
    };
  
    BootstrapTable.prototype.initToolbar = function() {
      _initToolbar.apply(this, Array.prototype.slice.apply(arguments));
  
      if (this.options.autoRefresh) {
        var $btnGroup = this.$toolbar.find('>.btn-group');
        var $btnAutoRefresh = $btnGroup.find('.auto-refresh');
  
        if (!$btnAutoRefresh.length) {
          $btnAutoRefresh = $([
            sprintf('<button class="btn btn-default auto-refresh %s" ', this.options.autoRefreshStatus ? 'enabled' : ''),
            'type="button" ',
            sprintf('title="%s">', this.options.formatAutoRefresh()),
            sprintf('<i class="%s %s"></i>', this.options.iconsPrefix, this.options.icons.autoRefresh),
            '</button>'
          ].join('')).appendTo($btnGroup);
  
          $btnAutoRefresh.on('click', $.proxy(this.toggleAutoRefresh, this));
        }
      }
    };
  
    BootstrapTable.prototype.toggleAutoRefresh = function() {
      if (this.options.autoRefresh) {
        if (this.options.autoRefreshStatus) {
          clearInterval(this.options.autoRefreshFunction);
          this.$toolbar.find('>.btn-group').find('.auto-refresh').removeClass('enabled');
        } else {
          var that = this;
          this.options.autoRefreshFunction = setInterval(function () {
            that.refresh({silent: that.options.autoRefreshSilent});
          }, this.options.autoRefreshInterval*1000);
          this.$toolbar.find('>.btn-group').find('.auto-refresh').addClass('enabled');
        }
        this.options.autoRefreshStatus = !this.options.autoRefreshStatus;
      }
    };
  
  })(jQuery);
  