]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blob - client/src/app/shared/video/video-thumbnail.component.ts
Add params to share modal
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / video / video-thumbnail.component.ts
1 import { Component, Input } from '@angular/core'
2 import { Video } from './video.model'
3 import { ScreenService } from '@app/shared/misc/screen.service'
4
5 @Component({
6 selector: 'my-video-thumbnail',
7 styleUrls: [ './video-thumbnail.component.scss' ],
8 templateUrl: './video-thumbnail.component.html'
9 })
10 export class VideoThumbnailComponent {
11 @Input() video: Video
12 @Input() nsfw = false
13 @Input() routerLink: any[]
14 @Input() queryParams: any[]
15
16 constructor (private screenService: ScreenService) {
17 }
18
19 getImageUrl () {
20 if (!this.video) return ''
21
22 if (this.screenService.isInMobileView()) {
23 return this.video.previewUrl
24 }
25
26 return this.video.thumbnailUrl
27 }
28
29 getProgressPercent () {
30 if (!this.video.userHistory) return 0
31
32 const currentTime = this.video.userHistory.currentTime
33
34 return (currentTime / this.video.duration) * 100
35 }
36
37 getVideoRouterLink () {
38 if (this.routerLink) return this.routerLink
39
40 return [ '/videos/watch', this.video.uuid ]
41 }
42 }