thumbnailPath: string
thumbnailUrl: string
+ isLive: boolean
+
previewPath: string
previewUrl: string
this.state = hash.state
this.description = hash.description
+ this.isLive = hash.isLive
+
this.duration = hash.duration
this.durationLabel = durationToString(hash.duration)
this.name = hash.name
this.thumbnailPath = hash.thumbnailPath
- this.thumbnailUrl = hash.thumbnailUrl || (absoluteAPIUrl + hash.thumbnailPath)
+ this.thumbnailUrl = this.thumbnailPath
+ ? hash.thumbnailUrl || (absoluteAPIUrl + hash.thumbnailPath)
+ : null
this.previewPath = hash.previewPath
- this.previewUrl = hash.previewUrl || (absoluteAPIUrl + hash.previewPath)
+ this.previewUrl = this.previewPath
+ ? hash.previewUrl || (absoluteAPIUrl + hash.previewPath)
+ : null
this.embedPath = hash.embedPath
this.embedUrl = hash.embedUrl || (getAbsoluteEmbedUrl() + hash.embedPath)
return user && this.isLocal === true && (this.account.name === user.username || user.hasRight(UserRight.UPDATE_ANY_VIDEO))
}
+ isLiveInfoAvailableBy (user: AuthUser) {
+ return this.isLive &&
+ user && this.isLocal === true && (this.account.name === user.username || user.hasRight(UserRight.GET_ANY_LIVE))
+ }
+
canBeDuplicatedBy (user: AuthUser) {
return user && this.isLocal === false && user.hasRight(UserRight.MANAGE_VIDEOS_REDUNDANCIES)
}