diff --git a/src/topics/events.js b/src/topics/events.js index 3227c76868..8dc2381fdf 100644 --- a/src/topics/events.js +++ b/src/topics/events.js @@ -60,7 +60,7 @@ Events._types = { }, fork: { icon: 'fa-code-fork', - text: '[[topic:forked-by]]' + text: '[[topic:forked-by]]', }, }; @@ -159,7 +159,7 @@ async function modifyEvent({ tid, uid, eventIds, timestamps, events }) { Events.log = async (tid, payload) => { const topics = require('.'); const { type } = payload; - const now = Date.now(); + const timestamp = payload.timestamp || Date.now(); if (!Events._types.hasOwnProperty(type)) { throw new Error(`[[error:topic-event-unrecognized, ${type}]]`); @@ -171,12 +171,12 @@ Events.log = async (tid, payload) => { await Promise.all([ db.setObject(`topicEvent:${eventId}`, payload), - db.sortedSetAdd(`topic:${tid}:events`, now, eventId), + db.sortedSetAdd(`topic:${tid}:events`, timestamp, eventId), ]); let events = await modifyEvent({ eventIds: [eventId], - timestamps: [now], + timestamps: [timestamp], events: [payload], }); diff --git a/src/topics/fork.js b/src/topics/fork.js index 8a4ece7bad..59eb95b783 100644 --- a/src/topics/fork.js +++ b/src/topics/fork.js @@ -70,7 +70,7 @@ module.exports = function (Topics) { downvotes: postData.downvotes, }), db.sortedSetsAdd(['topics:votes', `cid:${cid}:tids:votes`], postData.votes, tid), - Topics.events.log(fromTid, { type: 'fork', uid, href: `/topic/${tid}` }) + Topics.events.log(fromTid, { type: 'fork', uid, href: `/topic/${tid}`, timestamp: postData.timestamp }), ]); plugins.hooks.fire('action:topic.fork', { tid: tid, fromTid: fromTid, uid: uid });