-<div i18n *ngIf="pagination.totalItems === 0" class="no-result">
- No results found
-</div>
+<div myInfiniteScroller [autoInit]="true" (nearOfBottom)="onNearOfBottom()" class="search-result">
+ <div class="results-header">
+ <div class="first-line">
+ <div class="results-counter" *ngIf="pagination.totalItems">
+ <span i18n>{{ pagination.totalItems | myNumberFormatter }} results</span>
+ <span *ngIf="currentSearch" i18n>
+ for <span class="search-value">{{ currentSearch }}</span>
+ </span>
+ </div>
+
+ <div
+ class="results-filter-button" (click)="isSearchFilterCollapsed = !isSearchFilterCollapsed" role="button"
+ [attr.aria-expanded]="!isSearchFilterCollapsed" aria-controls="collapseBasic"
+ >
+ <span class="icon icon-filter"></span>
+ <ng-container i18n>Filters</ng-container>
+ </div>
+ </div>
-<div myInfiniteScroller [autoLoading]="true" (nearOfBottom)="onNearOfBottom()" class="search-result">
- <div i18n *ngIf="pagination.totalItems" class="results-counter">
- {{ pagination.totalItems | myNumberFormatter }} results for <span class="search-value">{{ currentSearch }}</span>
+ <div class="results-filter" [ngbCollapse]="isSearchFilterCollapsed">
+ <my-search-filters [advancedSearch]="advancedSearch" (filtered)="onFiltered()"></my-search-filters>
+ </div>
</div>
- <div *ngFor="let video of videos" class="entry video">
- <my-video-thumbnail [video]="video"></my-video-thumbnail>
+ <div i18n *ngIf="pagination.totalItems === 0 && results.length === 0" class="no-results">
+ No results found
+ </div>
+
+ <ng-container *ngFor="let result of results">
+ <div *ngIf="isVideoChannel(result)" class="entry video-channel">
+ <a [routerLink]="[ '/video-channels', result.nameWithHost ]">
+ <img [src]="result.avatarUrl" alt="Avatar" />
+ </a>
+
+ <div class="video-channel-info">
+ <a [routerLink]="[ '/video-channels', result.nameWithHost ]" class="video-channel-names">
+ <div class="video-channel-display-name">{{ result.displayName }}</div>
+ <div class="video-channel-name">{{ result.nameWithHost }}</div>
+ </a>
- <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.publishedAt | myFromNow }} - {{ video.views | myNumberFormatter }} views</span>
- <a class="video-info-account" [routerLink]="[ '/accounts', video.by ]">{{ video.by }}</a>
+ <div i18n class="video-channel-followers">{{ result.followersCount }} subscribers</div>
+ </div>
+
+ <my-subscribe-button *ngIf="isUserLoggedIn()" [videoChannel]="result"></my-subscribe-button>
</div>
- </div>
+
+ <div *ngIf="isVideo(result)" class="entry video">
+ <my-video-thumbnail [video]="result"></my-video-thumbnail>
+
+ <div class="video-info">
+ <a class="video-info-name" [routerLink]="['/videos/watch', result.uuid]" [attr.title]="result.name">{{ result.name }}</a>
+ <span i18n class="video-info-date-views">{{ result.publishedAt | myFromNow }} - {{ result.views | myNumberFormatter }} views</span>
+ <a class="video-info-account" [routerLink]="[ '/accounts', result.byAccount ]">{{ result.byAccount }}</a>
+ </div>
+ </div>
+ </ng-container>
+
</div>