aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/middlewares/validators/account.ts
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2018-05-25 09:57:16 +0200
committerChocobozzz <me@florianbigard.com>2018-05-25 10:41:07 +0200
commitad9e39fb815d85e5e718c40540fa75471474fa17 (patch)
tree960accb16bca0fac7694b3f3d5d038534b66c224 /server/middlewares/validators/account.ts
parent06be7ed0b27b371465c5d1b7f92b4adfb0b866ea (diff)
downloadPeerTube-ad9e39fb815d85e5e718c40540fa75471474fa17.tar.gz
PeerTube-ad9e39fb815d85e5e718c40540fa75471474fa17.tar.zst
PeerTube-ad9e39fb815d85e5e718c40540fa75471474fa17.zip
Only use account name in routes
Diffstat (limited to 'server/middlewares/validators/account.ts')
-rw-r--r--server/middlewares/validators/account.ts32
1 files changed, 3 insertions, 29 deletions
diff --git a/server/middlewares/validators/account.ts b/server/middlewares/validators/account.ts
index c01e742da..b3a51e631 100644
--- a/server/middlewares/validators/account.ts
+++ b/server/middlewares/validators/account.ts
@@ -1,15 +1,8 @@
1import * as express from 'express' 1import * as express from 'express'
2import { param } from 'express-validator/check' 2import { param } from 'express-validator/check'
3import { 3import { isAccountNameValid, isAccountNameWithHostExist, isLocalAccountNameExist } from '../../helpers/custom-validators/accounts'
4 isAccountIdExist,
5 isAccountIdValid,
6 isAccountNameValid,
7 isAccountNameWithHostExist,
8 isLocalAccountNameExist
9} from '../../helpers/custom-validators/accounts'
10import { logger } from '../../helpers/logger' 4import { logger } from '../../helpers/logger'
11import { areValidationErrors } from './utils' 5import { areValidationErrors } from './utils'
12import { isIdOrUUIDValid } from '../../helpers/custom-validators/misc'
13 6
14const localAccountValidator = [ 7const localAccountValidator = [
15 param('name').custom(isAccountNameValid).withMessage('Should have a valid account name'), 8 param('name').custom(isAccountNameValid).withMessage('Should have a valid account name'),
@@ -24,32 +17,14 @@ const localAccountValidator = [
24 } 17 }
25] 18]
26 19
27const accountsGetValidator = [
28 param('id').custom(isAccountIdValid).withMessage('Should have a valid id/uuid/name/name with host'),
29
30 async (req: express.Request, res: express.Response, next: express.NextFunction) => {
31 logger.debug('Checking accountsGetValidator parameters', { parameters: req.params })
32
33 if (areValidationErrors(req, res)) return
34
35 let accountFetched = false
36 if (isIdOrUUIDValid(req.params.id)) accountFetched = await isAccountIdExist(req.params.id, res, false)
37 if (!accountFetched) accountFetched = await isAccountNameWithHostExist(req.params.id, res, true)
38
39 if (!accountFetched) return
40
41 return next()
42 }
43]
44
45const accountsNameWithHostGetValidator = [ 20const accountsNameWithHostGetValidator = [
46 param('nameWithHost').exists().withMessage('Should have an account name with host'), 21 param('accountName').exists().withMessage('Should have an account name with host'),
47 22
48 async (req: express.Request, res: express.Response, next: express.NextFunction) => { 23 async (req: express.Request, res: express.Response, next: express.NextFunction) => {
49 logger.debug('Checking accountsNameWithHostGetValidator parameters', { parameters: req.params }) 24 logger.debug('Checking accountsNameWithHostGetValidator parameters', { parameters: req.params })
50 25
51 if (areValidationErrors(req, res)) return 26 if (areValidationErrors(req, res)) return
52 if (!await isAccountNameWithHostExist(req.params.nameWithHost, res)) return 27 if (!await isAccountNameWithHostExist(req.params.accountName, res)) return
53 28
54 return next() 29 return next()
55 } 30 }
@@ -59,6 +34,5 @@ const accountsNameWithHostGetValidator = [
59 34
60export { 35export {
61 localAccountValidator, 36 localAccountValidator,
62 accountsGetValidator,
63 accountsNameWithHostGetValidator 37 accountsNameWithHostGetValidator
64} 38}