X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=server%2Fcontrollers%2Fapi%2Fvideos%2Fblacklist.ts;h=2a667480d468397438ec5e48d4f074ecafe13471;hb=a3b7421abb4192e215aa280418b62e96958c5e42;hp=0ec518e0d629505908e06572483ce6ccd299cda1;hpb=a8b666e9f1ed002230869606308749614390c82f;p=github%2FChocobozzz%2FPeerTube.git diff --git a/server/controllers/api/videos/blacklist.ts b/server/controllers/api/videos/blacklist.ts index 0ec518e0d..2a667480d 100644 --- a/server/controllers/api/videos/blacklist.ts +++ b/server/controllers/api/videos/blacklist.ts @@ -1,5 +1,5 @@ import * as express from 'express' -import { VideoBlacklist, UserRight, VideoBlacklistCreate, VideoBlacklistType } from '../../../../shared' +import { UserRight, VideoBlacklistCreate, VideoBlacklistType } from '../../../../shared' import { logger } from '../../../helpers/logger' import { getFormattedObjects } from '../../../helpers/utils' import { @@ -11,15 +11,16 @@ import { setBlacklistSort, setDefaultPagination, videosBlacklistAddValidator, + videosBlacklistFiltersValidator, videosBlacklistRemoveValidator, - videosBlacklistUpdateValidator, - videosBlacklistFiltersValidator + videosBlacklistUpdateValidator } from '../../../middlewares' import { VideoBlacklistModel } from '../../../models/video/video-blacklist' import { sequelizeTypescript } from '../../../initializers' import { Notifier } from '../../../lib/notifier' import { sendDeleteVideo } from '../../../lib/activitypub/send' import { federateVideoIfNeeded } from '../../../lib/activitypub' +import { MVideoBlacklistVideo } from '@server/typings/models' const blacklistRouter = express.Router() @@ -64,7 +65,7 @@ export { // --------------------------------------------------------------------------- async function addVideoToBlacklist (req: express.Request, res: express.Response) { - const videoInstance = res.locals.video + const videoInstance = res.locals.videoAll const body: VideoBlacklistCreate = req.body const toCreate = { @@ -74,7 +75,7 @@ async function addVideoToBlacklist (req: express.Request, res: express.Response) type: VideoBlacklistType.MANUAL } - const blacklist = await VideoBlacklistModel.create(toCreate) + const blacklist: MVideoBlacklistVideo = await VideoBlacklistModel.create(toCreate) blacklist.Video = videoInstance if (body.unfederate === true) { @@ -83,7 +84,7 @@ async function addVideoToBlacklist (req: express.Request, res: express.Response) Notifier.Instance.notifyOnVideoBlacklist(blacklist) - logger.info('Video %s blacklisted.', res.locals.video.uuid) + logger.info('Video %s blacklisted.', videoInstance.uuid) return res.type('json').status(204).end() } @@ -108,13 +109,14 @@ async function listBlacklist (req: express.Request, res: express.Response) { async function removeVideoFromBlacklistController (req: express.Request, res: express.Response) { const videoBlacklist = res.locals.videoBlacklist - const video = res.locals.video + const video = res.locals.videoAll const videoBlacklistType = await sequelizeTypescript.transaction(async t => { const unfederated = videoBlacklist.unfederated const videoBlacklistType = videoBlacklist.type await videoBlacklist.destroy({ transaction: t }) + video.VideoBlacklist = undefined // Re federate the video if (unfederated === true) { @@ -131,10 +133,10 @@ async function removeVideoFromBlacklistController (req: express.Request, res: ex // Delete on object so new video notifications will send delete video.VideoBlacklist - Notifier.Instance.notifyOnNewVideo(video) + Notifier.Instance.notifyOnNewVideoIfNeeded(video) } - logger.info('Video %s removed from blacklist.', res.locals.video.uuid) + logger.info('Video %s removed from blacklist.', video.uuid) return res.type('json').status(204).end() }