mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-27 17:16:14 +01:00
feat: add filter:plugins.firehook
This commit is contained in:
@@ -88,7 +88,7 @@ Hooks.unregister = function (id, hook, method) {
|
|||||||
Hooks.fire = async function (hook, params) {
|
Hooks.fire = async function (hook, params) {
|
||||||
const hookList = plugins.loadedHooks[hook];
|
const hookList = plugins.loadedHooks[hook];
|
||||||
const hookType = hook.split(':')[0];
|
const hookType = hook.split(':')[0];
|
||||||
if (global.env === 'development' && hook !== 'action:plugins.firehook') {
|
if (global.env === 'development' && hook !== 'action:plugins.firehook' && hook !== 'filter:plugins.firehook') {
|
||||||
winston.verbose(`[plugins/fireHook] ${hook}`);
|
winston.verbose(`[plugins/fireHook] ${hook}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -98,8 +98,9 @@ Hooks.fire = async function (hook, params) {
|
|||||||
}
|
}
|
||||||
const result = await hookTypeToMethod[hookType](hook, hookList, params);
|
const result = await hookTypeToMethod[hookType](hook, hookList, params);
|
||||||
|
|
||||||
if (hook !== 'action:plugins.firehook') {
|
if (hook !== 'action:plugins.firehook' && hook !== 'filter:plugins.firehook') {
|
||||||
Hooks.fire('action:plugins.firehook', { hook: hook, params: result || params });
|
const payload = await Hooks.fire('filter:plugins.firehook', { hook: hook, params: result || params });
|
||||||
|
Hooks.fire('action:plugins.firehook', payload);
|
||||||
}
|
}
|
||||||
if (result !== undefined) {
|
if (result !== undefined) {
|
||||||
return result;
|
return result;
|
||||||
|
|||||||
Reference in New Issue
Block a user