]>
Commit | Line | Data |
---|---|---|
74d63469 | 1 | import { Response } from 'express' |
74d63469 | 2 | import { VideoChangeOwnershipModel } from '../../models/video/video-change-ownership' |
453e83ea C |
3 | import { MVideoChangeOwnershipFull } from '@server/typings/models/video/video-change-ownership' |
4 | import { MUserId } from '@server/typings/models' | |
74d63469 | 5 | |
453e83ea C |
6 | export async function doesChangeVideoOwnershipExist (id: number, res: Response) { |
7 | const videoChangeOwnership = await VideoChangeOwnershipModel.load(id) | |
74d63469 GR |
8 | |
9 | if (!videoChangeOwnership) { | |
10 | res.status(404) | |
11 | .json({ error: 'Video change ownership not found' }) | |
12 | .end() | |
13 | ||
14 | return false | |
15 | } | |
16 | ||
17 | res.locals.videoChangeOwnership = videoChangeOwnership | |
18 | return true | |
19 | } | |
20 | ||
453e83ea | 21 | export function checkUserCanTerminateOwnershipChange (user: MUserId, videoChangeOwnership: MVideoChangeOwnershipFull, res: Response) { |
f41d6aac | 22 | if (videoChangeOwnership.NextOwner.userId === user.id) { |
74d63469 GR |
23 | return true |
24 | } | |
25 | ||
26 | res.status(403) | |
27 | .json({ error: 'Cannot terminate an ownership change of another user' }) | |
28 | .end() | |
29 | return false | |
30 | } |