diff options
Diffstat (limited to 'client/src/app/shared')
8 files changed, 20 insertions, 25 deletions
diff --git a/client/src/app/shared/shared-main/account/video-avatar-channel.component.scss b/client/src/app/shared/shared-main/account/video-avatar-channel.component.scss index ea7cb2cf7..4998e85fa 100644 --- a/client/src/app/shared/shared-main/account/video-avatar-channel.component.scss +++ b/client/src/app/shared/shared-main/account/video-avatar-channel.component.scss | |||
@@ -26,6 +26,7 @@ | |||
26 | top:50%; | 26 | top:50%; |
27 | left:50%; | 27 | left:50%; |
28 | transform: translate(-50%,-50%); | 28 | transform: translate(-50%,-50%); |
29 | border-radius: 5px; | ||
29 | 30 | ||
30 | &:not(.channel-avatar) { | 31 | &:not(.channel-avatar) { |
31 | border-radius: 50%; | 32 | border-radius: 50%; |
diff --git a/client/src/app/shared/shared-main/misc/simple-search-input.component.scss b/client/src/app/shared/shared-main/misc/simple-search-input.component.scss index 116ff7ea0..5ae48f81b 100644 --- a/client/src/app/shared/shared-main/misc/simple-search-input.component.scss +++ b/client/src/app/shared/shared-main/misc/simple-search-input.component.scss | |||
@@ -16,7 +16,7 @@ my-global-icon { | |||
16 | } | 16 | } |
17 | 17 | ||
18 | &[iconName=search] { | 18 | &[iconName=search] { |
19 | color: pvar(--mainColor); | 19 | color: pvar(--mainForegroundColor); |
20 | } | 20 | } |
21 | 21 | ||
22 | &[iconName=cross] { | 22 | &[iconName=cross] { |
diff --git a/client/src/app/shared/shared-main/video-channel/video-channel.model.ts b/client/src/app/shared/shared-main/video-channel/video-channel.model.ts index bd187a873..126e43cea 100644 --- a/client/src/app/shared/shared-main/video-channel/video-channel.model.ts +++ b/client/src/app/shared/shared-main/video-channel/video-channel.model.ts | |||
@@ -1,4 +1,5 @@ | |||
1 | import { VideoChannel as ServerVideoChannel, ViewsPerDate, Account, Avatar } from '@shared/models' | 1 | import { Account as ServerAccount, Avatar, VideoChannel as ServerVideoChannel, ViewsPerDate } from '@shared/models' |
2 | import { Account } from '../account/account.model' | ||
2 | import { Actor } from '../account/actor.model' | 3 | import { Actor } from '../account/actor.model' |
3 | 4 | ||
4 | export class VideoChannel extends Actor implements ServerVideoChannel { | 5 | export class VideoChannel extends Actor implements ServerVideoChannel { |
@@ -9,7 +10,7 @@ export class VideoChannel extends Actor implements ServerVideoChannel { | |||
9 | nameWithHost: string | 10 | nameWithHost: string |
10 | nameWithHostForced: string | 11 | nameWithHostForced: string |
11 | 12 | ||
12 | ownerAccount?: Account | 13 | ownerAccount?: ServerAccount |
13 | ownerBy?: string | 14 | ownerBy?: string |
14 | ownerAvatarUrl?: string | 15 | ownerAvatarUrl?: string |
15 | 16 | ||
@@ -46,7 +47,7 @@ export class VideoChannel extends Actor implements ServerVideoChannel { | |||
46 | if (hash.ownerAccount) { | 47 | if (hash.ownerAccount) { |
47 | this.ownerAccount = hash.ownerAccount | 48 | this.ownerAccount = hash.ownerAccount |
48 | this.ownerBy = Actor.CREATE_BY_STRING(hash.ownerAccount.name, hash.ownerAccount.host) | 49 | this.ownerBy = Actor.CREATE_BY_STRING(hash.ownerAccount.name, hash.ownerAccount.host) |
49 | this.ownerAvatarUrl = VideoChannel.GET_ACTOR_AVATAR_URL(this.ownerAccount) | 50 | this.ownerAvatarUrl = Account.GET_ACTOR_AVATAR_URL(this.ownerAccount) |
50 | } | 51 | } |
51 | } | 52 | } |
52 | 53 | ||
diff --git a/client/src/app/shared/shared-video-miniature/abstract-video-list.html b/client/src/app/shared/shared-video-miniature/abstract-video-list.html index 07f79cd6d..41d5906cf 100644 --- a/client/src/app/shared/shared-video-miniature/abstract-video-list.html +++ b/client/src/app/shared/shared-video-miniature/abstract-video-list.html | |||
@@ -52,8 +52,7 @@ | |||
52 | 52 | ||
53 | <div class="video-wrapper"> | 53 | <div class="video-wrapper"> |
54 | <my-video-miniature | 54 | <my-video-miniature |
55 | [fitWidth]="true" | 55 | [fitWidth]="true" [video]="video" [user]="userMiniature" |
56 | [video]="video" [user]="userMiniature" [ownerDisplayType]="ownerDisplayType" | ||
57 | [displayVideoActions]="displayVideoActions" [displayOptions]="displayOptions" | 56 | [displayVideoActions]="displayVideoActions" [displayOptions]="displayOptions" |
58 | (videoBlocked)="removeVideoFromArray(video)" (videoRemoved)="removeVideoFromArray(video)" | 57 | (videoBlocked)="removeVideoFromArray(video)" (videoRemoved)="removeVideoFromArray(video)" |
59 | > | 58 | > |
diff --git a/client/src/app/shared/shared-video-miniature/abstract-video-list.ts b/client/src/app/shared/shared-video-miniature/abstract-video-list.ts index f41648e1c..18615c37a 100644 --- a/client/src/app/shared/shared-video-miniature/abstract-video-list.ts +++ b/client/src/app/shared/shared-video-miniature/abstract-video-list.ts | |||
@@ -28,8 +28,8 @@ import { isLastMonth, isLastWeek, isThisMonth, isToday, isYesterday } from '@sha | |||
28 | import { ServerConfig, UserRight, VideoFilter, VideoSortField } from '@shared/models' | 28 | import { ServerConfig, UserRight, VideoFilter, VideoSortField } from '@shared/models' |
29 | import { NSFWPolicyType } from '@shared/models/videos/nsfw-policy.type' | 29 | import { NSFWPolicyType } from '@shared/models/videos/nsfw-policy.type' |
30 | import { Syndication, Video } from '../shared-main' | 30 | import { Syndication, Video } from '../shared-main' |
31 | import { MiniatureDisplayOptions, OwnerDisplayType } from './video-miniature.component' | ||
32 | import { GenericHeaderComponent, VideoListHeaderComponent } from './video-list-header.component' | 31 | import { GenericHeaderComponent, VideoListHeaderComponent } from './video-list-header.component' |
32 | import { MiniatureDisplayOptions } from './video-miniature.component' | ||
33 | 33 | ||
34 | enum GroupDate { | 34 | enum GroupDate { |
35 | UNKNOWN = 0, | 35 | UNKNOWN = 0, |
@@ -65,7 +65,6 @@ export abstract class AbstractVideoList implements OnInit, OnDestroy, AfterConte | |||
65 | loadOnInit = true | 65 | loadOnInit = true |
66 | loadUserVideoPreferences = false | 66 | loadUserVideoPreferences = false |
67 | 67 | ||
68 | ownerDisplayType: OwnerDisplayType = 'auto' | ||
69 | displayModerationBlock = false | 68 | displayModerationBlock = false |
70 | titleTooltip: string | 69 | titleTooltip: string |
71 | displayVideoActions = true | 70 | displayVideoActions = true |
diff --git a/client/src/app/shared/shared-video-miniature/video-miniature.component.ts b/client/src/app/shared/shared-video-miniature/video-miniature.component.ts index f08be9c25..987a65e40 100644 --- a/client/src/app/shared/shared-video-miniature/video-miniature.component.ts +++ b/client/src/app/shared/shared-video-miniature/video-miniature.component.ts | |||
@@ -16,7 +16,7 @@ import { Video } from '../shared-main' | |||
16 | import { VideoPlaylistService } from '../shared-video-playlist' | 16 | import { VideoPlaylistService } from '../shared-video-playlist' |
17 | import { VideoActionsDisplayType } from './video-actions-dropdown.component' | 17 | import { VideoActionsDisplayType } from './video-actions-dropdown.component' |
18 | 18 | ||
19 | export type OwnerDisplayType = 'account' | 'videoChannel' | 'auto' | 19 | export type OwnerDisplayType = 'account' | 'videoChannel' |
20 | export type MiniatureDisplayOptions = { | 20 | export type MiniatureDisplayOptions = { |
21 | date?: boolean | 21 | date?: boolean |
22 | views?: boolean | 22 | views?: boolean |
@@ -40,7 +40,6 @@ export class VideoMiniatureComponent implements OnInit { | |||
40 | @Input() user: User | 40 | @Input() user: User |
41 | @Input() video: Video | 41 | @Input() video: Video |
42 | 42 | ||
43 | @Input() ownerDisplayType: OwnerDisplayType = 'account' | ||
44 | @Input() displayOptions: MiniatureDisplayOptions = { | 43 | @Input() displayOptions: MiniatureDisplayOptions = { |
45 | date: true, | 44 | date: true, |
46 | views: true, | 45 | views: true, |
@@ -89,7 +88,7 @@ export class VideoMiniatureComponent implements OnInit { | |||
89 | videoHref: string | 88 | videoHref: string |
90 | videoTarget: string | 89 | videoTarget: string |
91 | 90 | ||
92 | private ownerDisplayTypeChosen: 'account' | 'videoChannel' | 91 | private ownerDisplayType: 'account' | 'videoChannel' |
93 | 92 | ||
94 | constructor ( | 93 | constructor ( |
95 | private screenService: ScreenService, | 94 | private screenService: ScreenService, |
@@ -140,11 +139,11 @@ export class VideoMiniatureComponent implements OnInit { | |||
140 | } | 139 | } |
141 | 140 | ||
142 | displayOwnerAccount () { | 141 | displayOwnerAccount () { |
143 | return this.ownerDisplayTypeChosen === 'account' | 142 | return this.ownerDisplayType === 'account' |
144 | } | 143 | } |
145 | 144 | ||
146 | displayOwnerVideoChannel () { | 145 | displayOwnerVideoChannel () { |
147 | return this.ownerDisplayTypeChosen === 'videoChannel' | 146 | return this.ownerDisplayType === 'videoChannel' |
148 | } | 147 | } |
149 | 148 | ||
150 | isUnlistedVideo () { | 149 | isUnlistedVideo () { |
@@ -245,21 +244,19 @@ export class VideoMiniatureComponent implements OnInit { | |||
245 | } | 244 | } |
246 | 245 | ||
247 | private setUpBy () { | 246 | private setUpBy () { |
248 | if (this.ownerDisplayType === 'account' || this.ownerDisplayType === 'videoChannel') { | 247 | const accountName = this.video.account.name |
249 | this.ownerDisplayTypeChosen = this.ownerDisplayType | ||
250 | return | ||
251 | } | ||
252 | 248 | ||
253 | // If the video channel name is an UUID (not really displayable, we changed this behaviour in v1.0.0-beta.12) | 249 | // If the video channel name is an UUID (not really displayable, we changed this behaviour in v1.0.0-beta.12) |
254 | // Or is just a suffix of the account (default created channel) | 250 | // Or has not been customized (default created channel display name) |
255 | // -> Use the account name | 251 | // -> Use the account name |
256 | if ( | 252 | if ( |
257 | this.video.channel.name === `${this.video.account.name}_channel` || | 253 | this.video.channel.displayName === `Default ${accountName} channel` || |
254 | this.video.channel.displayName === `Main ${accountName} channel` || | ||
258 | this.video.channel.name.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/) | 255 | this.video.channel.name.match(/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/) |
259 | ) { | 256 | ) { |
260 | this.ownerDisplayTypeChosen = 'account' | 257 | this.ownerDisplayType = 'account' |
261 | } else { | 258 | } else { |
262 | this.ownerDisplayTypeChosen = 'videoChannel' | 259 | this.ownerDisplayType = 'videoChannel' |
263 | } | 260 | } |
264 | } | 261 | } |
265 | 262 | ||
diff --git a/client/src/app/shared/shared-video-miniature/videos-selection.component.html b/client/src/app/shared/shared-video-miniature/videos-selection.component.html index 8caeaf092..dec9e99f3 100644 --- a/client/src/app/shared/shared-video-miniature/videos-selection.component.html +++ b/client/src/app/shared/shared-video-miniature/videos-selection.component.html | |||
@@ -9,8 +9,7 @@ | |||
9 | 9 | ||
10 | <my-video-miniature | 10 | <my-video-miniature |
11 | [video]="video" [displayAsRow]="true" [displayOptions]="miniatureDisplayOptions" | 11 | [video]="video" [displayAsRow]="true" [displayOptions]="miniatureDisplayOptions" |
12 | [displayVideoActions]="false" [ownerDisplayType]="ownerDisplayType" | 12 | [displayVideoActions]="false" [user]="user" |
13 | [user]="user" | ||
14 | ></my-video-miniature> | 13 | ></my-video-miniature> |
15 | 14 | ||
16 | <!-- Display only once --> | 15 | <!-- Display only once --> |
diff --git a/client/src/app/shared/shared-video-miniature/videos-selection.component.ts b/client/src/app/shared/shared-video-miniature/videos-selection.component.ts index ca1cf2264..f8c3800d7 100644 --- a/client/src/app/shared/shared-video-miniature/videos-selection.component.ts +++ b/client/src/app/shared/shared-video-miniature/videos-selection.component.ts | |||
@@ -17,7 +17,7 @@ import { AuthService, ComponentPagination, LocalStorageService, Notifier, Screen | |||
17 | import { ResultList, VideoSortField } from '@shared/models' | 17 | import { ResultList, VideoSortField } from '@shared/models' |
18 | import { PeerTubeTemplateDirective, Video } from '../shared-main' | 18 | import { PeerTubeTemplateDirective, Video } from '../shared-main' |
19 | import { AbstractVideoList } from './abstract-video-list' | 19 | import { AbstractVideoList } from './abstract-video-list' |
20 | import { MiniatureDisplayOptions, OwnerDisplayType } from './video-miniature.component' | 20 | import { MiniatureDisplayOptions } from './video-miniature.component' |
21 | 21 | ||
22 | export type SelectionType = { [ id: number ]: boolean } | 22 | export type SelectionType = { [ id: number ]: boolean } |
23 | 23 | ||
@@ -31,7 +31,6 @@ export class VideosSelectionComponent extends AbstractVideoList implements OnIni | |||
31 | @Input() pagination: ComponentPagination | 31 | @Input() pagination: ComponentPagination |
32 | @Input() titlePage: string | 32 | @Input() titlePage: string |
33 | @Input() miniatureDisplayOptions: MiniatureDisplayOptions | 33 | @Input() miniatureDisplayOptions: MiniatureDisplayOptions |
34 | @Input() ownerDisplayType: OwnerDisplayType | ||
35 | 34 | ||
36 | @Input() getVideosObservableFunction: (page: number, sort?: VideoSortField) => Observable<ResultList<Video>> | 35 | @Input() getVideosObservableFunction: (page: number, sort?: VideoSortField) => Observable<ResultList<Video>> |
37 | 36 | ||