app2-api/modules/blog/blog.routes.js

42 lines
1.4 KiB
JavaScript
Raw Normal View History

2019-04-15 15:58:58 +00:00
const routes = require('express').Router();
2019-04-24 21:01:54 +00:00
2019-05-09 16:23:54 +00:00
/*const postService = require('./post.service')(models.Post);
const postController = require('./post.controller')(postService);*/
2019-04-15 15:58:58 +00:00
2019-05-09 16:23:54 +00:00
const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator');
const PaginateMiddleware = require('../../middlewares/paginate');
const SortMiddleware = require('../../middlewares/sort');
const FieldMiddleware = require('../../middlewares/fields');
2019-04-15 15:58:58 +00:00
2019-05-09 16:23:54 +00:00
const blogController = require('./blog.controller')
2019-04-24 21:01:54 +00:00
2019-05-23 09:40:50 +00:00
routes.get('/posts', isLoggedUser,
2019-05-09 16:23:54 +00:00
FieldMiddleware.middleware({
2019-05-23 09:40:50 +00:00
invalidFields: ['user', 'createdAt']
2019-05-09 16:23:54 +00:00
}),
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "date" }),
2019-07-24 14:50:41 +00:00
blogController.find());
2019-04-15 15:58:58 +00:00
2019-05-09 16:23:54 +00:00
routes.post('/posts', isAdministratorUser, blogController.create);
2019-04-24 21:01:54 +00:00
2019-05-23 09:40:50 +00:00
routes.get('/posts/:id', isLoggedUser,
2019-05-09 16:23:54 +00:00
FieldMiddleware.middleware({
invalidFields: ['updatedAt', 'createdAt']
}),
//PaginateMiddleware.middleware(),
//SortMiddleware.middleware({ default: "date" }),
2019-07-24 14:50:41 +00:00
blogController.findOne()
);
2019-04-24 21:01:54 +00:00
2019-05-09 16:23:54 +00:00
routes.put('/posts/:id', isAdministratorUser, blogController.update);
routes.delete('/posts/:id', isAdministratorUser, blogController.delete);
2019-04-24 21:01:54 +00:00
2019-05-23 09:40:50 +00:00
routes.get('/posts/:id/comments', isLoggedUser,
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "date" }),
blogController.getPostComments);
2019-04-15 15:58:58 +00:00
module.exports = routes;