]>
Commit | Line | Data |
---|---|---|
d607fc24 | 1 | <h1> |
2a491182 F |
2 | <span> |
3 | <my-global-icon iconName="channel" aria-hidden="true"></my-global-icon> | |
4 | <ng-container i18n>My channels</ng-container> | |
5 | <span *ngIf="totalItems" class="pt-badge badge-secondary">{{ totalItems }}</span> | |
6 | </span> | |
7 | ||
8 | <div> | |
9 | <a routerLink="/my-library/video-channel-syncs" class="button-link"> | |
10 | <my-global-icon iconName="repeat" aria-hidden="true"></my-global-icon> | |
11 | <ng-container i18n>My synchronizations</ng-container> | |
12 | </a> | |
13 | </div> | |
d607fc24 | 14 | </h1> |
4f5d0459 | 15 | |
7dca45f9 MK |
16 | <my-channels-setup-message [hideLink]="true"></my-channels-setup-message> |
17 | ||
d607fc24 | 18 | <div class="video-channels-header d-flex justify-content-between"> |
2e46eb97 | 19 | <my-advanced-input-filter (search)="onSearch($event)"></my-advanced-input-filter> |
ed5bb517 | 20 | |
a37e9e74 | 21 | <a class="create-button" routerLink="/manage/create"> |
6ad971d5 | 22 | <my-global-icon iconName="add" aria-hidden="true"></my-global-icon> |
8c966daa | 23 | <ng-container i18n>Create video channel</ng-container> |
08c1efbe | 24 | </a> |
d607fc24 | 25 | </div> |
08c1efbe | 26 | |
1de87401 C |
27 | <div class="no-results" i18n *ngIf="totalItems === 0">No channel found.</div> |
28 | ||
08c1efbe | 29 | <div class="video-channels"> |
8165d00a | 30 | <div *ngFor="let videoChannel of videoChannels; let i = index" class="video-channel"> |
87fdea2f | 31 | <my-actor-avatar [actor]="videoChannel" actorType="channel" [internalHref]="[ '/c', videoChannel.nameWithHost ]" size="80"></my-actor-avatar> |
08c1efbe C |
32 | |
33 | <div class="video-channel-info"> | |
71887396 | 34 | <a [routerLink]="[ '/c', videoChannel.nameWithHost ]" class="video-channel-names" i18n-title title="Channel page"> |
08c1efbe | 35 | <div class="video-channel-display-name">{{ videoChannel.displayName }}</div> |
f5b0af50 | 36 | <div class="video-channel-name">{{ videoChannel.nameWithHost }}</div> |
08c1efbe C |
37 | </a> |
38 | ||
4beda9e1 C |
39 | <a |
40 | i18n class="video-channel-followers" | |
41 | [routerLink]="[ '/my-library', 'followers' ]" [queryParams]="{ search: 'channel:' + videoChannel.name }" | |
42 | > | |
f823637d | 43 | {videoChannel.followersCount, plural, =0 {No subscribers} =1 {1 subscriber} other {{{ videoChannel.followersCount }} subscribers}} |
4beda9e1 | 44 | </a> |
8165d00a | 45 | |
5b0ec7cd C |
46 | <div class="d-flex"> |
47 | <span i18n>{videoChannel.videosCount, plural, =0 {No videos} =1 {1 video} other {{{ videoChannel.videosCount }} videos}}</span> | |
48 | <span class="mx-1">ยท</span> | |
49 | <span i18n>{videoChannel.totalViews, plural, =0 {No views} =1 {1 view} other {{{ videoChannel.totalViews | myNumberFormatter }} views}}</span> | |
50 | </div> | |
c6f8ca4d | 51 | |
8a3183e5 | 52 | <div class="video-channel-buttons"> |
a37e9e74 | 53 | <my-edit-button label [routerLink]="[ '/manage/update', videoChannel.nameWithHost ]"></my-edit-button> |
30814423 | 54 | <my-delete-button label (click)="deleteVideoChannel(videoChannel)"></my-delete-button> |
8a3183e5 K |
55 | </div> |
56 | ||
439b6b7b C |
57 | <div *ngIf="!isInSmallView" class="w-100 d-flex justify-content-end chart-container"> |
58 | <div myDeferLoading> | |
59 | <ng-template> | |
60 | <p-chart | |
61 | *ngIf="chartOptions && videoChannelsChartData && videoChannelsChartData[i]" | |
62 | width="40vw" height="100px" | |
63 | type="line" [data]="videoChannelsChartData[i]" [options]="chartOptions" | |
64 | ></p-chart> | |
65 | </ng-template> | |
66 | </div> | |
8165d00a | 67 | </div> |
08c1efbe | 68 | </div> |
08c1efbe C |
69 | </div> |
70 | </div> |