mirror of
https://github.com/NodeBB/NodeBB.git
synced 2025-11-02 20:16:04 +01:00
feat: send Update(Note) on chat message deletion and restoration, serving Tombstone if deleted
re: #12853
This commit is contained in:
@@ -107,8 +107,11 @@ inbox.update = async (req) => {
|
||||
}
|
||||
|
||||
case isMessage: {
|
||||
const roomId = await messaging.getMessageField(object.id, 'roomId');
|
||||
const [roomId, deleted] = await messaging.getMessageFields(object.id, ['roomId', 'deleted']);
|
||||
await messaging.editMessage(actor, object.id, roomId, object.content);
|
||||
if (deleted) {
|
||||
await api.chats.restoreMessage({ uid: actor }, { mid: object.id });
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -140,8 +143,9 @@ inbox.update = async (req) => {
|
||||
}
|
||||
|
||||
case 'Tombstone': {
|
||||
const [isNote/* , isActor */] = await Promise.all([
|
||||
const [isNote, isMessage/* , isActor */] = await Promise.all([
|
||||
posts.exists(object.id),
|
||||
messaging.messageExists(object.id),
|
||||
// db.isSortedSetMember('usersRemote:lastCrawled', object.id),
|
||||
]);
|
||||
|
||||
@@ -151,6 +155,11 @@ inbox.update = async (req) => {
|
||||
break;
|
||||
}
|
||||
|
||||
case isMessage: {
|
||||
await api.chats.deleteMessage({ uid: actor }, { mid: object.id });
|
||||
break;
|
||||
}
|
||||
|
||||
// case isActor: {
|
||||
// console.log('actor');
|
||||
// break;
|
||||
|
||||
Reference in New Issue
Block a user