summary refs log tree commit diff
path: root/api/src/routes/users/@me/relationships.ts
diff options
context:
space:
mode:
authorFlam3rboy <34555296+Flam3rboy@users.noreply.github.com>2021-09-18 19:20:28 +0200
committerGitHub <noreply@github.com>2021-09-18 19:20:28 +0200
commit5d0acf502b347f17e17ae8631bfa97cc33093392 (patch)
treea998946ffc8b2a75d711fc2243e506202d842b1d /api/src/routes/users/@me/relationships.ts
parentMerge pull request #374 from TheArcaneBrony/dummy-connections-endpoint (diff)
parentMerge branch 'fosscord:master' into fix-dm (diff)
downloadserver-ts-5d0acf502b347f17e17ae8631bfa97cc33093392.tar.xz
Merge pull request #369 from AlTech98/fix-dm
Diffstat (limited to 'api/src/routes/users/@me/relationships.ts')
-rw-r--r--api/src/routes/users/@me/relationships.ts19
1 files changed, 16 insertions, 3 deletions
diff --git a/api/src/routes/users/@me/relationships.ts b/api/src/routes/users/@me/relationships.ts

index 58d2e481..1d72f11a 100644 --- a/api/src/routes/users/@me/relationships.ts +++ b/api/src/routes/users/@me/relationships.ts
@@ -18,9 +18,19 @@ const router = Router(); const userProjection: (keyof User)[] = ["relationships", ...PublicUserProjection]; router.get("/", route({}), async (req: Request, res: Response) => { - const user = await User.findOneOrFail({ where: { id: req.user_id }, relations: ["relationships"] }); + const user = await User.findOneOrFail({ where: { id: req.user_id }, relations: ["relationships", "relationships.to"] }); - return res.json(user.relationships); + //TODO DTO + const related_users = user.relationships.map(r => { + return { + id: r.to.id, + type: r.type, + nickname: null, + user: r.to.toPublicUser(), + } + }) + + return res.json(related_users); }); export interface RelationshipPutSchema { @@ -48,7 +58,10 @@ router.post("/", route({ body: "RelationshipPostSchema" }), async (req: Request, await User.findOneOrFail({ relations: ["relationships", "relationships.to"], select: userProjection, - where: req.body as { discriminator: string; username: string } + where: { + discriminator: String(req.body.discriminator,).padStart(4, '0'), //Discord send the discriminator as integer, we need to add leading zeroes + username: req.body.username + } }), req.body.type );