diff options
Diffstat (limited to 'server/helpers/custom-validators/videos.ts')
-rw-r--r-- | server/helpers/custom-validators/videos.ts | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/server/helpers/custom-validators/videos.ts b/server/helpers/custom-validators/videos.ts index edafba6e2..9875c68bd 100644 --- a/server/helpers/custom-validators/videos.ts +++ b/server/helpers/custom-validators/videos.ts | |||
@@ -18,6 +18,7 @@ import { exists, isArray, isFileValid } from './misc' | |||
18 | import { VideoChannelModel } from '../../models/video/video-channel' | 18 | import { VideoChannelModel } from '../../models/video/video-channel' |
19 | import { UserModel } from '../../models/account/user' | 19 | import { UserModel } from '../../models/account/user' |
20 | import * as magnetUtil from 'magnet-uri' | 20 | import * as magnetUtil from 'magnet-uri' |
21 | import { fetchVideo, VideoFetchType } from '../video' | ||
21 | 22 | ||
22 | const VIDEOS_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEOS | 23 | const VIDEOS_CONSTRAINTS_FIELDS = CONSTRAINTS_FIELDS.VIDEOS |
23 | 24 | ||
@@ -152,14 +153,8 @@ function checkUserCanManageVideo (user: UserModel, video: VideoModel, right: Use | |||
152 | return true | 153 | return true |
153 | } | 154 | } |
154 | 155 | ||
155 | async function isVideoExist (id: string, res: Response) { | 156 | async function isVideoExist (id: string, res: Response, fetchType: VideoFetchType = 'all') { |
156 | let video: VideoModel | null | 157 | const video = await fetchVideo(id, fetchType) |
157 | |||
158 | if (validator.isInt(id)) { | ||
159 | video = await VideoModel.loadAndPopulateAccountAndServerAndTags(+id) | ||
160 | } else { // UUID | ||
161 | video = await VideoModel.loadByUUIDAndPopulateAccountAndServerAndTags(id) | ||
162 | } | ||
163 | 158 | ||
164 | if (video === null) { | 159 | if (video === null) { |
165 | res.status(404) | 160 | res.status(404) |
@@ -169,7 +164,7 @@ async function isVideoExist (id: string, res: Response) { | |||
169 | return false | 164 | return false |
170 | } | 165 | } |
171 | 166 | ||
172 | res.locals.video = video | 167 | if (fetchType !== 'none') res.locals.video = video |
173 | return true | 168 | return true |
174 | } | 169 | } |
175 | 170 | ||