From a877d5acc5c52b8667c65f725bbca9a52e40ec48 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 17 May 2016 21:03:00 +0200 Subject: Add ability to sort videos list --- server/middlewares/reqValidators/index.js | 2 ++ server/middlewares/reqValidators/pagination.js | 6 +++--- server/middlewares/reqValidators/sort.js | 23 +++++++++++++++++++++++ 3 files changed, 28 insertions(+), 3 deletions(-) create mode 100644 server/middlewares/reqValidators/sort.js (limited to 'server/middlewares/reqValidators') diff --git a/server/middlewares/reqValidators/index.js b/server/middlewares/reqValidators/index.js index b732a27b6..be68f6a29 100644 --- a/server/middlewares/reqValidators/index.js +++ b/server/middlewares/reqValidators/index.js @@ -3,12 +3,14 @@ const paginationReqValidators = require('./pagination') const podsReqValidators = require('./pods') const remoteReqValidators = require('./remote') +const sortReqValidators = require('./sort') const videosReqValidators = require('./videos') const reqValidators = { pagination: paginationReqValidators, pods: podsReqValidators, remote: remoteReqValidators, + sort: sortReqValidators, videos: videosReqValidators } diff --git a/server/middlewares/reqValidators/pagination.js b/server/middlewares/reqValidators/pagination.js index ca8375396..e598f269a 100644 --- a/server/middlewares/reqValidators/pagination.js +++ b/server/middlewares/reqValidators/pagination.js @@ -8,10 +8,10 @@ const reqValidatorsPagination = { } function pagination (req, res, next) { - req.checkParams('start', 'Should have a number start').optional().isInt() - req.checkParams('count', 'Should have a number count').optional().isInt() + req.checkQuery('start', 'Should have a number start').optional().isInt() + req.checkQuery('count', 'Should have a number count').optional().isInt() - logger.debug('Checking pagination parameters', { parameters: req.params }) + logger.debug('Checking pagination parameters', { parameters: req.query }) checkErrors(req, res, next) } diff --git a/server/middlewares/reqValidators/sort.js b/server/middlewares/reqValidators/sort.js new file mode 100644 index 000000000..06e680ef4 --- /dev/null +++ b/server/middlewares/reqValidators/sort.js @@ -0,0 +1,23 @@ +'use strict' + +const checkErrors = require('./utils').checkErrors +const constants = require('../../initializers/constants') +const logger = require('../../helpers/logger') + +const reqValidatorsSort = { + videosSort: videosSort +} + +function videosSort (req, res, next) { + const sortableColumns = constants.SORTABLE_COLUMNS.VIDEOS + + req.checkQuery('sort', 'Should have correct sortable column').optional().isIn(sortableColumns) + + logger.debug('Checking sort parameters', { parameters: req.query }) + + checkErrors(req, res, next) +} + +// --------------------------------------------------------------------------- + +module.exports = reqValidatorsSort -- cgit v1.2.3