]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - server/middlewares/validators/logs.ts
Merge branch 'release/3.2.0' into develop
[github/Chocobozzz/PeerTube.git] / server / middlewares / validators / logs.ts
1 import * as express from 'express'
2 import { logger } from '../../helpers/logger'
3 import { areValidationErrors } from './utils'
4 import { isDateValid } from '../../helpers/custom-validators/misc'
5 import { query } from 'express-validator'
6 import { isValidLogLevel } from '../../helpers/custom-validators/logs'
7
8 const getLogsValidator = [
9 query('startDate')
10 .custom(isDateValid).withMessage('Should have a valid start date'),
11 query('level')
12 .optional()
13 .custom(isValidLogLevel).withMessage('Should have a valid level'),
14 query('endDate')
15 .optional()
16 .custom(isDateValid).withMessage('Should have a valid end date'),
17
18 (req: express.Request, res: express.Response, next: express.NextFunction) => {
19 logger.debug('Checking getLogsValidator parameters.', { parameters: req.query })
20
21 if (areValidationErrors(req, res)) return
22
23 return next()
24 }
25 ]
26
27 const getAuditLogsValidator = [
28 query('startDate')
29 .custom(isDateValid).withMessage('Should have a valid start date'),
30 query('endDate')
31 .optional()
32 .custom(isDateValid).withMessage('Should have a valid end date'),
33
34 (req: express.Request, res: express.Response, next: express.NextFunction) => {
35 logger.debug('Checking getAuditLogsValidator parameters.', { parameters: req.query })
36
37 if (areValidationErrors(req, res)) return
38
39 return next()
40 }
41 ]
42
43 // ---------------------------------------------------------------------------
44
45 export {
46 getLogsValidator,
47 getAuditLogsValidator
48 }