X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Badmin%2Fmoderation%2Finstance-blocklist%2Finstance-server-blocklist.component.ts;h=344e2d135d27d0259cf91b73779d4b22c72e22d1;hb=b8cf27c0f86d205a279d03b83e0e6728f46da67f;hp=5af6d8f76be8c8feb13b628724134ec1b95bab40;hpb=8e11a1b37cb1d226acfe494f8821e5eb6e874dd0;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.ts b/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.ts index 5af6d8f76..344e2d135 100644 --- a/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.ts +++ b/client/src/app/+admin/moderation/instance-blocklist/instance-server-blocklist.component.ts @@ -1,20 +1,24 @@ -import { Component, OnInit } from '@angular/core' +import { Component, OnInit, ViewChild } from '@angular/core' import { Notifier } from '@app/core' import { I18n } from '@ngx-translate/i18n-polyfill' import { RestPagination, RestTable } from '@app/shared' import { SortMeta } from 'primeng/api' import { BlocklistService } from '@app/shared/blocklist' import { ServerBlock } from '../../../../../../shared' +import { BatchDomainsModalComponent } from '@app/+admin/config/shared/batch-domains-modal.component' @Component({ selector: 'my-instance-server-blocklist', - styleUrls: [ './instance-server-blocklist.component.scss' ], + styleUrls: [ '../moderation.component.scss', './instance-server-blocklist.component.scss' ], templateUrl: './instance-server-blocklist.component.html' }) export class InstanceServerBlocklistComponent extends RestTable implements OnInit { + @ViewChild('batchDomainsModal') batchDomainsModal: BatchDomainsModalComponent + blockedServers: ServerBlock[] = [] totalRecords = 0 - rowsPerPage = 10 + rowsPerPageOptions = [ 20, 50, 100 ] + rowsPerPage = this.rowsPerPageOptions[0] sort: SortMeta = { field: 'createdAt', order: -1 } pagination: RestPagination = { count: this.rowsPerPage, start: 0 } @@ -47,8 +51,29 @@ export class InstanceServerBlocklistComponent extends RestTable implements OnIni ) } + addServersToBlock () { + this.batchDomainsModal.openModal() + } + + onDomainsToBlock (domains: string[]) { + domains.forEach(domain => { + this.blocklistService.blockServerByInstance(domain) + .subscribe( + () => { + this.notifier.success(this.i18n('Instance {{domain}} muted by your instance.', { domain })) + + this.loadData() + } + ) + }) + } + protected loadData () { - return this.blocklistService.getInstanceServerBlocklist(this.pagination, this.sort) + return this.blocklistService.getInstanceServerBlocklist({ + pagination: this.pagination, + sort: this.sort, + search: this.search + }) .subscribe( resultList => { this.blockedServers = resultList.data