From 766d13b4470de02d3d7bec94188260b89a356399 Mon Sep 17 00:00:00 2001 From: kimsible Date: Wed, 29 Jul 2020 20:10:03 +0200 Subject: [PATCH] Make channelName optionnal in tests only and validators Fix tests channel displayName Make channelName in createUser optionnal on server side to not break api Fix auto channelName with createUser in tests --- server/middlewares/validators/users.ts | 25 +++++++++++-------------- 1 file changed, 11 insertions(+), 14 deletions(-) diff --git a/server/middlewares/validators/users.ts b/server/middlewares/validators/users.ts index aff18be3d..76ecff884 100644 --- a/server/middlewares/validators/users.ts +++ b/server/middlewares/validators/users.ts @@ -56,7 +56,7 @@ const usersAddValidator = [ body('username').custom(isUserUsernameValid).withMessage('Should have a valid username (lowercase alphanumeric characters)'), body('password').custom(isUserPasswordValidOrEmpty).withMessage('Should have a valid password'), body('email').isEmail().withMessage('Should have a valid email'), - body('channelName').custom(isActorPreferredUsernameValid).withMessage('Should have a valid channel name'), + body('channelName').optional().custom(isActorPreferredUsernameValid).withMessage('Should have a valid channel name'), body('videoQuota').custom(isUserVideoQuotaValid).withMessage('Should have a valid user quota'), body('videoQuotaDaily').custom(isUserVideoQuotaDailyValid).withMessage('Should have a valid daily user quota'), body('role') @@ -76,20 +76,17 @@ const usersAddValidator = [ .json({ error: 'You can only create users (and not administrators or moderators)' }) } - if (!req.body.channelName) { - return res.status(400) - .json({ error: 'Channel name is required.' }) - } + if (req.body.channelName) { + if (req.body.channelName === req.body.username) { + return res.status(400) + .json({ error: 'Channel name cannot be the same as user username.' }) + } - if (req.body.channelName === req.body.username) { - return res.status(400) - .json({ error: 'Channel name cannot be the same as user username.' }) - } - - const existing = await ActorModel.loadLocalByName(req.body.channelName) - if (existing) { - return res.status(409) - .json({ error: `Channel with name ${req.body.channelName} already exists.` }) + const existing = await ActorModel.loadLocalByName(req.body.channelName) + if (existing) { + return res.status(409) + .json({ error: `Channel with name ${req.body.channelName} already exists.` }) + } } return next()