-<div i18n *ngIf="pagination.totalItems === 0">No results.</div>
+<div class="videos-header">
+ <h4 i18n>Videos <span class="badge badge-secondary">{{ pagination.totalItems }}</span></h4>
-<div
- myInfiniteScroller
- [pageHeight]="pageHeight"
- (nearOfTop)="onNearOfTop()" (nearOfBottom)="onNearOfBottom()" (pageChanged)="onPageChanged($event)"
- class="videos" #videosElement
->
- <div *ngFor="let videos of videoPages; let i = index" class="videos-page">
- <div class="video" *ngFor="let video of videos; let j = index">
- <div class="checkbox-container">
- <input [id]="'video-check-' + video.id" type="checkbox" [(ngModel)]="checkedVideos[video.id]" />
- <label [for]="'video-check-' + video.id"></label>
- </div>
-
- <my-video-thumbnail [video]="video"></my-video-thumbnail>
-
- <div class="video-info">
- <a class="video-info-name" [routerLink]="['/videos/watch', video.uuid]" [attr.title]="video.name">{{ video.name }}</a>
- <span i18n class="video-info-date-views">{{ video.createdAt | myFromNow }} - {{ video.views | myNumberFormatter }} views</span>
- <div class="video-info-private">{{ video.privacy.label }} - {{ getStateLabel(video) }}</div>
- </div>
-
- <!-- Display only once -->
- <div class="action-selection-mode" *ngIf="isInSelectionMode() === true && i === 0 && j === 0">
- <div class="action-selection-mode-child">
- <span i18n class="action-button action-button-cancel-selection" (click)="abortSelectionMode()">
- Cancel
- </span>
-
- <span i18n class="action-button action-button-delete-selection" (click)="deleteSelectedVideos()">
- <span class="icon icon-delete-white"></span>
- Delete
- </span>
- </div>
- </div>
-
- <div class="video-buttons" *ngIf="isInSelectionMode() === false">
- <my-delete-button (click)="deleteVideo(video)"></my-delete-button>
-
- <my-edit-button [routerLink]="[ '/videos', 'update', video.uuid ]"></my-edit-button>
- </div>
- </div>
- </div>
+ <input type="text" placeholder="Search your videos" i18n-placeholder [(ngModel)]="videosSearch" (ngModelChange)="onVideosSearchChanged()" />
+
+ <div class="fake-element"></div>
</div>
+
+<my-videos-selection
+ [pagination]="pagination"
+ [(selection)]="selection"
+ [(videosModel)]="videos"
+ [miniatureDisplayOptions]="miniatureDisplayOptions"
+ [titlePage]="titlePage"
+ [getVideosObservableFunction]="getVideosObservableFunction"
+ #videosSelection
+>
+ <ng-template ptTemplate="globalButtons">
+ <span class="action-button action-button-delete-selection" (click)="deleteSelectedVideos()">
+ <my-global-icon iconName="delete"></my-global-icon>
+ <ng-container i18n>Delete</ng-container>
+ </span>
+ </ng-template>
+
+ <ng-template ptTemplate="rowButtons" let-video>
+ <my-delete-button (click)="deleteVideo(video)"></my-delete-button>
+
+ <my-edit-button [routerLink]="[ '/videos', 'update', video.uuid ]"></my-edit-button>
+
+ <my-button i18n-label label="Change ownership"
+ className="action-button-change-ownership grey-button"
+ icon="im-with-her"
+ (click)="changeOwnership($event, video)"
+ ></my-button>
+ </ng-template>
+</my-videos-selection>
+
+
+<my-video-change-ownership #videoChangeOwnershipModal></my-video-change-ownership>