Files
edx-platform/lms/static/js/views/message_banner.js
Syed Ali Abbas Zaidi f1fb38ed83 fix: multi lines and spaces issues (#31885)
* fix: multi lines and spaces issues

* fix: eslint operator-linebreak issue

* fix: eslint quotes issue

* fix: remaining quotes issues

* fix: eslint object curly newline issue

* fix: eslint object curly spacing issue

* fix: eslint brace-style issues

* fix: react jsx indent and props issues

* fix: eslint trailing spaces issues

* fix: eslint linbreak style issue

* fix: eslint space unary operator issue

* fix: eslint line around directives issue

* fix: void and typeof space unary ops issue
2023-05-03 12:22:46 +05:00

64 lines
1.9 KiB
JavaScript

(function(define) {
'use strict';
define([
'gettext',
'jquery',
'underscore',
'backbone',
'text!templates/fields/message_banner.underscore',
'edx-ui-toolkit/js/utils/html-utils'
], function(gettext, $, _, Backbone, messageBannerTemplate, HtmlUtils) {
var MessageBannerView = Backbone.View.extend({
events: {
'click .close-btn': 'closeBanner'
},
closeBanner: function(event) {
sessionStorage.setItem('isBannerClosed', true);
this.hideMessage();
},
initialize: function(options) {
if (_.isUndefined(options)) {
options = {};
}
this.options = _.defaults(options, {
urgency: 'high',
type: '',
hideCloseBtn: true,
isRecoveryEmailMsg: false,
isLearnerPortalEnabled: false
});
},
render: function() {
if (_.isUndefined(this.message) || _.isNull(this.message)) {
this.$el.html('');
} else {
this.$el.html(_.template(messageBannerTemplate)(_.extend(this.options, { // xss-lint: disable=javascript-jquery-html
message: this.message,
HtmlUtils: HtmlUtils
})));
}
return this;
},
showMessage: function(message) {
this.message = message;
if (sessionStorage.getItem('isBannerClosed') == null) {
this.render();
}
},
hideMessage: function() {
this.message = null;
this.render();
}
});
return MessageBannerView;
});
}).call(this, define || RequireJS.define);