e043674139
* Add `i18n` prop * Update video-comment-list.component.html * Update account-blocklist.component.html * Update server-blocklist.component.html * Update video-redundancies-list.component.html * Update following-list.component.html * Update followers-list.component.html
69 lines
2.6 KiB
HTML
69 lines
2.6 KiB
HTML
<h1>
|
|
<my-global-icon iconName="user-x" aria-hidden="true"></my-global-icon>
|
|
<ng-container i18n>Muted accounts</ng-container>
|
|
</h1>
|
|
|
|
<p-table
|
|
[value]="blockedAccounts" [lazy]="true" [paginator]="totalRecords > 0" [totalRecords]="totalRecords" [rows]="rowsPerPage" [rowsPerPageOptions]="rowsPerPageOptions"
|
|
[sortField]="sort.field" [sortOrder]="sort.order" (onLazyLoad)="loadLazy($event)" (onPage)="onPage($event)"
|
|
[showCurrentPageReport]="true" i18n-currentPageReportTemplate
|
|
currentPageReportTemplate="Showing {{'{first}'}} to {{'{last}'}} of {{'{totalRecords}'}} muted accounts"
|
|
>
|
|
<ng-template pTemplate="caption">
|
|
<div class="caption">
|
|
<div class="ml-auto has-feedback has-clear">
|
|
<input
|
|
type="text" name="table-filter" id="table-filter" i18n-placeholder placeholder="Filter..."
|
|
(keyup)="onSearch($event)"
|
|
>
|
|
<a class="glyphicon glyphicon-remove-sign form-control-feedback form-control-clear" (click)="resetSearch()"></a>
|
|
<span class="sr-only" i18n>Clear filters</span>
|
|
</div>
|
|
</div>
|
|
</ng-template>
|
|
|
|
<ng-template pTemplate="header">
|
|
<tr>
|
|
<th style="width: 150px;" i18n>Action</th> <!-- column for action buttons -->
|
|
<th style="width: calc(100% - 300px);" i18n>Account</th>
|
|
<th style="width: 150px;" i18n pSortableColumn="createdAt">Muted at <p-sortIcon field="createdAt"></p-sortIcon></th>
|
|
</tr>
|
|
</ng-template>
|
|
|
|
<ng-template pTemplate="body" let-accountBlock>
|
|
<tr>
|
|
<td class="action-cell">
|
|
<button class="unblock-button" (click)="unblockAccount(accountBlock)" i18n>Unmute</button>
|
|
</td>
|
|
<td>
|
|
<a [href]="accountBlock.blockedAccount.url" i18n-title title="Open account in a new tab" target="_blank" rel="noopener noreferrer">
|
|
<div class="chip two-lines">
|
|
<img
|
|
class="avatar"
|
|
[src]="accountBlock.blockedAccount.avatar?.path"
|
|
(error)="switchToDefaultAvatar($event)"
|
|
alt="Avatar"
|
|
>
|
|
<div>
|
|
{{ accountBlock.blockedAccount.displayName }}
|
|
<span class="text-muted">{{ accountBlock.blockedAccount.nameWithHost }}</span>
|
|
</div>
|
|
</div>
|
|
</a>
|
|
</td>
|
|
|
|
<td>{{ accountBlock.createdAt | date: 'short' }}</td>
|
|
</tr>
|
|
</ng-template>
|
|
|
|
<ng-template pTemplate="emptymessage">
|
|
<tr>
|
|
<td colspan="6">
|
|
<div class="no-results">
|
|
<ng-container *ngIf="search" i18n>No account found matching current filters.</ng-container>
|
|
<ng-container *ngIf="!search" i18n>No account found.</ng-container>
|
|
</div>
|
|
</td>
|
|
</tr>
|
|
</ng-template>
|
|
</p-table>
|