From f51bbe91e7151c63006f8278b615570894ab2a55 Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Wed, 24 Jan 2024 14:35:21 -0500 Subject: [PATCH] fix: clear post cache on Update(Note) --- src/activitypub/notes.js | 14 ++++++++------ src/controllers/write/users.js | 2 -- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/src/activitypub/notes.js b/src/activitypub/notes.js index 95ece9b085..75735cbde1 100644 --- a/src/activitypub/notes.js +++ b/src/activitypub/notes.js @@ -6,6 +6,7 @@ const db = require('../database'); const topics = require('../topics'); const posts = require('../posts'); const utils = require('../utils'); +const pubsub = require('../pubsub'); const activitypub = module.parent.exports; const Notes = module.exports; @@ -22,14 +23,10 @@ Notes.assert = async (uid, input, options = {}) => { await Promise.all(input.map(async (item) => { const id = activitypub.helpers.isUri(item) ? item : item.pid; const key = `post:${id}`; - let exists = await db.exists(key); + const exists = await db.exists(key); winston.verbose(`[activitypub/notes.assert] Asserting note id ${id}`); - if (options.update === true) { - exists = false; - } - - if (!exists) { + if (!exists || options.update === true) { let postData; winston.verbose(`[activitypub/notes.assert] Not found, saving note to database`); if (activitypub.helpers.isUri(item)) { @@ -41,6 +38,11 @@ Notes.assert = async (uid, input, options = {}) => { await db.setObject(key, postData); } + + if (options.update === true) { + require('../posts/cache').del(String(id)); + pubsub.publish('post:edit', String(id)); + } })); }; diff --git a/src/controllers/write/users.js b/src/controllers/write/users.js index e8411054f6..4c47c116a6 100644 --- a/src/controllers/write/users.js +++ b/src/controllers/write/users.js @@ -9,8 +9,6 @@ const user = require('../../user'); const helpers = require('../helpers'); -const activitypubController = require('../activitypub'); - const Users = module.exports; Users.redirectBySlug = async (req, res) => {