From 4e553a41fdc67c4da186502522ac99a5ba230453 Mon Sep 17 00:00:00 2001 From: =?utf8?q?Andr=C3=A9s=20Maldonado?= Date: Tue, 11 Dec 2018 15:05:42 +0100 Subject: [PATCH] Import original publication date (web UI) Import original publication date when importing a video from YouTube in the web UI --- server/controllers/api/videos/import.ts | 3 ++- server/helpers/youtube-dl.ts | 7 ++++++- shared/models/videos/import/video-import.model.ts | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/server/controllers/api/videos/import.ts b/server/controllers/api/videos/import.ts index 7053d5253..626c81eca 100644 --- a/server/controllers/api/videos/import.ts +++ b/server/controllers/api/videos/import.ts @@ -172,7 +172,8 @@ function buildVideo (channelId: number, body: VideoImportCreate, importData: You support: body.support || null, privacy: body.privacy || VideoPrivacy.PRIVATE, duration: 0, // duration will be set by the import job - channelId: channelId + channelId: channelId, + originallyPublishedAt: importData.originallyPublishedAt } const video = new VideoModel(videoData) video.url = getVideoActivityPubUrl(video) diff --git a/server/helpers/youtube-dl.ts b/server/helpers/youtube-dl.ts index b74351b42..4d4b37ef9 100644 --- a/server/helpers/youtube-dl.ts +++ b/server/helpers/youtube-dl.ts @@ -16,6 +16,7 @@ export type YoutubeDLInfo = { nsfw?: boolean tags?: string[] thumbnailUrl?: string + originallyPublishedAt?: string } const processOptions = { @@ -173,6 +174,9 @@ function normalizeObject (obj: any) { } function buildVideoInfo (obj: any) { + + const date = obj.upload_date.slice(0,4)+","+obj.upload_date.slice(4,6)+","+obj.upload_date.slice(6,8) + return { name: titleTruncation(obj.title), description: descriptionTruncation(obj.description), @@ -180,7 +184,8 @@ function buildVideoInfo (obj: any) { licence: getLicence(obj.license), nsfw: isNSFW(obj), tags: getTags(obj.tags), - thumbnailUrl: obj.thumbnail || undefined + thumbnailUrl: obj.thumbnail || undefined, + originallyPublishedAt: new Date(date).toISOString() } } diff --git a/shared/models/videos/import/video-import.model.ts b/shared/models/videos/import/video-import.model.ts index e2a56617d..92856c70f 100644 --- a/shared/models/videos/import/video-import.model.ts +++ b/shared/models/videos/import/video-import.model.ts @@ -11,6 +11,7 @@ export interface VideoImport { createdAt: string updatedAt: string + originallyPublishedAt?: string state: VideoConstant error?: string -- 2.25.1