diff --git a/src/topics/fork.js b/src/topics/fork.js index 3f5648221b..71afe73c64 100644 --- a/src/topics/fork.js +++ b/src/topics/fork.js @@ -39,7 +39,18 @@ module.exports = function (Topics) { if (!isAdminOrMod) { throw new Error('[[error:no-privileges]]'); } - const tid = await Topics.create({ uid: postData.uid, title: title, cid: cid }); + + const params = { + uid: postData.uid, + title: title, + cid: cid, + }; + 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 function (pid) { diff --git a/src/topics/merge.js b/src/topics/merge.js index 2688ef69fc..867c2a63e9 100644 --- a/src/topics/merge.js +++ b/src/topics/merge.js @@ -45,11 +45,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; }