reels
This commit is contained in:
32
routes/application/sub-users/index.js
Normal file
32
routes/application/sub-users/index.js
Normal file
@@ -0,0 +1,32 @@
|
||||
const express = require('express')
|
||||
const router = express.Router()
|
||||
|
||||
const auth = require('../../../middlewares/auth')
|
||||
const blockCheck = require('../../../middlewares/blockCheck')
|
||||
const {
|
||||
createSubUser,
|
||||
listSubUsers,
|
||||
getSubUser,
|
||||
updateSubUser,
|
||||
setSubUserActive
|
||||
} = require('../../../controllers/application/subUsers/subUserController')
|
||||
|
||||
// یه کاربرِ زیرمجموعه هیچوقت نباید بتونه خودش زیرمجموعه بسازه/مدیریت کنه —
|
||||
// فقط صاحبِ اصلیِ اکانت (req.actingSubUser خالیه)
|
||||
function ownerOnly (req, res, next) {
|
||||
if (req.actingSubUser) {
|
||||
return res.status(403).json({
|
||||
error: true,
|
||||
message: 'کاربر زیرمجموعه اجازهی مدیریت کاربران زیرمجموعه را ندارد'
|
||||
})
|
||||
}
|
||||
next()
|
||||
}
|
||||
|
||||
router.post('/', [auth, blockCheck, ownerOnly], createSubUser)
|
||||
router.get('/', [auth, blockCheck, ownerOnly], listSubUsers)
|
||||
router.get('/:id', [auth, blockCheck, ownerOnly], getSubUser)
|
||||
router.patch('/:id', [auth, blockCheck, ownerOnly], updateSubUser)
|
||||
router.patch('/:id/active', [auth, blockCheck, ownerOnly], setSubUserActive)
|
||||
|
||||
module.exports = router
|
||||
Reference in New Issue
Block a user