diff --git a/src/topics/fork.js b/src/topics/fork.js index 6ba03a33a3..5005dd1696 100644 --- a/src/topics/fork.js +++ b/src/topics/fork.js @@ -41,12 +41,18 @@ module.exports = function (Topics) { } const scheduled = postData.timestamp > Date.now(); - const tid = await Topics.create({ + const params = { uid: postData.uid, title: title, cid: cid, timestamp: scheduled && postData.timestamp, + }; + const result = await plugins.hooks.fire('filter:topic.fork', { + params: params, + tid: postData.tid, }); + + const tid = await Topics.create(result.params); await Topics.updateTopicBookmarks(fromTid, pids); await async.eachSeries(pids, async (pid) => { diff --git a/src/topics/merge.js b/src/topics/merge.js index 4d39280fb7..2d1112e58b 100644 --- a/src/topics/merge.js +++ b/src/topics/merge.js @@ -51,11 +51,16 @@ module.exports = function (Topics) { async function createNewTopic(title, oldestTid) { const topicData = await Topics.getTopicFields(oldestTid, ['uid', 'cid']); - const tid = await Topics.create({ + const params = { uid: topicData.uid, cid: topicData.cid, title: title, + }; + const result = await plugins.hooks.fire('filter:topic.mergeCreateNewTopic', { + oldestTid: oldestTid, + params: params, }); + const tid = await Topics.create(result.params); return tid; }