Sha256: 1667f3f9249ae93915525c5e54dab8df6b544f977aa3e298f25bbffc2beeda46

Contents?: true

Size: 1.56 KB

Versions: 32

Compression:

Stored size: 1.56 KB

Contents

(function($) {
  var creatingMethods = [
    'reinit', 'reactivate', 'activate', 'activateAsLandingPage', 'preload', 'prepare', 'linkedPages'
  ];

  var ignoredMethods = [
    'cleanup', 'refreshScroller', 'resize', 'deactivate', 'unprepare',
    'isPageChangeAllowed'
  ];

  var prototype = {
    _create: function() {
      this.configuration = this.element.data('configuration') || this.options.configuration;
      this.index = this.options.index;
    },

    _destroy: function() {
      this.isDestroyed = true;
    },

    _ensureCreated: function() {
      this.created = true;
      this.element.nonLazyPage(this.options);
    },

    _delegateToInner: function(method, args) {
      return this.element.nonLazyPage.apply(this.element, [method].concat([].slice.call(args)));
    },

    getPermaId: function() {
      return parseInt(this.element.attr('id'), 10);
    },

    getConfiguration: function() {
      return this.configuration;
    },

    update: function(configuration) {
      if (this.created) {
        this._delegateToInner('update', arguments);
      }
      else {
        _.extend(this.configuration, configuration.attributes);
      }
    }
  };

  _(creatingMethods).each(function(method) {
    prototype[method] = function() {
      this._ensureCreated();
      return this._delegateToInner(method, arguments);
    };
  });

  _(ignoredMethods).each(function(method) {
    prototype[method] = function() {
      if (this.created) {
        return this._delegateToInner(method, arguments);
      }
    };
  });

  $.widget('pageflow.page', prototype);
}(jQuery));

Version data entries

32 entries across 32 versions & 1 rubygems

Version Path
pageflow-14.5.2 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.2 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.5.1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.5.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.rc2 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.rc1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.beta4 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.beta3 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.4.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.beta2 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-15.0.0.beta1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.3.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.2.1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.2.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.1.1 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.1.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.0.0 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js
pageflow-14.0.0.rc2 app/assets/javascripts/pageflow/slideshow/lazy_page_widget.js