X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=client%2Fsrc%2Fapp%2F%2Badmin%2Fmoderation%2Fvideo-block-list%2Fvideo-block-list.component.ts;h=dfd8dc745e3a76351d975fce90748cc1bde518ec;hb=1fd61899eaea245a5844e33e21f04b2562f16e5e;hp=2b1ef663c88095b84033ff4b80062f13efbaeb63;hpb=66357162f8e1227495f09bd4f68446aad7071c6d;p=github%2FChocobozzz%2FPeerTube.git diff --git a/client/src/app/+admin/moderation/video-block-list/video-block-list.component.ts b/client/src/app/+admin/moderation/video-block-list/video-block-list.component.ts index 2b1ef663c..dfd8dc745 100644 --- a/client/src/app/+admin/moderation/video-block-list/video-block-list.component.ts +++ b/client/src/app/+admin/moderation/video-block-list/video-block-list.component.ts @@ -1,11 +1,12 @@ import { SortMeta } from 'primeng/api' -import { filter, switchMap } from 'rxjs/operators' +import { switchMap } from 'rxjs/operators' import { buildVideoLink, buildVideoOrPlaylistEmbed } from 'src/assets/player/utils' import { environment } from 'src/environments/environment' import { AfterViewInit, Component, OnInit } from '@angular/core' import { DomSanitizer } from '@angular/platform-browser' import { ActivatedRoute, Params, Router } from '@angular/router' import { ConfirmService, MarkdownService, Notifier, RestPagination, RestTable, ServerService } from '@app/core' +import { AdvancedInputFilter } from '@app/shared/shared-forms' import { DropdownAction, Video, VideoService } from '@app/shared/shared-main' import { VideoBlockService } from '@app/shared/shared-moderation' import { VideoBlacklist, VideoBlacklistType } from '@shared/models' @@ -24,17 +25,28 @@ export class VideoBlockListComponent extends RestTable implements OnInit, AfterV videoBlocklistActions: DropdownAction[][] = [] + inputFilters: AdvancedInputFilter[] = [ + { + queryParams: { 'search': 'type:auto' }, + label: $localize`Automatic blocks` + }, + { + queryParams: { 'search': 'type:manual' }, + label: $localize`Manual blocks` + } + ] + constructor ( + protected route: ActivatedRoute, + protected router: Router, private notifier: Notifier, private serverService: ServerService, private confirmService: ConfirmService, private videoBlocklistService: VideoBlockService, private markdownRenderer: MarkdownService, private sanitizer: DomSanitizer, - private videoService: VideoService, - private route: ActivatedRoute, - private router: Router - ) { + private videoService: VideoService + ) { super() this.videoBlocklistActions = [ @@ -104,38 +116,12 @@ export class VideoBlockListComponent extends RestTable implements OnInit, AfterV }) this.initialize() - - this.route.queryParams - .pipe(filter(params => params.search !== undefined && params.search !== null)) - .subscribe(params => { - this.search = params.search - this.setTableFilter(params.search) - this.loadData() - }) + this.listenToSearchChange() } ngAfterViewInit () { - if (this.search) this.setTableFilter(this.search) - } - - /* Table filter functions */ - onBlockSearch (event: Event) { - this.onSearch(event) - this.setQueryParams((event.target as HTMLInputElement).value) - } - - setQueryParams (search: string) { - const queryParams: Params = {} - if (search) Object.assign(queryParams, { search }) - this.router.navigate([ '/admin/moderation/video-blocks/list' ], { queryParams }) - } - - resetTableFilter () { - this.setTableFilter('') - this.setQueryParams('') - this.resetSearch() + if (this.search) this.setTableFilter(this.search, false) } - /* END Table filter functions */ getIdentifier () { return 'VideoBlockListComponent' @@ -145,12 +131,6 @@ export class VideoBlockListComponent extends RestTable implements OnInit, AfterV return Video.buildClientUrl(videoBlock.video.uuid) } - booleanToText (value: boolean) { - if (value === true) return $localize`yes` - - return $localize`no` - } - toHtml (text: string) { return this.markdownRenderer.textMarkdownToHTML(text) } @@ -174,10 +154,11 @@ export class VideoBlockListComponent extends RestTable implements OnInit, AfterV getVideoEmbed (entry: VideoBlacklist) { return buildVideoOrPlaylistEmbed( buildVideoLink({ - baseUrl: `${environment.embedUrl}/videos/embed/${entry.video.uuid}`, + baseUrl: `${environment.originServerUrl}/videos/embed/${entry.video.uuid}`, title: false, warningTitle: false - }) + }), + entry.video.name ) }