const routes = require('express').Router(); /*const postService = require('./post.service')(models.Post); const postController = require('./post.controller')(postService);*/ const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator'); const PaginateMiddleware = require('../../middlewares/paginate'); const SortMiddleware = require('../../middlewares/sort'); const FieldMiddleware = require('../../middlewares/fields'); const blogController = require('./blog.controller') routes.get('/posts', isLoggedUser, FieldMiddleware.middleware({ invalidFields: ['user', 'createdAt'] }), PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "date" }), blogController.find()); routes.post('/posts', isAdministratorUser, blogController.create); routes.get('/posts/:id', isLoggedUser, FieldMiddleware.middleware({ invalidFields: ['updatedAt', 'createdAt'] }), //PaginateMiddleware.middleware(), //SortMiddleware.middleware({ default: "date" }), blogController.findOne() ); routes.put('/posts/:id', isAdministratorUser, blogController.update); routes.delete('/posts/:id', isAdministratorUser, blogController.delete); routes.get('/posts/:id/comments', isLoggedUser, PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "date" }), blogController.getPostComments); module.exports = routes;