Sha256: 9fc8bfaed9f516a21778f9442ce7d2172cd127194462a04945d55e34a537d924

Contents?: true

Size: 1.34 KB

Versions: 11

Compression:

Stored size: 1.34 KB

Contents

pageflow.PageItemView = Backbone.Marionette.ItemView.extend({
  tagName: 'li',
  template: 'templates/page_item',

  ui: {
    title: '.title',
    pictogram: '.type_pictogram',
    pageThumbnail: '.page_thumbnail'
  },

  modelEvents: {
    'change:title': 'update',
    'change:active': 'update'
  },

  onRender: function() {
    this.subview(new pageflow.PageThumbnailView({
      el: this.ui.pageThumbnail,
      model: this.model
    }));

    this.update();
  },

  update: function() {
    this.$el.attr('data-id', this.model.id);
    this.$el.attr('data-perma-id', this.model.get('perma_id'));

    this.$el.toggleClass('active', this.model.get('active'));
    this.$el.toggleClass('display_in_navigation', !!this.model.configuration.get('display_in_navigation'));
    this.$el
      .removeClass(_.pluck(pageflow.Page.types, 'name').join(' '))
      .addClass(this.model.get('template'));

    this.ui.pictogram.attr('title', this._getPictogramTitle());
    this.ui.title.text(this.model.title() || '(Unbenannt)');
  },

  _getPictogramTitle: function() {
    var result = I18n.t('activerecord.values.page.template.' + this.model.get('template'));
    result += ' Seite';

    if (this.options.displayInNavigationHint && !this.model.configuration.get('display_in_navigation')) {
      result += ' (nicht in Navigationsleiste)';
    }

    return result;
  }
});

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
pageflow-0.5.0 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.4.0 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.3.0 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.2.1 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.2.0 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.1.0 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.0.5 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.0.4 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.0.3 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.0.2 app/assets/javascripts/pageflow/editor/views/page_item_view.js
pageflow-0.0.1 app/assets/javascripts/pageflow/editor/views/page_item_view.js