Files
edx-platform/cms/static/js/views/active_video_upload.js
2016-08-08 15:04:06 -04:00

38 lines
1.2 KiB
JavaScript

define(
['js/models/active_video_upload', 'js/views/baseview'],
function(ActiveVideoUpload, BaseView) {
'use strict';
var STATUS_CLASSES = [
{status: ActiveVideoUpload.STATUS_QUEUED, cls: 'queued'},
{status: ActiveVideoUpload.STATUS_COMPLETED, cls: 'success'},
{status: ActiveVideoUpload.STATUS_FAILED, cls: 'error'}
];
var ActiveVideoUploadView = BaseView.extend({
tagName: 'li',
className: 'active-video-upload',
initialize: function() {
this.template = this.loadTemplate('active-video-upload');
this.listenTo(this.model, 'change', this.render);
},
render: function() {
var $el = this.$el;
$el.html(this.template(this.model.attributes));
var status = this.model.get('status');
_.each(
STATUS_CLASSES,
function(statusClass) {
$el.toggleClass(statusClass.cls, status == statusClass.status);
}
);
return this;
}
});
return ActiveVideoUploadView;
}
);