feat: Like(Note) and Undo(Like); federating likes

This commit is contained in:
Julian Lam
2024-02-01 15:59:29 -05:00
parent 94361721b1
commit 607c4623c7
9 changed files with 108 additions and 20 deletions

View File

@@ -129,6 +129,7 @@ exports.postCommand = async function (caller, command, eventName, notification,
};
async function executeCommand(caller, command, eventName, notification, data) {
const api = require('.');
const result = await posts[command](data.pid, caller.uid);
if (result && eventName) {
websockets.in(`uid_${caller.uid}`).emit(`posts.${command}`, result);
@@ -136,10 +137,12 @@ async function executeCommand(caller, command, eventName, notification, data) {
}
if (result && command === 'upvote') {
socketHelpers.upvote(result, notification);
api.activitypub.like.note(caller, { pid: data.pid });
} else if (result && notification) {
socketHelpers.sendNotificationToPostOwner(data.pid, caller.uid, command, notification);
} else if (result && command === 'unvote') {
socketHelpers.rescindUpvoteNotification(data.pid, caller.uid);
api.activitypub.undo.like(caller, { pid: data.pid });
}
return result;
}