This commit is contained in:
payacom
2026-10-01 21:12:05 +03:30
parent 806471241e
commit d4ebc20aa8
41 changed files with 1015 additions and 135 deletions

View 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: 'شما دسترسی انجام این عملیات را ندارید'
})
}
}