]>
Commit | Line | Data |
---|---|---|
453e83ea C |
1 | import { Response } from 'express' |
2 | import { VideoAbuseModel } from '../../models/video/video-abuse' | |
68d19a0a | 3 | import { fetchVideo } from '../video' |
3e753302 | 4 | |
68d19a0a | 5 | async function doesVideoAbuseExist (abuseIdArg: number | string, videoUUID: string, res: Response) { |
d5d9b6d7 | 6 | const abuseId = parseInt(abuseIdArg + '', 10) |
68d19a0a RK |
7 | let videoAbuse = await VideoAbuseModel.loadByIdAndVideoId(abuseId, null, videoUUID) |
8 | ||
9 | if (!videoAbuse) { | |
0251197e | 10 | const userId = res.locals.oauth?.token.User.id |
68d19a0a RK |
11 | const video = await fetchVideo(videoUUID, 'all', userId) |
12 | ||
13 | if (video) videoAbuse = await VideoAbuseModel.loadByIdAndVideoId(abuseId, video.id) | |
14 | } | |
3e753302 | 15 | |
453e83ea | 16 | if (videoAbuse === null) { |
3e753302 | 17 | res.status(404) |
453e83ea | 18 | .json({ error: 'Video abuse not found' }) |
3e753302 C |
19 | .end() |
20 | ||
21 | return false | |
22 | } | |
23 | ||
453e83ea | 24 | res.locals.videoAbuse = videoAbuse |
3e753302 C |
25 | return true |
26 | } | |
453e83ea C |
27 | |
28 | // --------------------------------------------------------------------------- | |
29 | ||
30 | export { | |
31 | doesVideoAbuseExist | |
32 | } |