mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-10-26 16:46:12 +01:00
fix: clear post cache on Update(Note)
This commit is contained in:
@@ -6,6 +6,7 @@ const db = require('../database');
|
|||||||
const topics = require('../topics');
|
const topics = require('../topics');
|
||||||
const posts = require('../posts');
|
const posts = require('../posts');
|
||||||
const utils = require('../utils');
|
const utils = require('../utils');
|
||||||
|
const pubsub = require('../pubsub');
|
||||||
|
|
||||||
const activitypub = module.parent.exports;
|
const activitypub = module.parent.exports;
|
||||||
const Notes = module.exports;
|
const Notes = module.exports;
|
||||||
@@ -22,14 +23,10 @@ Notes.assert = async (uid, input, options = {}) => {
|
|||||||
await Promise.all(input.map(async (item) => {
|
await Promise.all(input.map(async (item) => {
|
||||||
const id = activitypub.helpers.isUri(item) ? item : item.pid;
|
const id = activitypub.helpers.isUri(item) ? item : item.pid;
|
||||||
const key = `post:${id}`;
|
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}`);
|
winston.verbose(`[activitypub/notes.assert] Asserting note id ${id}`);
|
||||||
|
|
||||||
if (options.update === true) {
|
if (!exists || options.update === true) {
|
||||||
exists = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!exists) {
|
|
||||||
let postData;
|
let postData;
|
||||||
winston.verbose(`[activitypub/notes.assert] Not found, saving note to database`);
|
winston.verbose(`[activitypub/notes.assert] Not found, saving note to database`);
|
||||||
if (activitypub.helpers.isUri(item)) {
|
if (activitypub.helpers.isUri(item)) {
|
||||||
@@ -41,6 +38,11 @@ Notes.assert = async (uid, input, options = {}) => {
|
|||||||
|
|
||||||
await db.setObject(key, postData);
|
await db.setObject(key, postData);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (options.update === true) {
|
||||||
|
require('../posts/cache').del(String(id));
|
||||||
|
pubsub.publish('post:edit', String(id));
|
||||||
|
}
|
||||||
}));
|
}));
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -9,8 +9,6 @@ const user = require('../../user');
|
|||||||
|
|
||||||
const helpers = require('../helpers');
|
const helpers = require('../helpers');
|
||||||
|
|
||||||
const activitypubController = require('../activitypub');
|
|
||||||
|
|
||||||
const Users = module.exports;
|
const Users = module.exports;
|
||||||
|
|
||||||
Users.redirectBySlug = async (req, res) => {
|
Users.redirectBySlug = async (req, res) => {
|
||||||
|
|||||||
Reference in New Issue
Block a user