From 9f44e99fae565766cd6df6ce078122b39836094b Mon Sep 17 00:00:00 2001 From: Julian Lam Date: Fri, 10 May 2024 11:47:57 -0400 Subject: [PATCH] fix: special logic for purge privilege checks --- src/privileges/posts.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/privileges/posts.js b/src/privileges/posts.js index bc699e7801..6a930e27b3 100644 --- a/src/privileges/posts.js +++ b/src/privileges/posts.js @@ -224,6 +224,12 @@ privsPosts.canPurge = async function (pid, uid) { isAdmin: user.isAdministrator(uid), isModerator: user.isModerator(uid, cid), }); + + // Allow remote posts to purge themselves (as:Delete received) + if (activitypub.helpers.isUri(pid) && results.owner) { + results.purge = true; + } + return (results.purge && (results.owner || results.isModerator)) || results.isAdmin; };