Files
Syed Ali Abbas Zaidi 8480dbc228 chore: apply amnesty on existing not fixable issues (#32215)
* fix: eslint operator-linebreak issue

* fix: eslint quotes issue

* fix: react jsx indent and props issues

* fix: eslint trailing spaces issues

* fix: eslint line around directives issue

* fix: eslint semi rule

* fix: eslint newline per chain rule

* fix: eslint space infix ops rule

* fix: eslint space-in-parens issue

* fix: eslint space before function paren issue

* fix: eslint space before blocks issue

* fix: eslint arrow body style issue

* fix: eslint dot-location issue

* fix: eslint quotes issue

* fix: eslint quote props issue

* fix: eslint operator assignment issue

* fix: eslint new line after import issue

* fix: indent issues

* fix: operator assignment issue

* fix: all autofixable eslint issues

* fix: all react related fixable issues

* fix: autofixable eslint issues

* chore: remove all template literals

* fix: remaining autofixable issues

* chore: apply amnesty on all existing issues

* fix: failing xss-lint issues

* refactor: apply amnesty on remaining issues

* refactor: apply amnesty on new issues

* fix: remove file level suppressions

* refactor: apply amnesty on new issues
2023-08-07 19:13:19 +05:00

45 lines
1.3 KiB
JavaScript

// eslint-disable-next-line no-shadow-restricted-names
(function(define, undefined) {
'use strict';
define(['underscore', 'backbone', 'js/edxnotes/utils/logger'], function(_, Backbone, NotesLogger) {
var TabModel = Backbone.Model.extend({
defaults: {
identifier: '',
name: '',
icon: '',
is_active: false,
is_closable: false,
view: ''
},
initialize: function() {
this.logger = NotesLogger.getLogger('tab');
},
activate: function() {
this.collection.each(_.bind(function(model) {
// Inactivate all other models.
if (model !== this) {
model.inactivate();
}
}, this));
this.set('is_active', true);
this.logger.emit('edx.course.student_notes.notes_page_viewed', {
view: this.get('view')
});
},
inactivate: function() {
this.set('is_active', false);
},
isActive: function() {
return this.get('is_active');
}
});
return TabModel;
});
}).call(this, define || RequireJS.define);