aboutsummaryrefslogtreecommitdiffhomepage
path: root/server/helpers/custom-validators
diff options
context:
space:
mode:
Diffstat (limited to 'server/helpers/custom-validators')
-rw-r--r--server/helpers/custom-validators/video-blacklist.ts32
1 files changed, 32 insertions, 0 deletions
diff --git a/server/helpers/custom-validators/video-blacklist.ts b/server/helpers/custom-validators/video-blacklist.ts
new file mode 100644
index 000000000..b36b08d8b
--- /dev/null
+++ b/server/helpers/custom-validators/video-blacklist.ts
@@ -0,0 +1,32 @@
1import { Response } from 'express'
2import * as validator from 'validator'
3import { CONSTRAINTS_FIELDS } from '../../initializers'
4import { VideoBlacklistModel } from '../../models/video/video-blacklist'
5
6const VIDEO_BLACKLIST_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEO_BLACKLIST
7
8function isVideoBlacklistReasonValid (value: string) {
9 return value === null || validator.isLength(value, VIDEO_BLACKLIST_CONSTRAINTS_FIELDS.REASON)
10}
11
12async function isVideoBlacklistExist (videoId: number, res: Response) {
13 const videoBlacklist = await VideoBlacklistModel.loadByVideoId(videoId)
14
15 if (videoBlacklist === null) {
16 res.status(404)
17 .json({ error: 'Blacklisted video not found' })
18 .end()
19
20 return false
21 }
22
23 res.locals.videoBlacklist = videoBlacklist
24 return true
25}
26
27// ---------------------------------------------------------------------------
28
29export {
30 isVideoBlacklistReasonValid,
31 isVideoBlacklistExist
32}