import HttpCodes from "@Common/system/controller-pattern/HttpCodes"; import { NextFunction, Request, Response } from "express"; export default async function roleHandler(req: Request, response: Response, next: NextFunction) { try { const namespace = req.path && req.path.split("/")[3]; const role = req.body.user.role; if(!role) { response.status(HttpCodes.UNAUTHORIZED).send("Unauthorized without role"); return; } if (namespace != "notary" && role != namespace && role != "super-admin") { response.status(HttpCodes.UNAUTHORIZED).send("Unauthorized with this role"); return; } next(); } catch (error) { console.log(error); response.status(HttpCodes.INTERNAL_ERROR).send("Internal server error"); return; } }