Sha256: 5e02b56f02441dacfa8009939c13520ff27bbc667e4ae3302a932c879fcfa432

Contents?: true

Size: 1.11 KB

Versions: 7

Compression:

Stored size: 1.11 KB

Contents

pageflow.internalLinks.PageLink = Backbone.Model.extend({
  i18nKey: 'pageflow/internal_links/page_link',

  mixins: [pageflow.transientReferences],

  targetPage: function() {
    return pageflow.pages.getByPermaId(this.get('target_page_id'));
  },

  label: function() {
    return this.get('label');
  },

  thumbnailFile: function() {
    var thumbnailFile = this.getReference('thumbnail_image_id',
                                           pageflow.imageFiles);

    if (thumbnailFile) {
      return thumbnailFile;
    }
    else if (this.targetPage()) {
      return this.targetPage().thumbnailFile();
    }
    else {
      return null
    }
  },

  editPath: function() {
    return '/internal_links_pages/' + this.getRoutableId() + '/page_links/' + this.id;
  },

  getRoutableId: function() {
    return this.collection.page.id;
  },

  toSerializedJSON: function() {
    return _.omit(this.attributes, 'highlighted');
  },

  highlight: function() {
    this.set('highlighted', true);
  },

  resetHighlight: function() {
    this.unset('highlighted');
  },

  remove: function() {
    this.collection.remove(this);
  }
});

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
pageflow-internal-links-1.6.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.5.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.4.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.3.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.2.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.1.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js
pageflow-internal-links-1.0.0 app/assets/javascripts/pageflow/internal_links/editor/models/page_link.js