From f079041827b97849b3b5907980672686091277b4 Mon Sep 17 00:00:00 2001 From: mei23 Date: Mon, 13 Aug 2018 03:49:17 +0900 Subject: ActivityPub visibility on send --- src/server/activitypub.ts | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) (limited to 'src/server') diff --git a/src/server/activitypub.ts b/src/server/activitypub.ts index 2d9a4746c6..7d6fe09269 100644 --- a/src/server/activitypub.ts +++ b/src/server/activitypub.ts @@ -89,6 +89,48 @@ router.get('/users/:user/outbox', async ctx => { ctx.body = pack(rendered); }); +// followers +router.get('/users/:user/followers', async ctx => { + const userId = new mongo.ObjectID(ctx.params.user); + + const user = await User.findOne({ + _id: userId, + host: null + }); + + if (user === null) { + ctx.status = 404; + return; + } + + // TODO: Implement fetch and render + + const rendered = renderOrderedCollection(`${config.url}/users/${userId}/followers`, 0, []); + + ctx.body = pack(rendered); +}); + +// following +router.get('/users/:user/following', async ctx => { + const userId = new mongo.ObjectID(ctx.params.user); + + const user = await User.findOne({ + _id: userId, + host: null + }); + + if (user === null) { + ctx.status = 404; + return; + } + + // TODO: Implement fetch and render + + const rendered = renderOrderedCollection(`${config.url}/users/${userId}/following`, 0, []); + + ctx.body = pack(rendered); +}); + // publickey router.get('/users/:user/publickey', async ctx => { const userId = new mongo.ObjectID(ctx.params.user); -- cgit v1.2.3-freya