diff options
Diffstat (limited to 'server/controllers/api/videos')
-rw-r--r-- | server/controllers/api/videos/import.ts | 6 | ||||
-rw-r--r-- | server/controllers/api/videos/index.ts | 4 |
2 files changed, 7 insertions, 3 deletions
diff --git a/server/controllers/api/videos/import.ts b/server/controllers/api/videos/import.ts index adc2f9aa2..a058b37ef 100644 --- a/server/controllers/api/videos/import.ts +++ b/server/controllers/api/videos/import.ts | |||
@@ -28,6 +28,7 @@ import { | |||
28 | MChannelActorAccountDefault, | 28 | MChannelActorAccountDefault, |
29 | MThumbnail, | 29 | MThumbnail, |
30 | MUser, | 30 | MUser, |
31 | MVideoTag, | ||
31 | MVideoThumbnailAccountDefault, | 32 | MVideoThumbnailAccountDefault, |
32 | MVideoWithBlacklistLight | 33 | MVideoWithBlacklistLight |
33 | } from '@server/typings/models' | 34 | } from '@server/typings/models' |
@@ -244,7 +245,7 @@ function insertIntoDB (parameters: { | |||
244 | const sequelizeOptions = { transaction: t } | 245 | const sequelizeOptions = { transaction: t } |
245 | 246 | ||
246 | // Save video object in database | 247 | // Save video object in database |
247 | const videoCreated = await video.save(sequelizeOptions) as (MVideoThumbnailAccountDefault & MVideoWithBlacklistLight) | 248 | const videoCreated = await video.save(sequelizeOptions) as (MVideoThumbnailAccountDefault & MVideoWithBlacklistLight & MVideoTag) |
248 | videoCreated.VideoChannel = videoChannel | 249 | videoCreated.VideoChannel = videoChannel |
249 | 250 | ||
250 | if (thumbnailModel) await videoCreated.addAndSaveThumbnail(thumbnailModel, t) | 251 | if (thumbnailModel) await videoCreated.addAndSaveThumbnail(thumbnailModel, t) |
@@ -264,6 +265,9 @@ function insertIntoDB (parameters: { | |||
264 | const tagInstances = await TagModel.findOrCreateTags(tags, t) | 265 | const tagInstances = await TagModel.findOrCreateTags(tags, t) |
265 | 266 | ||
266 | await videoCreated.$set('Tags', tagInstances, sequelizeOptions) | 267 | await videoCreated.$set('Tags', tagInstances, sequelizeOptions) |
268 | videoCreated.Tags = tagInstances | ||
269 | } else { | ||
270 | videoCreated.Tags = [] | ||
267 | } | 271 | } |
268 | 272 | ||
269 | // Create video import object in database | 273 | // Create video import object in database |
diff --git a/server/controllers/api/videos/index.ts b/server/controllers/api/videos/index.ts index 9af71d276..b4f656575 100644 --- a/server/controllers/api/videos/index.ts +++ b/server/controllers/api/videos/index.ts | |||
@@ -63,7 +63,7 @@ import { createVideoMiniatureFromExisting, generateVideoMiniature } from '../../ | |||
63 | import { ThumbnailType } from '../../../../shared/models/videos/thumbnail.type' | 63 | import { ThumbnailType } from '../../../../shared/models/videos/thumbnail.type' |
64 | import { VideoTranscodingPayload } from '../../../lib/job-queue/handlers/video-transcoding' | 64 | import { VideoTranscodingPayload } from '../../../lib/job-queue/handlers/video-transcoding' |
65 | import { Hooks } from '../../../lib/plugins/hooks' | 65 | import { Hooks } from '../../../lib/plugins/hooks' |
66 | import { MVideoFullLight } from '@server/typings/models' | 66 | import { MVideoDetails, MVideoFullLight } from '@server/typings/models' |
67 | 67 | ||
68 | const auditLogger = auditLoggerFactory('videos') | 68 | const auditLogger = auditLoggerFactory('videos') |
69 | const videosRouter = express.Router() | 69 | const videosRouter = express.Router() |
@@ -198,7 +198,7 @@ async function addVideo (req: express.Request, res: express.Response) { | |||
198 | originallyPublishedAt: videoInfo.originallyPublishedAt | 198 | originallyPublishedAt: videoInfo.originallyPublishedAt |
199 | } | 199 | } |
200 | 200 | ||
201 | const video = new VideoModel(videoData) | 201 | const video = new VideoModel(videoData) as MVideoDetails |
202 | video.url = getVideoActivityPubUrl(video) // We use the UUID, so set the URL after building the object | 202 | video.url = getVideoActivityPubUrl(video) // We use the UUID, so set the URL after building the object |
203 | 203 | ||
204 | const videoFile = new VideoFileModel({ | 204 | const videoFile = new VideoFileModel({ |