]>
Commit | Line | Data |
---|---|---|
26b7305a C |
1 | import { Response } from 'express' |
2 | import * as validator from 'validator' | |
7ccddd7b | 3 | import { exists } from './misc' |
26b7305a C |
4 | import { CONSTRAINTS_FIELDS } from '../../initializers' |
5 | import { VideoBlacklistModel } from '../../models/video/video-blacklist' | |
7ccddd7b | 6 | import { VideoBlacklistType } from '../../../shared/models/videos' |
26b7305a C |
7 | |
8 | const VIDEO_BLACKLIST_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEO_BLACKLIST | |
9 | ||
10 | function isVideoBlacklistReasonValid (value: string) { | |
11 | return value === null || validator.isLength(value, VIDEO_BLACKLIST_CONSTRAINTS_FIELDS.REASON) | |
12 | } | |
13 | ||
0f6acda1 | 14 | async function doesVideoBlacklistExist (videoId: number, res: Response) { |
26b7305a C |
15 | const videoBlacklist = await VideoBlacklistModel.loadByVideoId(videoId) |
16 | ||
17 | if (videoBlacklist === null) { | |
18 | res.status(404) | |
19 | .json({ error: 'Blacklisted video not found' }) | |
20 | .end() | |
21 | ||
22 | return false | |
23 | } | |
24 | ||
25 | res.locals.videoBlacklist = videoBlacklist | |
26 | return true | |
27 | } | |
28 | ||
7ccddd7b JM |
29 | function isVideoBlacklistTypeValid (value: any) { |
30 | return exists(value) && validator.isInt('' + value) && VideoBlacklistType[value] !== undefined | |
31 | } | |
32 | ||
26b7305a C |
33 | // --------------------------------------------------------------------------- |
34 | ||
35 | export { | |
36 | isVideoBlacklistReasonValid, | |
7ccddd7b | 37 | isVideoBlacklistTypeValid, |
0f6acda1 | 38 | doesVideoBlacklistExist |
26b7305a | 39 | } |