Files
modstagram-back/middlewares/requirePermission.js
payacom c302aea177 4.1.3
2026-09-13 21:32:36 +03:30

20 lines
742 B
JavaScript

// باید بعد از adminAuth بیاد (به req.admin نیاز داره). super_admin همیشه رد می‌شه؛
// staff فقط اگه key توی permissions خودش باشه
module.exports = function requirePermission(key) {
return (req, res, next) => {
const admin = req.admin
if (!admin) {
return res.status(401).send({ status: 'error', code: 401, message: 'Access Denied' })
}
if (admin.role === 'super_admin') return next()
if (Array.isArray(admin.permissions) && admin.permissions.includes(key)) {
return next()
}
return res.status(403).send({
status: 'error',
code: 403,
message: 'شما دسترسی لازم برای این بخش را ندارید'
})
}
}