From 696d83fd1377486dd03cc1bd02a21d9b6ddd9fcd Mon Sep 17 00:00:00 2001 From: Chocobozzz Date: Fri, 22 May 2020 17:06:26 +0200 Subject: Block comments from muted accounts/servers Add better control for users of comments displayed on their videos: * Do not forward comments from muted remote accounts/servers (muted by the current server or by the video owner) * Do not list threads and hide replies (with their children) of accounts/servers muted by the video owner * Hide from RSS comments of muted accounts/servers by video owners Use case: * Try to limit spam propagation in the federation * Add ability for users to automatically hide comments on their videos from undesirable accounts/servers (the comment section belongs to videomakers, so they choose what's posted there) --- shared/extra-utils/videos/video-comments.ts | 7 +++++++ shared/extra-utils/videos/videos.ts | 9 ++++++++- 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'shared/extra-utils/videos') diff --git a/shared/extra-utils/videos/video-comments.ts b/shared/extra-utils/videos/video-comments.ts index 81c48412d..831e5e7d4 100644 --- a/shared/extra-utils/videos/video-comments.ts +++ b/shared/extra-utils/videos/video-comments.ts @@ -61,6 +61,12 @@ function addVideoCommentReply ( .expect(expectedStatus) } +async function findCommentId (url: string, videoId: number | string, text: string) { + const res = await getVideoCommentThreads(url, videoId, 0, 25, '-createdAt') + + return res.body.data.find(c => c.text === text).id as number +} + function deleteVideoComment ( url: string, token: string, @@ -85,5 +91,6 @@ export { getVideoThreadComments, addVideoCommentThread, addVideoCommentReply, + findCommentId, deleteVideoComment } diff --git a/shared/extra-utils/videos/videos.ts b/shared/extra-utils/videos/videos.ts index 0d36a38a2..99e591cb2 100644 --- a/shared/extra-utils/videos/videos.ts +++ b/shared/extra-utils/videos/videos.ts @@ -95,6 +95,12 @@ function getVideo (url: string, id: number | string, expectedStatus = 200) { .expect(expectedStatus) } +async function getVideoIdFromUUID (url: string, uuid: string) { + const res = await getVideo(url, uuid) + + return res.body.id +} + function getVideoFileMetadataUrl (url: string) { return request(url) .get('/') @@ -669,5 +675,6 @@ export { checkVideoFilesWereRemoved, getPlaylistVideos, uploadVideoAndGetId, - getLocalIdByUUID + getLocalIdByUUID, + getVideoIdFromUUID } -- cgit v1.2.3