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
v1.18.x
Manuel Valle 5 years ago committed by GitHub
parent 4cae893f49
commit 056f85f864
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

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

Loading…
Cancel
Save