diff options
author | unknownPerson115 <69736850+unknownPerson115@users.noreply.github.com> | 2021-12-25 21:09:46 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-12-25 21:09:46 +0000 |
commit | 31c66d0f5ef19446e9e6d322fe3a1d8e830fdbcb (patch) | |
tree | f3df38ae7150dc95318cd378c158d1436a0b4752 | |
parent | Updated Server.ts (diff) | |
download | server-31c66d0f5ef19446e9e6d322fe3a1d8e830fdbcb.tar.xz |
Create stop.ts (for /stop API route)
patched up the route and polished it note: THIS API IS ONLY FOR DEVELOPMENT PURPOSES
-rw-r--r-- | api/src/routes/stop.ts | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/api/src/routes/stop.ts b/api/src/routes/stop.ts new file mode 100644 index 00000000..b4f2de5e --- /dev/null +++ b/api/src/routes/stop.ts @@ -0,0 +1,30 @@ +import { Router, Request, Response } from "express"; +import { route } from "@fosscord/api"; +import { User } from "@fosscord/util"; + +const router: Router = Router(); + +router.post("/", route({}), async (req: Request, res: Response) => { + //TODO: have an "OPERATOR" platform permission implemented for this API route + const user = await User.findOneOrFail({ where: { id: req.user_id }, select: ["flags"] }); + if(user.flags == '4096') { + console.log("user that POSTed to the API was ALLOWED"); + console.log(user.flags); + res.sendStatus(200) + process.kill(process.pid, 'SIGTERM') + } + if(user.flags <= '4095') { + console.log("user that POSTed to the /stop API was DENIED"); + console.log(user.flags); + res.sendStatus(403) + } + if(user.flags >= '4097'){ + console.log("user that POSTed to the /stop API was DENIED"); + console.log(user.flags); + res.sendStatus(403) + } +}); + +export default router; + +//THIS API CAN ONLY BE USED BY USERS WITH THE 'SYSTEM' FLAG ONLY IF ANY OTHER FLAGS ARE ADDED THE REQUEST WILL RETURN 403 'FORBIDDEN' |