X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fhelpers%2Fcustom-validators%2Fvideo-ownership.ts;h=ee3cebe10f26803f7cf553f955d53edf547e366c;hb=4024c44f9027a32809931de0692d40d001df721c;hp=aaa0c736b34c4e73e69270a6bbf40295061960ff;hpb=74d63469355bad731cdd32defdc85913df3cbd5c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/helpers/custom-validators/video-ownership.ts b/server/helpers/custom-validators/video-ownership.ts index aaa0c736b..ee3cebe10 100644 --- a/server/helpers/custom-validators/video-ownership.ts +++ b/server/helpers/custom-validators/video-ownership.ts @@ -1,13 +1,15 @@ import { Response } from 'express' -import * as validator from 'validator' import { VideoChangeOwnershipModel } from '../../models/video/video-change-ownership' -import { UserModel } from '../../models/account/user' +import { MVideoChangeOwnershipFull } from '@server/types/models/video/video-change-ownership' +import { MUserId } from '@server/types/models' +import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes' -export async function doesChangeVideoOwnershipExist (id: string, res: Response): Promise { - const videoChangeOwnership = await loadVideoChangeOwnership(id) +export async function doesChangeVideoOwnershipExist (idArg: number | string, res: Response) { + const id = parseInt(idArg + '', 10) + const videoChangeOwnership = await VideoChangeOwnershipModel.load(id) if (!videoChangeOwnership) { - res.status(404) + res.status(HttpStatusCode.NOT_FOUND_404) .json({ error: 'Video change ownership not found' }) .end() @@ -18,24 +20,12 @@ export async function doesChangeVideoOwnershipExist (id: string, res: Response): return true } -async function loadVideoChangeOwnership (id: string): Promise { - if (validator.isInt(id)) { - return VideoChangeOwnershipModel.load(parseInt(id, 10)) - } - - return undefined -} - -export function checkUserCanTerminateOwnershipChange ( - user: UserModel, - videoChangeOwnership: VideoChangeOwnershipModel, - res: Response -): boolean { - if (videoChangeOwnership.NextOwner.userId === user.Account.userId) { +export function checkUserCanTerminateOwnershipChange (user: MUserId, videoChangeOwnership: MVideoChangeOwnershipFull, res: Response) { + if (videoChangeOwnership.NextOwner.userId === user.id) { return true } - res.status(403) + res.status(HttpStatusCode.FORBIDDEN_403) .json({ error: 'Cannot terminate an ownership change of another user' }) .end() return false