1 <div class=
"video-miniature" [ngClass]=
"{ 'display-as-row': displayAsRow }" (mouseenter)=
"loadActions()">
2 <my-video-thumbnail [video]=
"video" [nsfw]=
"isVideoBlur"></my-video-thumbnail>
4 <div class=
"video-bottom">
5 <div class=
"video-miniature-information">
8 class=
"video-miniature-name"
9 [routerLink]=
"[ '/videos/watch', video.uuid ]" [attr.title]=
"video.name" [ngClass]=
"{ 'blur-filter': isVideoBlur }"
11 <ng-container *
ngIf=
"displayOptions.privacyLabel">
12 <span *
ngIf=
"isUnlistedVideo()" class=
"badge badge-warning" i18n
>Unlisted
</span>
13 <span *
ngIf=
"isPrivateVideo()" class=
"badge badge-danger" i18n
>Private
</span>
19 <span class=
"video-miniature-created-at-views">
20 <ng-container *
ngIf=
"displayOptions.date">{{ video.publishedAt | myFromNow }}
</ng-container>
21 <ng-container *
ngIf=
"displayOptions.date && displayOptions.views"> -
</ng-container>
22 <ng-container i18n *
ngIf=
"displayOptions.views">{{ video.views | myNumberFormatter }} views
</ng-container>
25 <a tabindex=
"-1" *
ngIf=
"displayOptions.by && displayOwnerAccount()" class=
"video-miniature-account" [routerLink]=
"[ '/accounts', video.byAccount ]">
28 <a tabindex=
"-1" *
ngIf=
"displayOptions.by && displayOwnerVideoChannel()" class=
"video-miniature-channel" [routerLink]=
"[ '/video-channels', video.byVideoChannel ]">
29 {{ video.byVideoChannel }}
32 <div class=
"video-info-privacy">
33 <ng-container *
ngIf=
"displayOptions.privacyText">{{ video.privacy.label }}
</ng-container>
34 <ng-container *
ngIf=
"displayOptions.privacyText && displayOptions.state && getStateLabel(video)"> -
</ng-container>
35 <ng-container *
ngIf=
"displayOptions.state">{{ getStateLabel(video) }}
</ng-container>
38 <div *
ngIf=
"displayOptions.blacklistInfo && video.blacklisted" class=
"video-info-blacklisted">
39 <span class=
"blacklisted-label" i18n
>Blacklisted
</span>
40 <span class=
"blacklisted-reason" *
ngIf=
"video.blacklistedReason">{{ video.blacklistedReason }}
</span>
43 <div i18n *
ngIf=
"displayOptions.nsfw && video.nsfw" class=
"video-info-nsfw">
48 <div class=
"video-actions">
49 <!-- FIXME: remove bottom placement when overflow is fixed in bootstrap dropdown -->
50 <my-video-actions-dropdown
51 *
ngIf=
"showActions" [video]=
"video" [displayOptions]=
"videoActionsDisplayOptions" placement=
"bottom-left bottom-right left"
52 (videoRemoved)=
"onVideoRemoved()" (videoBlacklisted)=
"onVideoBlacklisted()" (videoUnblacklisted)=
"onVideoUnblacklisted()"
53 ></my-video-actions-dropdown>