<my-video-thumbnail
[video]="video" [nsfw]="isVideoBlur"
[displayWatchLaterPlaylist]="isWatchLaterPlaylistDisplayed()" [inWatchLaterPlaylist]="inWatchLaterPlaylist" (watchLaterClick)="onWatchLaterClick($event)"
- ></my-video-thumbnail>
+ >
+ <ng-container ngProjectAs="label-warning" *ngIf="displayOptions.privacyLabel && isUnlistedVideo()" i18n>Unlisted</ng-container>
+ <ng-container ngProjectAs="label-danger" *ngIf="displayOptions.privacyLabel && isPrivateVideo()" i18n>Private</ng-container>
+ </my-video-thumbnail>
<div class="video-bottom">
<div class="video-miniature-information">
<ng-container *ngIf="displayOptions.date && displayOptions.views"> • </ng-container>
<ng-container i18n *ngIf="displayOptions.views">{video.views, plural, =1 {1 view} other {{{ video.views | myNumberFormatter }} views}}</ng-container>
</span>
-
- <ng-container *ngIf="displayOptions.privacyLabel">
- <span *ngIf="isUnlistedVideo()" class="badge badge-warning ml-1" i18n>Unlisted</span>
- <span *ngIf="isPrivateVideo()" class="badge badge-danger ml-1" i18n>Private</span>
- </ng-container>
</span>
<a tabindex="-1" *ngIf="displayOptions.by && displayOwnerAccount()" class="video-miniature-account" [routerLink]="[ '/accounts', video.byAccount ]">
</ng-container>
</div>
+ <div class="video-thumbnail-label-overlay warning"><ng-content select="label-warning"></ng-content></div>
+ <div class="video-thumbnail-label-overlay danger"><ng-content select="label-danger"></ng-content></div>
+
<div class="video-thumbnail-duration-overlay">{{ video.durationLabel }}</div>
<div class="play-overlay">
}
.video-thumbnail-watch-later-overlay,
+ .video-thumbnail-label-overlay,
.video-thumbnail-duration-overlay {
@include static-thumbnail-overlay;
z-index: z(miniature);
}
+ .video-thumbnail-label-overlay {
+ position: absolute;
+ padding: 0 5px;
+ left: 5px;
+ top: 5px;
+
+ &.warning { background-color: orange; }
+ &.danger { background-color: red; }
+ }
+
.video-thumbnail-duration-overlay {
position: absolute;
padding: 0 5px;