reels
This commit is contained in:
18
middlewares/requireSubUserPermission.js
Normal file
18
middlewares/requireSubUserPermission.js
Normal file
@@ -0,0 +1,18 @@
|
||||
// مطابق middlewares/requirePermission.js (پنل ادمین) ولی برای زیرمجموعههای
|
||||
// کاربرانِ عادی. باید بعد از میدلویری که req.actingSubUser رو ست میکنه
|
||||
// (blockCheck / isRegister / isHalfRegister / isBasicRegister) بیاد.
|
||||
// اگه req.actingSubUser خالی باشه یعنی خودِ صاحبِ اکانته — دسترسیِ کامل داره.
|
||||
module.exports = function requireSubUserPermission (key) {
|
||||
return (req, res, next) => {
|
||||
const actingSubUser = req.actingSubUser
|
||||
if (!actingSubUser) return next()
|
||||
if (Array.isArray(actingSubUser.permissions) && actingSubUser.permissions.includes(key)) {
|
||||
return next()
|
||||
}
|
||||
return res.status(403).json({
|
||||
status: 'error',
|
||||
code: 403,
|
||||
message: 'شما دسترسی انجام این عملیات را ندارید'
|
||||
})
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user