From 9fa6ca160a9dda057c3980c6ee19f0ee426fd0a0 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 17 Jul 2019 15:46:51 +0200 Subject: Some plugins fixes and doc enhancements --- server/lib/plugins/plugin-manager.ts | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'server/lib') diff --git a/server/lib/plugins/plugin-manager.ts b/server/lib/plugins/plugin-manager.ts index 9e4ec5adf..570b56193 100644 --- a/server/lib/plugins/plugin-manager.ts +++ b/server/lib/plugins/plugin-manager.ts @@ -104,10 +104,12 @@ export class PluginManager { for (const hook of this.hooks[hookName]) { try { + const p = hook.handler(param) + if (wait) { - result = await hook.handler(param) - } else { - result = hook.handler() + result = await p + } else if (p.catch) { + p.catch(err => logger.warn('Hook %s of plugin %s thrown an error.', hookName, hook.pluginName, { err })) } } catch (err) { logger.error('Cannot run hook %s of plugin %s.', hookName, hook.pluginName, { err }) @@ -329,7 +331,7 @@ export class PluginManager { registerSetting, settingsManager, storageManager - }) + }).catch(err => logger.error('Cannot register plugin %s.', npmName, { err })) logger.info('Add plugin %s CSS to global file.', npmName) @@ -365,7 +367,7 @@ export class PluginManager { private async regeneratePluginGlobalCSS () { await this.resetCSSGlobalFile() - for (const key of Object.keys(this.registeredPlugins)) { + for (const key of Object.keys(this.getRegisteredPlugins())) { const plugin = this.registeredPlugins[key] await this.addCSSToGlobalFile(plugin.path, plugin.css) -- cgit v1.2.3