/var/www/greso.tech/server/nsm/middleware
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
}