Sha256: 22846090bb20ab064ee0e75b843e05ab3771861a43995a9808144446a7361d77

Contents?: true

Size: 1.08 KB

Versions: 4

Compression:

Stored size: 1.08 KB

Contents

pageflow.FileStageItemView = Backbone.Marionette.ItemView.extend({
  tagName: 'li',
  className: 'file_stage_item',
  template: 'templates/file_stage_item',

  ui: {
    description: '.description',
    percent: '.percent',
    errorMessage: '.error_message'
  },

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

  onRender: function() {
    this.update();
    this.$el.addClass(this.model.get('name'));
  },

  update: function() {
    this.ui.description.text(this.model.localizedDescription());

    if (typeof this.model.get('progress') === 'number' &&
        this.model.get('active')) {
      this.ui.percent.text(this.model.get('progress') + '%');
    }
    else {
      this.ui.percent.text('');
    }

    this.ui.errorMessage
      .toggle(!!this.model.get('error_message'))
      .text(this.model.get('error_message'));

    this.$el.toggleClass('active', this.model.get('active'));
    this.$el.toggleClass('finished', this.model.get('finished'));
    this.$el.toggleClass('failed', this.model.get('failed'));
    this.$el.toggleClass('action_required', this.model.get('action_required'));
  }
});

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
pageflow-0.4.0 app/assets/javascripts/pageflow/editor/views/file_stage_item_view.js
pageflow-0.3.0 app/assets/javascripts/pageflow/editor/views/file_stage_item_view.js
pageflow-0.2.1 app/assets/javascripts/pageflow/editor/views/file_stage_item_view.js
pageflow-0.2.0 app/assets/javascripts/pageflow/editor/views/file_stage_item_view.js