]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blobdiff - server/models/video/video-format-utils.ts
add response content for createVideoChannel endpoint in openapi spec
[github/Chocobozzz/PeerTube.git] / server / models / video / video-format-utils.ts
index 9dc3e772273916d38686f5644dcd35871a61e06b..bcba90093d39a50fe89ebab0d2645ac2eaa2075e 100644 (file)
@@ -14,11 +14,11 @@ import {
 } from '../../lib/activitypub/url'
 import {
   MStreamingPlaylistRedundanciesOpt,
+  MVideo,
   MVideoAP,
   MVideoFile,
   MVideoFormattable,
-  MVideoFormattableDetails,
-  MVideoWithHost
+  MVideoFormattableDetails
 } from '../../types/models'
 import { MVideoFileRedundanciesOpt } from '../../types/models/video/video-file'
 import { VideoModel } from './video'
@@ -188,9 +188,12 @@ function sortByResolutionDesc (fileA: MVideoFile, fileB: MVideoFile) {
 
 function videoFilesModelToFormattedJSON (
   video: MVideoFormattableDetails,
-  videoFiles: MVideoFileRedundanciesOpt[]
+  videoFiles: MVideoFileRedundanciesOpt[],
+  includeMagnet = true
 ): VideoFile[] {
-  const trackerUrls = video.getTrackerUrls()
+  const trackerUrls = includeMagnet
+    ? video.getTrackerUrls()
+    : []
 
   return [ ...videoFiles ]
     .filter(f => !f.isLive())
@@ -202,8 +205,9 @@ function videoFilesModelToFormattedJSON (
           label: videoFile.resolution + 'p'
         },
 
-        // FIXME: deprecated in 3.2
-        magnetUri: generateMagnetUri(video, videoFile, trackerUrls),
+        magnetUri: includeMagnet && videoFile.torrentFilename
+          ? generateMagnetUri(video, videoFile, trackerUrls)
+          : undefined,
 
         size: videoFile.size,
         fps: videoFile.fps,
@@ -221,7 +225,7 @@ function videoFilesModelToFormattedJSON (
 
 function addVideoFilesInAPAcc (
   acc: ActivityUrlObject[] | ActivityTagObject[],
-  video: MVideoWithHost,
+  video: MVideo,
   files: MVideoFile[]
 ) {
   const trackerUrls = video.getTrackerUrls()