/
var
/
www
/
greso.tech
/
server
/
nsm
/
middleware
/
/var/www/greso.tech/server/nsm/middleware
mkdir
upload
Name
Size
Mode
Actions
auth.js
607
0644
edit
dl
rm
permissions.js
912
0644
edit
dl
rm
Edit:
/var/www/greso.tech/server/nsm/middleware/permissions.js
(912B)
const { Forbidden } = require('../responseModels/errors/index') function isSuperUser(req, res) { return req.user?.roleKey === 'su' } function isManager(req, res) { return req.user?.roleKey === 'manager' } function isOwner(req, res) { return req.user?.roleKey === 'owner' } function isHepler(req, res) { return req.user?.roleKey === 'helper' } function isDirector(req, res) { return req.user?.roleKey === 'director' } function isForeman(req, res) { return req.user?.roleKey === 'foreman' } function isClient(req, res) { return req.user?.roleKey === 'client' } function check(perms) { return (req, res, next) => { if (perms && perms.length > 0) { for (const p of perms) { if (p(req, res)) return next() } } throw new Forbidden() } } module.exports = { check, isSuperUser, isManager, isOwner, isClient, isHepler, isDirector, isForeman }
Save
cmd:
run