mirror of
https://github.com/discourse/discourse.git
synced 2025-05-24 12:51:24 +08:00
Do not load javascripts for disabled plugins (#5103)
* Do not load javascript for disabled plugins * Appease rubocop
This commit is contained in:

committed by
Régis Hanol

parent
8463b676df
commit
a14ab48829
@ -1,7 +1,9 @@
|
||||
import { buildResolver } from 'discourse-common/resolver';
|
||||
import { default as computed, observes } from 'ember-addons/ember-computed-decorators';
|
||||
import PreloadStore from 'preload-store';
|
||||
|
||||
const _pluginCallbacks = [];
|
||||
const _pluginDefinitions = {};
|
||||
|
||||
const Discourse = Ember.Application.extend({
|
||||
rootElement: '#main',
|
||||
@ -101,6 +103,16 @@ const Discourse = Ember.Application.extend({
|
||||
|
||||
$('noscript').remove();
|
||||
|
||||
// Load plugin definions.
|
||||
const disabledPlugins = PreloadStore.get('site').disabled_plugins;
|
||||
Object.keys(_pluginDefinitions).forEach((key) => {
|
||||
if(!(disabledPlugins.includes(key))){ // Not disabled, so load it
|
||||
_pluginDefinitions[key].forEach((func) => {
|
||||
func();
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
Object.keys(requirejs._eak_seen).forEach(function(key) {
|
||||
if (/\/pre\-initializers\//.test(key)) {
|
||||
const module = requirejs(key, null, null, true);
|
||||
@ -154,6 +166,13 @@ const Discourse = Ember.Application.extend({
|
||||
_pluginCallbacks.push({ version, code });
|
||||
},
|
||||
|
||||
_registerPluginScriptDefinition(pluginName, definition) {
|
||||
if(!(pluginName in _pluginDefinitions)){
|
||||
_pluginDefinitions[pluginName] = [];
|
||||
}
|
||||
_pluginDefinitions[pluginName].push(definition);
|
||||
},
|
||||
|
||||
assetVersion: Ember.computed({
|
||||
get() {
|
||||
return this.get("currentAssetVersion");
|
||||
|
Reference in New Issue
Block a user