aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/shared
diff options
context:
space:
mode:
authorkontrollanten <6680299+kontrollanten@users.noreply.github.com>2022-03-08 13:39:27 +0100
committerGitHub <noreply@github.com>2022-03-08 13:39:27 +0100
commit2c102aac13ec537ff72ec09a50d3197ed3bc8185 (patch)
tree8224e2713866c17e54c927dc26f1a62a3353bc2e /client/src/app/shared
parentfc10ecf167bd07f32426441e74b49370d5ff919b (diff)
downloadPeerTube-2c102aac13ec537ff72ec09a50d3197ed3bc8185.tar.gz
PeerTube-2c102aac13ec537ff72ec09a50d3197ed3bc8185.tar.zst
PeerTube-2c102aac13ec537ff72ec09a50d3197ed3bc8185.zip
Display avatar in video miniatures (#4823)
* show avatar in video miniatures closes #4040 * fix: videos for api, include avatars * add config for display video miniature avatar * Revert "fix: videos for api, include avatars" This reverts commit 5520a3eda6805338317a394d0553f2f82095a425. * video-min: set display avatar to false as default * remove empty line * rename display_avatar > display_author_avatar * fix renaming displayAvatar > displayAuthorAvatar
Diffstat (limited to 'client/src/app/shared')
-rw-r--r--client/src/app/shared/shared-video-miniature/videos-list.component.ts43
1 files changed, 31 insertions, 12 deletions
diff --git a/client/src/app/shared/shared-video-miniature/videos-list.component.ts b/client/src/app/shared/shared-video-miniature/videos-list.component.ts
index 9a7ec7efa..38a80b973 100644
--- a/client/src/app/shared/shared-video-miniature/videos-list.component.ts
+++ b/client/src/app/shared/shared-video-miniature/videos-list.component.ts
@@ -3,7 +3,16 @@ import { fromEvent, Observable, Subject, Subscription } from 'rxjs'
3import { debounceTime, switchMap } from 'rxjs/operators' 3import { debounceTime, switchMap } from 'rxjs/operators'
4import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core' 4import { Component, EventEmitter, Input, OnChanges, OnDestroy, OnInit, Output, SimpleChanges } from '@angular/core'
5import { ActivatedRoute } from '@angular/router' 5import { ActivatedRoute } from '@angular/router'
6import { AuthService, ComponentPaginationLight, Notifier, PeerTubeRouterService, ScreenService, User, UserService } from '@app/core' 6import {
7 AuthService,
8 ComponentPaginationLight,
9 Notifier,
10 PeerTubeRouterService,
11 ScreenService,
12 ServerService,
13 User,
14 UserService
15} from '@app/core'
7import { GlobalIconName } from '@app/shared/shared-icons' 16import { GlobalIconName } from '@app/shared/shared-icons'
8import { isLastMonth, isLastWeek, isThisMonth, isToday, isYesterday } from '@shared/core-utils' 17import { isLastMonth, isLastWeek, isThisMonth, isToday, isYesterday } from '@shared/core-utils'
9import { ResultList, UserRight, VideoSortField } from '@shared/models' 18import { ResultList, UserRight, VideoSortField } from '@shared/models'
@@ -61,16 +70,7 @@ export class VideosListComponent implements OnInit, OnChanges, OnDestroy {
61 70
62 @Input() hideScopeFilter = false 71 @Input() hideScopeFilter = false
63 72
64 @Input() displayOptions: MiniatureDisplayOptions = { 73 @Input() displayOptions: MiniatureDisplayOptions
65 date: true,
66 views: true,
67 by: true,
68 avatar: false,
69 privacyLabel: true,
70 privacyText: false,
71 state: false,
72 blacklistInfo: false
73 }
74 74
75 @Input() disabled = false 75 @Input() disabled = false
76 76
@@ -85,6 +85,16 @@ export class VideosListComponent implements OnInit, OnChanges, OnDestroy {
85 85
86 userMiniature: User 86 userMiniature: User
87 87
88 private defaultDisplayOptions: MiniatureDisplayOptions = {
89 date: true,
90 views: true,
91 by: true,
92 avatar: false,
93 privacyLabel: true,
94 privacyText: false,
95 state: false,
96 blacklistInfo: false
97 }
88 private routeSub: Subscription 98 private routeSub: Subscription
89 private userSub: Subscription 99 private userSub: Subscription
90 private resizeSub: Subscription 100 private resizeSub: Subscription
@@ -105,7 +115,8 @@ export class VideosListComponent implements OnInit, OnChanges, OnDestroy {
105 private userService: UserService, 115 private userService: UserService,
106 private route: ActivatedRoute, 116 private route: ActivatedRoute,
107 private screenService: ScreenService, 117 private screenService: ScreenService,
108 private peertubeRouter: PeerTubeRouterService 118 private peertubeRouter: PeerTubeRouterService,
119 private serverService: ServerService
109 ) { 120 ) {
110 121
111 } 122 }
@@ -161,6 +172,14 @@ export class VideosListComponent implements OnInit, OnChanges, OnDestroy {
161 } 172 }
162 173
163 ngOnChanges (changes: SimpleChanges) { 174 ngOnChanges (changes: SimpleChanges) {
175 if (changes['displayOptions'] || !this.displayOptions) {
176 this.displayOptions = {
177 ...this.defaultDisplayOptions,
178 avatar: this.serverService.getHTMLConfig().client.videos.miniature.displayAuthorAvatar,
179 ...changes['displayOptions']
180 }
181 }
182
164 if (!this.filters) return 183 if (!this.filters) return
165 184
166 let updated = false 185 let updated = false