aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/middlewares/validators
diff options
context:
space:
mode:
authorJosh Morel <morel.josh@hotmail.com>2019-02-17 13:14:00 -0500
committerChocobozzz <chocobozzz@cpy.re>2019-02-18 17:21:41 +0100
commit576ad67aaccf713b2a923deb3cb9b2a990613985 (patch)
tree2feec6798bfe14aa25e73ddce653d06f3f41c7af /server/middlewares/validators
parent41d713446c2152d47943ddb0c841a9e36ca5a9db (diff)
downloadPeerTube-576ad67aaccf713b2a923deb3cb9b2a990613985.tar.gz
PeerTube-576ad67aaccf713b2a923deb3cb9b2a990613985.tar.zst
PeerTube-576ad67aaccf713b2a923deb3cb9b2a990613985.zip
check email enabled for requiresEmailVer config
Diffstat (limited to 'server/middlewares/validators')
-rw-r--r--server/middlewares/validators/config.ts18
1 files changed, 18 insertions, 0 deletions
diff --git a/server/middlewares/validators/config.ts b/server/middlewares/validators/config.ts
index 90108fa82..270ce66f6 100644
--- a/server/middlewares/validators/config.ts
+++ b/server/middlewares/validators/config.ts
@@ -2,6 +2,8 @@ import * as express from 'express'
2import { body } from 'express-validator/check' 2import { body } from 'express-validator/check'
3import { isUserNSFWPolicyValid, isUserVideoQuotaValid, isUserVideoQuotaDailyValid } from '../../helpers/custom-validators/users' 3import { isUserNSFWPolicyValid, isUserVideoQuotaValid, isUserVideoQuotaDailyValid } from '../../helpers/custom-validators/users'
4import { logger } from '../../helpers/logger' 4import { logger } from '../../helpers/logger'
5import { CustomConfig } from '../../../shared/models/server/custom-config.model'
6import { Emailer } from '../../lib/emailer'
5import { areValidationErrors } from './utils' 7import { areValidationErrors } from './utils'
6 8
7const customConfigUpdateValidator = [ 9const customConfigUpdateValidator = [
@@ -46,11 +48,27 @@ const customConfigUpdateValidator = [
46 logger.debug('Checking customConfigUpdateValidator parameters', { parameters: req.body }) 48 logger.debug('Checking customConfigUpdateValidator parameters', { parameters: req.body })
47 49
48 if (areValidationErrors(req, res)) return 50 if (areValidationErrors(req, res)) return
51 if (!checkInvalidConfigIfEmailDisabled(req.body as CustomConfig, res)) return
49 52
50 return next() 53 return next()
51 } 54 }
52] 55]
53 56
57// ---------------------------------------------------------------------------
58
54export { 59export {
55 customConfigUpdateValidator 60 customConfigUpdateValidator
56} 61}
62
63function checkInvalidConfigIfEmailDisabled (customConfig: CustomConfig, res: express.Response) {
64 if (Emailer.isEnabled()) return true
65
66 if (customConfig.signup.requiresEmailVerification === true) {
67 res.status(400)
68 .send({ error: 'Emailer is disabled but you require signup email verification.' })
69 .end()
70 return false
71 }
72
73 return true
74}