Files
edx-platform/lms/static/js/views/message_banner.js
2015-08-08 09:43:20 -04:00

41 lines
1.3 KiB
JavaScript

;(function (define, undefined) {
'use strict';
define([
'gettext', 'jquery', 'underscore', 'backbone', 'text!templates/fields/message_banner.underscore'
], function (gettext, $, _, Backbone, messageBannerTemplate) {
var MessageBannerView = Backbone.View.extend({
initialize: function (options) {
if (_.isUndefined(options)) {
options = {};
}
this.options = _.defaults(options, {urgency: 'high', type: ''});
},
render: function () {
if (_.isUndefined(this.message) || _.isNull(this.message)) {
this.$el.html('');
} else {
this.$el.html(_.template(messageBannerTemplate, _.extend(this.options, {
message: this.message
})));
}
return this;
},
showMessage: function (message) {
this.message = message;
this.render();
},
hideMessage: function () {
this.message = null;
this.render();
}
});
return MessageBannerView;
});
}).call(this, define || RequireJS.define);