diff --git a/src/topics/data.js b/src/topics/data.js index 2e1931e823..6b73163b4c 100644 --- a/src/topics/data.js +++ b/src/topics/data.js @@ -6,6 +6,7 @@ var db = require('../database'); var categories = require('../categories'); var utils = require('../utils'); var translator = require('../translator'); +const plugins = require('../plugins'); const intFields = [ 'tid', 'cid', 'uid', 'mainPid', 'postcount', @@ -21,8 +22,14 @@ module.exports = function (Topics) { } const keys = tids.map(tid => 'topic:' + tid); const topics = await (fields.length ? db.getObjectsFields(keys, fields) : db.getObjects(keys)); - topics.forEach(topic => modifyTopic(topic, fields)); - return topics; + const result = await plugins.fireHook('filter:topic.getFields', { + tids: tids, + topics: topics, + fields: fields, + keys: keys, + }); + result.topics.forEach(topic => modifyTopic(topic, fields)); + return result.topics; }; Topics.getTopicField = async function (tid, field) {