Topic hooks extension (#8413)

* Update data.js with new hook

Implemented new 'filter:topic.getFields' hook as in posts

* Update data.js

* Update data.js
This commit is contained in:
Manuel Valle
2020-06-16 11:50:07 -06:00
committed by GitHub
parent 4cae893f49
commit 056f85f864

View File

@@ -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) {