Initial commit
This commit is contained in:
@@ -0,0 +1,77 @@
|
||||
const router = require('express-promise-router')()
|
||||
|
||||
const {
|
||||
assign,
|
||||
listEntries,
|
||||
listNewEntries,
|
||||
createQuestion,
|
||||
deleteQuestion,
|
||||
updateDomain,
|
||||
insertConsultantAndHisDomainsByUsername,
|
||||
insertNonModerator,
|
||||
deleteConsultantForEntry,
|
||||
getSharedAuthors,
|
||||
getSharedAuthorsBeforePublish,
|
||||
removeConsultant,
|
||||
reject,
|
||||
sendToReview,
|
||||
publish,
|
||||
updateQuestion,
|
||||
updateSharedAuthors
|
||||
} = require('../../../controllers/api/v1/consultancy')
|
||||
|
||||
// All routes require an authenticated user.
|
||||
router.use((req, res, next) => {
|
||||
if (req.isAuthenticated()) return next()
|
||||
res.status(400).send('Unauthenticated')
|
||||
})
|
||||
|
||||
router.get('/entry', listEntries)
|
||||
|
||||
router.get('/new-entry', listNewEntries)
|
||||
|
||||
router.post('/entry', createQuestion)
|
||||
|
||||
router.put('/entry', updateQuestion)
|
||||
|
||||
// Authorize endpoints for portal admin below.
|
||||
router.use((req, res, next) => {
|
||||
if (req.user.hasRole('portal admin')) return next()
|
||||
res.status(400).send('Unauthorized')
|
||||
})
|
||||
|
||||
// router.use(checkUserAdminPrivilegeUltility)
|
||||
|
||||
router.post(
|
||||
'/add-consultant-by-username',
|
||||
insertConsultantAndHisDomainsByUsername
|
||||
)
|
||||
|
||||
router.post('/add-non-moderator', insertNonModerator)
|
||||
|
||||
// Remove user from role "consultant"
|
||||
// body params: id -> user's id
|
||||
|
||||
router.get('/get-shared-authors', getSharedAuthorsBeforePublish)
|
||||
|
||||
router.get('/get-shared-authors-publish', getSharedAuthors)
|
||||
|
||||
router.put('/update-consultant-domain', updateDomain)
|
||||
|
||||
router.put('/update-shared-authors', updateSharedAuthors)
|
||||
|
||||
router.put('/assign', assign)
|
||||
|
||||
router.put('/reject', reject)
|
||||
|
||||
router.put('/review', sendToReview)
|
||||
|
||||
router.put('/publish', publish)
|
||||
|
||||
router.delete('/delete-consultant', removeConsultant)
|
||||
|
||||
router.delete('/delete-consultant-author', deleteConsultantForEntry)
|
||||
|
||||
router.delete('/delete', deleteQuestion)
|
||||
|
||||
module.exports = router
|
||||
Reference in New Issue
Block a user