Sha256: 69ac75b129f4f83fe6a54adae5da4cc5ae759231e2d7d5a1945ab9b9d2e76264

Contents?: true

Size: 1.24 KB

Versions: 46

Compression:

Stored size: 1.24 KB

Contents

pageflow.PagesCollection = Backbone.Collection.extend({
  model: pageflow.Page,

  url: '/pages',

  comparator: function(pageA, pageB) {
    if (pageA.storylinePosition() > pageB.storylinePosition()) {
      return 1;
    }
    else if (pageA.storylinePosition() < pageB.storylinePosition()) {
      return -1;
    }
    else if (pageA.chapterPosition() > pageB.chapterPosition()) {
      return 1;
    }
    else if (pageA.chapterPosition() < pageB.chapterPosition()) {
      return -1;
    }
    else if (pageA.get('position') > pageB.get('position')) {
      return 1;
    }
    else if (pageA.get('position') < pageB.get('position')) {
      return -1;
    }
    else {
      return 0;
    }
  },

  getByPermaId: function(permaId) {
    return this.findWhere({perma_id: parseInt(permaId, 10)});
  },

  persisted: function() {
    if (!this._persisted) {
      this._persisted = new pageflow.SubsetCollection({
        parent: this,
        sortOnParentSort: true,

        filter: function(page) {
          return !page.isNew();
        },
      });

      this.listenTo(this, 'change:id', function(model) {
        setTimeout(_.bind(function() {
          this._persisted.add(model);
        }, this), 0);
      });
    }

    return this._persisted;
  },
});

Version data entries

46 entries across 46 versions & 1 rubygems

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