aboutsummaryrefslogtreecommitdiffhomepage
path: root/client/src/app/+admin/moderation
diff options
context:
space:
mode:
Diffstat (limited to 'client/src/app/+admin/moderation')
-rw-r--r--client/src/app/+admin/moderation/video-block-list/video-block-list.component.html29
-rw-r--r--client/src/app/+admin/moderation/video-block-list/video-block-list.component.ts13
2 files changed, 10 insertions, 32 deletions
diff --git a/client/src/app/+admin/moderation/video-block-list/video-block-list.component.html b/client/src/app/+admin/moderation/video-block-list/video-block-list.component.html
index 7efa87dd0..3cd69cfbc 100644
--- a/client/src/app/+admin/moderation/video-block-list/video-block-list.component.html
+++ b/client/src/app/+admin/moderation/video-block-list/video-block-list.component.html
@@ -34,9 +34,7 @@
34 <tr> 34 <tr>
35 <td *ngIf="!videoBlock.reason"></td> 35 <td *ngIf="!videoBlock.reason"></td>
36 <td *ngIf="videoBlock.reason" class="expand-cell c-hand" [pRowToggler]="videoBlock" i18n-ngbTooltip ngbTooltip="More information" placement="top-left" container="body"> 36 <td *ngIf="videoBlock.reason" class="expand-cell c-hand" [pRowToggler]="videoBlock" i18n-ngbTooltip ngbTooltip="More information" placement="top-left" container="body">
37 <span class="expander"> 37 <my-table-expander-icon [expanded]="expanded"></my-table-expander-icon>
38 <i [ngClass]="expanded ? 'glyphicon glyphicon-menu-down' : 'glyphicon glyphicon-menu-right'"></i>
39 </span>
40 </td> 38 </td>
41 39
42 <td class="action-cell"> 40 <td class="action-cell">
@@ -47,22 +45,11 @@
47 </td> 45 </td>
48 46
49 <td> 47 <td>
50 <a [href]="getVideoUrl(videoBlock)" class="table-video-link" [title]="videoBlock.video.name" target="_blank" rel="noopener noreferrer"> 48 <my-video-cell [video]="videoBlock.video">
51 <div class="table-video"> 49 <span name>
52 <div class="table-video-image"> 50 <my-global-icon *ngIf="videoBlock.type === 2" i18n-title title="The video was blocked due to automatic blocking of new videos" iconName="robot"></my-global-icon>
53 <img [src]="videoBlock.video.thumbnailPath"> 51 </span>
54 </div> 52 </my-video-cell>
55
56 <div class="table-video-text">
57 <div>
58 <my-global-icon i18n-title title="The video was blocked due to automatic blocking of new videos" *ngIf="videoBlock.type === 2" iconName="robot"></my-global-icon>
59 {{ videoBlock.video.name }}
60 </div>
61
62 <div class="text-muted">by {{ videoBlock.video.channel?.displayName }} on {{ videoBlock.video.channel?.host }} </div>
63 </div>
64 </div>
65 </a>
66 </td> 53 </td>
67 54
68 <td> 55 <td>
@@ -90,9 +77,7 @@
90 </div> 77 </div>
91 78
92 <div class="right"> 79 <div class="right">
93 <div class="screenratio"> 80 <my-embed [video]="videoBlock.video"></my-embed>
94 <div [innerHTML]="videoBlock.embedHtml"></div>
95 </div>
96 </div> 81 </div>
97 82
98 </div> 83 </div>
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 7baf34ca2..1fe8d0f9d 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
@@ -3,11 +3,10 @@ import { switchMap } from 'rxjs/operators'
3import { buildVideoOrPlaylistEmbed } from 'src/assets/player/utils' 3import { buildVideoOrPlaylistEmbed } from 'src/assets/player/utils'
4import { environment } from 'src/environments/environment' 4import { environment } from 'src/environments/environment'
5import { Component, OnInit } from '@angular/core' 5import { Component, OnInit } from '@angular/core'
6import { DomSanitizer } from '@angular/platform-browser'
7import { ActivatedRoute, Router } from '@angular/router' 6import { ActivatedRoute, Router } from '@angular/router'
8import { ConfirmService, MarkdownService, Notifier, RestPagination, RestTable, ServerService } from '@app/core' 7import { ConfirmService, MarkdownService, Notifier, RestPagination, RestTable, ServerService } from '@app/core'
9import { AdvancedInputFilter } from '@app/shared/shared-forms' 8import { AdvancedInputFilter } from '@app/shared/shared-forms'
10import { DropdownAction, Video, VideoService } from '@app/shared/shared-main' 9import { DropdownAction, VideoService } from '@app/shared/shared-main'
11import { VideoBlockService } from '@app/shared/shared-moderation' 10import { VideoBlockService } from '@app/shared/shared-moderation'
12import { buildVideoEmbedLink, decorateVideoLink } from '@shared/core-utils' 11import { buildVideoEmbedLink, decorateVideoLink } from '@shared/core-utils'
13import { VideoBlacklist, VideoBlacklistType } from '@shared/models' 12import { VideoBlacklist, VideoBlacklistType } from '@shared/models'
@@ -18,7 +17,7 @@ import { VideoBlacklist, VideoBlacklistType } from '@shared/models'
18 styleUrls: [ '../../../shared/shared-moderation/moderation.scss', './video-block-list.component.scss' ] 17 styleUrls: [ '../../../shared/shared-moderation/moderation.scss', './video-block-list.component.scss' ]
19}) 18})
20export class VideoBlockListComponent extends RestTable implements OnInit { 19export class VideoBlockListComponent extends RestTable implements OnInit {
21 blocklist: (VideoBlacklist & { reasonHtml?: string, embedHtml?: string })[] = [] 20 blocklist: (VideoBlacklist & { reasonHtml?: string })[] = []
22 totalRecords = 0 21 totalRecords = 0
23 sort: SortMeta = { field: 'createdAt', order: -1 } 22 sort: SortMeta = { field: 'createdAt', order: -1 }
24 pagination: RestPagination = { count: this.rowsPerPage, start: 0 } 23 pagination: RestPagination = { count: this.rowsPerPage, start: 0 }
@@ -50,7 +49,6 @@ export class VideoBlockListComponent extends RestTable implements OnInit {
50 private confirmService: ConfirmService, 49 private confirmService: ConfirmService,
51 private videoBlocklistService: VideoBlockService, 50 private videoBlocklistService: VideoBlockService,
52 private markdownRenderer: MarkdownService, 51 private markdownRenderer: MarkdownService,
53 private sanitizer: DomSanitizer,
54 private videoService: VideoService 52 private videoService: VideoService
55 ) { 53 ) {
56 super() 54 super()
@@ -125,10 +123,6 @@ export class VideoBlockListComponent extends RestTable implements OnInit {
125 return 'VideoBlockListComponent' 123 return 'VideoBlockListComponent'
126 } 124 }
127 125
128 getVideoUrl (videoBlock: VideoBlacklist) {
129 return Video.buildWatchUrl(videoBlock.video)
130 }
131
132 toHtml (text: string) { 126 toHtml (text: string) {
133 return this.markdownRenderer.textMarkdownToHTML(text) 127 return this.markdownRenderer.textMarkdownToHTML(text)
134 } 128 }
@@ -176,8 +170,7 @@ export class VideoBlockListComponent extends RestTable implements OnInit {
176 170
177 for (const element of this.blocklist) { 171 for (const element of this.blocklist) {
178 Object.assign(element, { 172 Object.assign(element, {
179 reasonHtml: await this.toHtml(element.reason), 173 reasonHtml: await this.toHtml(element.reason)
180 embedHtml: this.sanitizer.bypassSecurityTrustHtml(this.getVideoEmbed(element))
181 }) 174 })
182 } 175 }
183 }, 176 },