From 9b293cd6a2ce9ed1e1ccd41adbf7f2dbe2da8231 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Wed, 8 Dec 2021 11:07:19 +0100 Subject: Update torrent metadata on video update --- server/controllers/api/videos/update.ts | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) (limited to 'server/controllers/api') diff --git a/server/controllers/api/videos/update.ts b/server/controllers/api/videos/update.ts index 3fcff3e86..6f14a6788 100644 --- a/server/controllers/api/videos/update.ts +++ b/server/controllers/api/videos/update.ts @@ -1,5 +1,6 @@ import express from 'express' import { Transaction } from 'sequelize/types' +import { updateTorrentMetadata } from '@server/helpers/webtorrent' import { changeVideoChannelShare } from '@server/lib/activitypub/share' import { buildVideoThumbnailsFromReq, setVideoTags } from '@server/lib/video' import { openapiOperationDoc } from '@server/middlewares/doc' @@ -149,9 +150,8 @@ async function updateVideo (req: express.Request, res: express.Response) { return videoInstanceUpdated }) - if (wasConfidentialVideo) { - Notifier.Instance.notifyOnNewVideoIfNeeded(videoInstanceUpdated) - } + if (videoInfoToUpdate.name) await updateTorrentsMetadata(videoInstanceUpdated) + if (wasConfidentialVideo) Notifier.Instance.notifyOnNewVideoIfNeeded(videoInstanceUpdated) Hooks.runAction('action:api.video.updated', { video: videoInstanceUpdated, body: req.body, req, res }) } catch (err) { @@ -199,3 +199,9 @@ function updateSchedule (videoInstance: MVideoFullLight, videoInfoToUpdate: Vide return ScheduleVideoUpdateModel.deleteByVideoId(videoInstance.id, transaction) } } + +async function updateTorrentsMetadata (video: MVideoFullLight) { + for (const file of video.getAllFiles()) { + await updateTorrentMetadata(video, file) + } +} -- cgit v1.2.3