Essential backend functionality, including logins.

This commit is contained in:
2019-08-21 12:52:12 +02:00
parent d2168ab4a0
commit 99f2c5e7d8
14 changed files with 3965 additions and 1 deletions

21
api/routes/baseRouter.js Normal file
View 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
View 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;

View 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
View 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;