Essential backend functionality, including logins.
This commit is contained in:
21
api/routes/baseRouter.js
Normal file
21
api/routes/baseRouter.js
Normal file
@@ -0,0 +1,21 @@
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const userRouter = require('./userRouter'),
|
||||
bookRouter = require('./bookRouter'),
|
||||
borrowRouter = require('./borrowRouter');
|
||||
|
||||
// logger
|
||||
router.use(function(req, res, next) {
|
||||
if (req.user) {
|
||||
console.log("User %s: %s %s", req.user.username, req.method, req.url);
|
||||
} else {
|
||||
console.log('%s %s', req.method, req.url);
|
||||
}
|
||||
next();
|
||||
});
|
||||
|
||||
router.use('/users', userRouter);
|
||||
router.use('/books', bookRouter);
|
||||
router.use('/borrow', borrowRouter);
|
||||
|
||||
module.exports = router
|
17
api/routes/bookRouter.js
Normal file
17
api/routes/bookRouter.js
Normal file
@@ -0,0 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const book = require('../controllers/bookController');
|
||||
const requirePermission = require('../../utils/requirePermission');
|
||||
|
||||
router.route('/')
|
||||
.get(book.list_all)
|
||||
.post(requirePermission("borrow_books"), book.create);
|
||||
|
||||
router.route('/:bookId')
|
||||
.get(book.get)
|
||||
.put(book.update)
|
||||
.delete(book.delete);
|
||||
|
||||
module.exports = router;
|
14
api/routes/borrowRouter.js
Normal file
14
api/routes/borrowRouter.js
Normal file
@@ -0,0 +1,14 @@
|
||||
'use strict';
|
||||
|
||||
const express = require('express')
|
||||
const router = express.Router()
|
||||
const borrow = require('../controllers/borrowController');
|
||||
const requirePermission = require('../../utils/requirePermission');
|
||||
|
||||
router.all(requirePermission("borrow_books"));
|
||||
router.route('/')
|
||||
.get(borrow.list_all)
|
||||
.put(borrow.update)
|
||||
.delete(borrow.delete);
|
||||
|
||||
module.exports = router;
|
17
api/routes/userRouter.js
Normal file
17
api/routes/userRouter.js
Normal file
@@ -0,0 +1,17 @@
|
||||
'use strict';
|
||||
|
||||
const express = require('express');
|
||||
const router = express.Router();
|
||||
const user = require('../controllers/userController');
|
||||
const requirePermission = require('../../utils/requirePermission');
|
||||
|
||||
router.route('/')
|
||||
.get(user.list_all)
|
||||
.post(requirePermission("add_users"), user.create);
|
||||
|
||||
router.route('/:userId')
|
||||
.get(user.get)
|
||||
.put(requirePermission("update_users"), user.update)
|
||||
.delete(requirePermission("delete_users"), user.delete);
|
||||
|
||||
module.exports = router;
|
Reference in New Issue
Block a user