summary refs log tree commit diff
diff options
context:
space:
mode:
authorErkin Alp Güney <erkinalp9035@gmail.com>2022-04-18 22:02:32 +0300
committerErkin Alp Güney <erkinalp9035@gmail.com>2022-04-18 22:02:32 +0300
commit3061c24780a2dcf46dc4960d50c3636cab6b918f (patch)
tree2a48ace270e84b3c639b9ae1966c4a2d42d5eaa2
parentMerge branch 'master' of https://github.com/fosscord/fosscord-server (diff)
downloadserver-3061c24780a2dcf46dc4960d50c3636cab6b918f.tar.xz
general rights enforcement stuff
-rw-r--r--api/src/util/handlers/route.ts3
1 files changed, 3 insertions, 0 deletions
diff --git a/api/src/util/handlers/route.ts b/api/src/util/handlers/route.ts

index 0048c4dd..3d3bbc37 100644 --- a/api/src/util/handlers/route.ts +++ b/api/src/util/handlers/route.ts
@@ -6,6 +6,7 @@ import { FieldErrors, FosscordApiErrors, getPermission, + getRights, PermissionResolvable, Permissions, RightResolvable, @@ -105,6 +106,8 @@ export function route(opts: RouteOptions) { if (opts.right) { const required = new Rights(opts.right); + req.rights = await getRights(req.user_id); + if (!req.rights || !req.rights.has(required)) { throw FosscordApiErrors.MISSING_RIGHTS.withParams(opts.right as string); }