]> git.immae.eu Git - github/Chocobozzz/PeerTube.git/blame - client/src/app/shared/shared-video-miniature/abstract-video-list.html
Refactor feed component
[github/Chocobozzz/PeerTube.git] / client / src / app / shared / shared-video-miniature / abstract-video-list.html
CommitLineData
3a0fb65c 1<div class="margin-content">
017c3dca 2 <div class="videos-header">
5bcbcbe3 3 <ng-template #videoListHeader></ng-template>
9b4b15f9 4
2d011d94 5 <div class="action-block">
5bcbcbe3 6 <my-feed *ngIf="syndicationItems" [syndicationItems]="syndicationItems"></my-feed>
205e4f56 7
afff310e
RK
8 <ng-container *ngFor="let action of actions">
9 <a *ngIf="action.routerLink" class="ml-2" [routerLink]="action.routerLink" routerLinkActive="active">
10 <ng-container *ngTemplateOutlet="actionContent; context:{ $implicit: action }"></ng-container>
11 </a>
7af5ded4
C
12
13 <a *ngIf="!action.routerLink && !action.href && action.click" class="ml-2" (click)="action.click($event)" (key.enter)="action.click($event)">
afff310e
RK
14 <ng-container *ngTemplateOutlet="actionContent; context:{ $implicit: action }"></ng-container>
15 </a>
7af5ded4
C
16
17 <a *ngIf="!action.routerLink && action.href && action.click" class="ml-2" (click)="action.click($event)" (key.enter)="action.click($event)" [href]="action.href">
afff310e
RK
18 <ng-container *ngTemplateOutlet="actionContent; context:{ $implicit: action }"></ng-container>
19 </a>
20
21 <ng-template #actionContent let-action>
22 <my-button *ngIf="!action.justIcon" [icon]="action.iconName" [label]="action.label"></my-button>
23 <my-button *ngIf="action.justIcon" [icon]="action.iconName" [ngbTooltip]="action.label"></my-button>
24 </ng-template>
25 </ng-container>
13adf228 26 </div>
017c3dca
C
27
28 <div class="moderation-block" *ngIf="displayModerationBlock">
ea7337cf 29 <div class="c-hand" ngbDropdown placement="bottom-right auto">
2b587cad
RK
30 <my-global-icon iconName="cog" ngbDropdownToggle></my-global-icon>
31
32 <div role="menu" class="dropdown-menu" ngbDropdownMenu>
33 <div class="dropdown-item">
34 <my-peertube-checkbox
35 (change)="toggleModerationDisplay()"
0aa52e17 36 inputName="display-unlisted-private" i18n-labelText labelText="Display all videos (private, unlisted or not yet published)"
2b587cad
RK
37 ></my-peertube-checkbox>
38 </div>
39 </div>
40 </div>
017c3dca 41 </div>
c30745f3 42 </div>
cf20596c 43
e6122097 44 <div class="no-results" i18n *ngIf="hasDoneFirstQuery && videos.length === 0">No results.</div>
c30745f3 45 <div
ad453580 46 myInfiniteScroller (nearOfBottom)="onNearOfBottom()" [autoInit]="true" [dataObservable]="onDataSubject.asObservable()"
4d5e572f 47 class="videos" [ngClass]="{ 'display-as-row': displayAsRow() }"
bddab65a 48 >
34c7f429 49 <ng-container *ngFor="let video of videos; trackBy: videoById;">
c9e3565d 50 <h2 class="date-title" *ngIf="getCurrentGroupedDateLabel(video)">
34c7f429 51 {{ getCurrentGroupedDateLabel(video) }}
c9e3565d 52 </h2>
34c7f429 53
cf78883c
C
54 <div class="video-wrapper">
55 <my-video-miniature
4d5e572f 56 [video]="video" [user]="userMiniature" [displayAsRow]="displayAsRow()"
cf78883c
C
57 [displayVideoActions]="displayVideoActions" [displayOptions]="displayOptions"
58 (videoBlocked)="removeVideoFromArray(video)" (videoRemoved)="removeVideoFromArray(video)"
59 >
60 </my-video-miniature>
61 </div>
34c7f429 62 </ng-container>
c30745f3 63 </div>
32294074 64</div>