const routes = require('express').Router(); const { isAdministratorUser, isLoggedUser } = require('../../middlewares/accessValidator'); const SchemaValidator = require('../../middlewares/schemaValidator'); const PaginateMiddleware = require('../../middlewares/paginate'); const FieldMiddleware = require('../../middlewares/fields'); const SortMiddleware = require('../../middlewares/sort'); //const entityValidation = require('./entity.validations'); const eventController = require('./event.controller'); routes.get('/events', isLoggedUser, /*FieldMiddleware.middleware({ invalidFields: ['user', 'createdAt'] }),*/ PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "-date" }), eventController.find ); routes.get('/events/next', isLoggedUser, /*FieldMiddleware.middleware({ invalidFields: ['user', 'createdAt'] }), */ PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "init_available_date" }), eventController.findNext ); routes.get('/events/pass', isLoggedUser, PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "-date" }), eventController.findPass ); routes.get('/events/current', isLoggedUser, PaginateMiddleware.middleware(), SortMiddleware.middleware({ default: "init_available_date" }), eventController.findCurrent ); routes.get('/events/:id', isLoggedUser, FieldMiddleware.middleware({ invalidFields: ['createdAt'] }), eventController.findOne ); // Comentarios routes.get('/events/:id/comments', //isLoggedUser, //eventController.findComments ); // Inscripciones routes.get('/events/:id/inscriptions', // Esto da las inscripciones (1) de un usuario pero si el usuario fuera el administrador podría todas las inscripciones de un evento //isLoggedUser, //eventController.findComments ); routes.post('/events/:id/inscriptions', // Hacer una inscripción //isLoggedUser, //eventController.findComments ); routes.delete('/events/:id/inscriptions', // Borrar una inscripción (poner el id de la inscripción????) //isLoggedUser, //eventController.findComments ); routes.get('/events/:id/reservations/:encodedInvitationCode', //isLoggedUser, //eventController.findComments ); //routes.get('/venues', isLoggedUser, SortMiddleware.middleware({ default: "name" }), venueController.find); //routes.get('/venues/:id', isLoggedUser, venueController.findOne); //routes.post('/entity/', SchemaValidator(VenueValidation.VenueInputType, true), venueController.create); //routes.put('/venues/:id', isAdministratorUser, venueController.update); //routes.delete('/venues/:id', isAdministratorUser, venueController.delete); module.exports = routes;