Sha256: 790671b79884656d98c67fb008430aa00b024c901835e96c0f0c829fcce66e36

Contents?: true

Size: 1.21 KB

Versions: 3

Compression:

Stored size: 1.21 KB

Contents

pageflow.PageLinkItemView = Backbone.Marionette.ItemView.extend({
  template: 'pageflow/editor/templates/page_link_item',

  tagName: 'li',
  className: 'page_link',

  ui: {
    thumbnail: '.page_thumbnail',
    title: '.title',
    label: '.label',
    editButton: '.edit'
  },

  events: {
    'click .edit': function() {
      pageflow.editor.navigate(this.model.editPath(), {trigger: true});
      return false;
    },

    'mouseenter': function() {
      this.model.highlight(true);
    },

    'mouseleave': function() {
      this.model.resetHighlight(false);
    }
  },

  onRender: function() {
    var page = this.model.targetPage();

    if (page) {
      this.subview(new pageflow.PageThumbnailView({
        el: this.ui.thumbnail,
        model: page
      }));

      this.$el.addClass(page.get('template'));
      this.ui.title.text(page.title() || I18n.t('pageflow.editor.views.page_link_item_view.unnamed'));
    }
    else {
      this.ui.title.text(I18n.t('pageflow.editor.views.page_link_item_view.no_page'));
    }

    this.ui.label.text(this.model.label());
    this.ui.label.toggle(!!this.model.label());
    this.ui.editButton.toggle(!!this.model.editPath());

    this.$el.toggleClass('dangling', !page);
  },
});

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
pageflow-0.9.2 app/assets/javascripts/pageflow/editor/views/page_link_item_view.js
pageflow-0.9.1 app/assets/javascripts/pageflow/editor/views/page_link_item_view.js
pageflow-0.9.0 app/assets/javascripts/pageflow/editor/views/page_link_item_view.js