From 66801ba91a51c9b7df6d85136d677350d2495b86 Mon Sep 17 00:00:00 2001 From: Vitaly Takmazov Date: Tue, 18 Apr 2023 13:36:37 +0300 Subject: ActivityPub compatibility with private posts --- src/main/java/com/juick/www/api/activity/Profile.java | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/main/java/com/juick/www/api/activity/Profile.java') diff --git a/src/main/java/com/juick/www/api/activity/Profile.java b/src/main/java/com/juick/www/api/activity/Profile.java index f37ef6ff..68ea66ae 100644 --- a/src/main/java/com/juick/www/api/activity/Profile.java +++ b/src/main/java/com/juick/www/api/activity/Profile.java @@ -21,6 +21,7 @@ import com.fasterxml.jackson.core.JsonProcessingException; import com.fasterxml.jackson.databind.ObjectMapper; import com.juick.model.Message; import com.juick.model.User; +import com.juick.util.HttpForbiddenException; import com.juick.util.formatters.PlainTextFormatter; import com.juick.model.CommandResult; import com.juick.ActivityPubManager; @@ -258,6 +259,9 @@ public class Profile { Context.ACTIVITYSTREAMS_PROFILE_MEDIA_TYPE, MediaType.APPLICATION_JSON_VALUE }) public Context showNote(@PathVariable int mid, @PathVariable int rid) { var message = activityPubManager.findMessage(mid, rid); + if (!messagesService.canViewThread(mid, 0)) { + throw new HttpForbiddenException(); + } if (message != null) { return Context.build(activityPubManager.makeNote(message)); } -- cgit v1.2.3