This commit is contained in:
David Arranz 2019-08-09 13:00:42 +02:00
parent 295f4f655c
commit 70d00bb7db
3 changed files with 73 additions and 1 deletions

View File

@ -133,4 +133,5 @@ const generateControllers = (service, extraControllers = {}, options = {}) => {
}
module.exports = generateControllers;
module.exports = generateControllers;
module.exports.buildContext = buildContext;

View File

@ -251,4 +251,74 @@ routes.get('/tickets/:id/',
//routes.put('/venues/:id', isAdministratorUser, venueController.update);
//routes.delete('/venues/:id', isAdministratorUser, venueController.delete);
/********************************************************************************************************
* ADMINISTRACIÓN
*********************************************************************************************************
*/
// Todos los ponentes
routes.get('/admin/events',
isAdministratorUser,
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "-init_date" }),
(req, res, next) => {
if (!req.body.city)
return eventController.find({
scopes: ['defaultScope', 'includeVenue', 'includeMultimedias', 'includeSpeakers'],
})(req, res, next)
else
return eventController.find({
scopes: ['defaultScope', 'includeVenue', 'includeMultimedias', 'includeSpeakers', { method: ['onlyOfCity', req.body.city] }]
})(req, res, next);
}
);
routes.get('/admin/events/next',
isAdministratorUser,
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "init_available_date" }),
eventController.find({
scopes: ['defaultScope', 'next', 'includeVenue', 'includeMultimedias', 'includeSpeakers'],
}),
);
routes.get('/admin/events/past',
isAdministratorUser,
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "-init_date" }),
eventController.find({
scopes: ['defaultScope', 'past', 'includeVenue', 'includeMultimedias', 'includeSpeakers'],
}),
);
routes.get('/admin/events/current',
isAdministratorUser,
PaginateMiddleware.middleware(),
SortMiddleware.middleware({ default: "-init_date" }),
eventController.find({
scopes: ['defaultScope', 'current', 'includeVenue', 'includeMultimedias', 'includeSpeakers'],
}),
);
routes.get('/admin/events/:id',
isAdministratorUser,
(req, res, next) => {
return eventController.findOne({
scopes: ['defaultScope', 'includeVenue', 'includeMultimedias', 'includeSpeakers']
})(req, res, next)
}
);
/*// Un ponente
routes.get('/admin/speakers/:id',
isAdministratorUser,
eventController.findOne({
scopes: ['defaultScope', 'includeValues', 'includeMultimedias']
})
);*/
module.exports = routes;

View File

@ -1,6 +1,7 @@
'use strict';
const httpStatus = require('http-status');
const generateControllers = require('../../core/controllers');
const { buildContext } = require('../../core/controllers');
const { extractParamsFromRequest, handleErrorResponse, handleResultResponse } = require('../../helpers/controller.helper');
const multimediaService = require('./multimedia.service');
const multimediaFileService = require('./multimedia_file.service');