X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;ds=sidebyside;f=client%2Fsrc%2Fapp%2Fshared%2Fshared-main%2Fvideo%2Fvideo.model.ts;h=b7720c8d21da3617869c159a391f2d1be60a5f6a;hb=ff4de38385049bf8f6e1d76d8511854fcfabc71c;hp=e7f739bfefaa5cfacb5f128864b26e6457fd0a68;hpb=a1eda903a497857017495f37a1fd3593ba7ab23c;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/shared/shared-main/video/video.model.ts b/client/src/app/shared/shared-main/video/video.model.ts index e7f739bfe..b7720c8d2 100644 --- a/client/src/app/shared/shared-main/video/video.model.ts +++ b/client/src/app/shared/shared-main/video/video.model.ts @@ -1,13 +1,12 @@ import { AuthUser } from '@app/core' import { User } from '@app/core/users/user.model' import { durationToString, getAbsoluteAPIUrl, getAbsoluteEmbedUrl } from '@app/helpers' -import { Account } from '@app/shared/shared-main/account/account.model' import { Actor } from '@app/shared/shared-main/account/actor.model' -import { VideoChannel } from '@app/shared/shared-main/video-channel/video-channel.model' +import { buildVideoWatchPath } from '@shared/core-utils' import { peertubeTranslate } from '@shared/core-utils/i18n' import { ActorImage, - ServerConfig, + HTMLServerConfig, UserRight, Video as VideoServerModel, VideoConstant, @@ -28,12 +27,18 @@ export class Video implements VideoServerModel { licence: VideoConstant language: VideoConstant privacy: VideoConstant + description: string + duration: number durationLabel: string + id: number uuid: string + shortUUID: string + isLocal: boolean + name: string serverHost: string thumbnailPath: string @@ -87,8 +92,12 @@ export class Video implements VideoServerModel { pluginData?: any - static buildClientUrl (videoUUID: string) { - return '/w/' + videoUUID + static buildWatchUrl (video: Partial>) { + return buildVideoWatchPath({ shortUUID: video.shortUUID || video.uuid }) + } + + static buildUpdateUrl (video: Pick) { + return '/videos/update/' + video.uuid } constructor (hash: VideoServerModel, translations = {}) { @@ -111,6 +120,7 @@ export class Video implements VideoServerModel { this.id = hash.id this.uuid = hash.uuid + this.shortUUID = hash.shortUUID this.isLocal = hash.isLocal this.name = hash.name @@ -163,7 +173,7 @@ export class Video implements VideoServerModel { this.pluginData = hash.pluginData } - isVideoNSFWForUser (user: User, serverConfig: ServerConfig) { + isVideoNSFWForUser (user: User, serverConfig: HTMLServerConfig) { // Video is not NSFW, skip if (this.nsfw === false) return false