From 5054ecca0831af277b62adb2387890d89e7d393d Mon Sep 17 00:00:00 2001 From: JC Brand Date: Fri, 24 May 2019 20:50:30 +0200 Subject: [PATCH] Check whether controlbox exists before assigning --- src/converse-muc-views.js | 50 +++++++++++++++++++-------------------- 1 file changed, 25 insertions(+), 25 deletions(-) diff --git a/src/converse-muc-views.js b/src/converse-muc-views.js index ca9a2dcd5..104333324 100644 --- a/src/converse-muc-views.js +++ b/src/converse-muc-views.js @@ -97,32 +97,32 @@ converse.plugins.add('converse-muc-views', { }); - Object.assign(_converse.ControlBoxView.prototype, { - - renderRoomsPanel () { - if (this.roomspanel && u.isVisible(this.roomspanel.el)) { - return; - } - this.roomspanel = new _converse.RoomsPanel({ - 'model': new (_converse.RoomsPanelModel.extend({ - 'id': `converse.roomspanel${_converse.bare_jid}`, // Required by web storage - 'browserStorage': new BrowserStorage[_converse.config.get('storage')]( - `converse.roomspanel${_converse.bare_jid}`) - }))() - }); - this.roomspanel.model.fetch(); - this.el.querySelector('.controlbox-pane').insertAdjacentElement( - 'beforeEnd', this.roomspanel.render().el); - - /** - * Triggered once the section of the _converse.ControlBoxView - * which shows gropuchats has been rendered. - * @event _converse#roomsPanelRendered - * @example _converse.api.listen.on('roomsPanelRendered', () => { ... }); - */ - _converse.api.trigger('roomsPanelRendered'); + function renderRoomsPanel () { + if (this.roomspanel && u.isVisible(this.roomspanel.el)) { + return; } - }); + this.roomspanel = new _converse.RoomsPanel({ + 'model': new (_converse.RoomsPanelModel.extend({ + 'id': `converse.roomspanel${_converse.bare_jid}`, // Required by web storage + 'browserStorage': new BrowserStorage[_converse.config.get('storage')]( + `converse.roomspanel${_converse.bare_jid}`) + }))() + }); + this.roomspanel.model.fetch(); + this.el.querySelector('.controlbox-pane').insertAdjacentElement( + 'beforeEnd', this.roomspanel.render().el); + + /** + * Triggered once the section of the _converse.ControlBoxView + * which shows gropuchats has been rendered. + * @event _converse#roomsPanelRendered + * @example _converse.api.listen.on('roomsPanelRendered', () => { ... }); + */ + _converse.api.trigger('roomsPanelRendered'); + } + if (_converse.ControlBoxView) { + Object.assign(_converse.ControlBoxView.prototype, { renderRoomsPanel }); + } function ___ (str) {