From 72c7248b6fdcdb2175e726ff51b42e7555f2bd84 Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Tue, 24 Oct 2017 19:41:09 +0200 Subject: Add video channels --- server/models/video/video-interface.ts | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'server/models/video/video-interface.ts') diff --git a/server/models/video/video-interface.ts b/server/models/video/video-interface.ts index 86ce84dd9..4b5ae08c2 100644 --- a/server/models/video/video-interface.ts +++ b/server/models/video/video-interface.ts @@ -6,16 +6,21 @@ import { TagAttributes, TagInstance } from './tag-interface' import { VideoFileAttributes, VideoFileInstance } from './video-file-interface' // Don't use barrel, import just what we need -import { Video as FormattedVideo } from '../../../shared/models/videos/video.model' +import { + Video as FormattedVideo, + VideoDetails as FormattedDetailsVideo +} from '../../../shared/models/videos/video.model' import { RemoteVideoUpdateData } from '../../../shared/models/pods/remote-video/remote-video-update-request.model' import { RemoteVideoCreateData } from '../../../shared/models/pods/remote-video/remote-video-create-request.model' import { ResultList } from '../../../shared/models/result-list.model' +import { VideoChannelInstance } from './video-channel-interface' export namespace VideoMethods { export type GetThumbnailName = (this: VideoInstance) => string export type GetPreviewName = (this: VideoInstance) => string export type IsOwned = (this: VideoInstance) => boolean export type ToFormattedJSON = (this: VideoInstance) => FormattedVideo + export type ToFormattedDetailsJSON = (this: VideoInstance) => FormattedDetailsVideo export type GetOriginalFile = (this: VideoInstance) => VideoFileInstance export type GetTorrentFileName = (this: VideoInstance, videoFile: VideoFileInstance) => string @@ -52,8 +57,8 @@ export namespace VideoMethods { ) => Promise< ResultList > export type Load = (id: number) => Promise - export type LoadByUUID = (uuid: string) => Promise - export type LoadByHostAndUUID = (fromHost: string, uuid: string) => Promise + export type LoadByUUID = (uuid: string, t?: Sequelize.Transaction) => Promise + export type LoadByHostAndUUID = (fromHost: string, uuid: string, t?: Sequelize.Transaction) => Promise export type LoadAndPopulateAuthor = (id: number) => Promise export type LoadAndPopulateAuthorAndPodAndTags = (id: number) => Promise export type LoadByUUIDAndPopulateAuthorAndPodAndTags = (uuid: string) => Promise @@ -94,7 +99,9 @@ export interface VideoAttributes { dislikes?: number remote: boolean - Author?: AuthorInstance + channelId?: number + + VideoChannel?: VideoChannelInstance Tags?: TagInstance[] VideoFiles?: VideoFileInstance[] } @@ -121,6 +128,7 @@ export interface VideoInstance extends VideoClass, VideoAttributes, Sequelize.In removeTorrent: VideoMethods.RemoveTorrent toAddRemoteJSON: VideoMethods.ToAddRemoteJSON toFormattedJSON: VideoMethods.ToFormattedJSON + toFormattedDetailsJSON: VideoMethods.ToFormattedDetailsJSON toUpdateRemoteJSON: VideoMethods.ToUpdateRemoteJSON optimizeOriginalVideofile: VideoMethods.OptimizeOriginalVideofile transcodeOriginalVideofile: VideoMethods.TranscodeOriginalVideofile -- cgit v1.2.3