15e9ea898b
Replaces most mat-tables with tables using the NGrid library, supporting extremly performant virtual scrolling. The ListViewBaseComponent have been extremly simplified. All list-view code is now mich shorter and way less repitative The group list and the workflow list have not been altered. **Works:** - Fast virtual Scrolling without pagination - Click Filter - Search Filter - Sorting - Export filtered values (using click filters) - Export sorted values in correct order - Right-Click-new-tab - Hiding/showing columns by permission and screen size - Multi select - Auto Updates in MultiSelectMode keep the correct items selected - OsHeadBar shows the correct amount of data - Restore scroll position after navigation - Shared-Table Component - Clean-Up base-list-view - Motion List - Motion Block List - Motion Block Detail - User List - Agnnda List - Assignment List - MediaFile List - Tag List **TODO:** - Formulate filter predicates - LOS Badge autoupdate (change detection) - Better ellipses in lists - Horrizontal Scrolling, if the screen get's too small. - Issues in the change detection - Some Layouting **BUG:** - Using the seach filter prevents the sorting from working. - NGrid currently has no way to get the filtered list using search filter. Thus, search-filtered list cannot be exported.
20 lines
806 B
HTML
20 lines
806 B
HTML
<ng-container *osPerms="'agenda.can_see_list_of_speakers'">
|
|
<ng-container *ngIf="listOfSpeakers">
|
|
<a class="anchor-button" *ngIf="!menuItem" [routerLink]="listOfSpeakersUrl">
|
|
<button type="button" mat-icon-button [disabled]="disabled">
|
|
<mat-icon
|
|
[matBadge]="listOfSpeakers.waitingSpeakerAmount > 0 ? listOfSpeakers.waitingSpeakerAmount : null"
|
|
matBadgeColor="accent"
|
|
>
|
|
mic
|
|
</mat-icon>
|
|
</button>
|
|
</a>
|
|
|
|
<button type="button" *ngIf="menuItem" mat-menu-item [routerLink]="listOfSpeakers.listOfSpeakersUrl">
|
|
<mat-icon>mic</mat-icon>
|
|
<span translate>List of speakers</span>
|
|
</button>
|
|
</ng-container>
|
|
</ng-container>
|