]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/+my-library/+my-video-channels/my-video-channels.component.html
Bumped to version v5.2.1
[github/Chocobozzz/PeerTube.git] / client / src / app / +my-library / +my-video-channels / my-video-channels.component.html
CommitLineData
d607fc24 1<h1>
d681188b 2 <span class="text-nowrap me-2">
2a491182
F
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
d681188b 18<div class="video-channels-header d-flex justify-content-between gap-2">
2e46eb97 19 <my-advanced-input-filter (search)="onSearch($event)"></my-advanced-input-filter>
ed5bb517 20
d0fbc9fd 21 <a class="peertube-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
439f5dfc 29<div class="video-channels" myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [dataObservable]="onChannelDataSubject.asObservable()">
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>