2017-10-26 09:01:47 -04:00
|
|
|
import { VideoDetails } from './video-details.model'
|
2017-10-31 06:52:52 -04:00
|
|
|
import { VideoPrivacy } from '../../../../../shared/models/videos/video-privacy.enum'
|
2017-10-26 09:01:47 -04:00
|
|
|
|
2017-10-25 10:43:19 -04:00
|
|
|
export class VideoEdit {
|
|
|
|
category: number
|
|
|
|
licence: number
|
|
|
|
language: number
|
|
|
|
description: string
|
|
|
|
name: string
|
|
|
|
tags: string[]
|
|
|
|
nsfw: boolean
|
2018-01-03 04:12:36 -05:00
|
|
|
commentsEnabled: boolean
|
2017-10-25 10:43:19 -04:00
|
|
|
channel: number
|
2017-10-31 06:52:52 -04:00
|
|
|
privacy: VideoPrivacy
|
2018-02-20 10:13:05 -05:00
|
|
|
support: string
|
2018-02-16 10:35:32 -05:00
|
|
|
thumbnailfile?: any
|
|
|
|
previewfile?: any
|
|
|
|
thumbnailUrl: string
|
|
|
|
previewUrl: string
|
2017-10-25 10:43:19 -04:00
|
|
|
uuid?: string
|
|
|
|
id?: number
|
|
|
|
|
2017-12-08 02:39:15 -05:00
|
|
|
constructor (videoDetails?: VideoDetails) {
|
|
|
|
if (videoDetails) {
|
|
|
|
this.id = videoDetails.id
|
|
|
|
this.uuid = videoDetails.uuid
|
|
|
|
this.category = videoDetails.category
|
|
|
|
this.licence = videoDetails.licence
|
|
|
|
this.language = videoDetails.language
|
|
|
|
this.description = videoDetails.description
|
|
|
|
this.name = videoDetails.name
|
|
|
|
this.tags = videoDetails.tags
|
|
|
|
this.nsfw = videoDetails.nsfw
|
2018-01-03 04:12:36 -05:00
|
|
|
this.commentsEnabled = videoDetails.commentsEnabled
|
2017-12-08 02:39:15 -05:00
|
|
|
this.channel = videoDetails.channel.id
|
|
|
|
this.privacy = videoDetails.privacy
|
2018-02-20 10:13:05 -05:00
|
|
|
this.support = videoDetails.support
|
2018-02-16 10:35:32 -05:00
|
|
|
this.thumbnailUrl = videoDetails.thumbnailUrl
|
|
|
|
this.previewUrl = videoDetails.previewUrl
|
2017-12-08 02:39:15 -05:00
|
|
|
}
|
2017-10-26 09:01:47 -04:00
|
|
|
}
|
|
|
|
|
2017-10-25 10:43:19 -04:00
|
|
|
patch (values: Object) {
|
|
|
|
Object.keys(values).forEach((key) => {
|
|
|
|
this[key] = values[key]
|
|
|
|
})
|
|
|
|
}
|
|
|
|
|
|
|
|
toJSON () {
|
|
|
|
return {
|
|
|
|
category: this.category,
|
|
|
|
licence: this.licence,
|
|
|
|
language: this.language,
|
|
|
|
description: this.description,
|
2018-02-20 10:13:05 -05:00
|
|
|
support: this.support,
|
2017-10-25 10:43:19 -04:00
|
|
|
name: this.name,
|
|
|
|
tags: this.tags,
|
|
|
|
nsfw: this.nsfw,
|
2018-01-03 04:12:36 -05:00
|
|
|
commentsEnabled: this.commentsEnabled,
|
2017-12-20 08:29:55 -05:00
|
|
|
channelId: this.channel,
|
2017-10-31 06:52:52 -04:00
|
|
|
privacy: this.privacy
|
2017-10-25 10:43:19 -04:00
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|