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)
This commit is contained in:
Chocobozzz 2020-05-22 17:06:26 +02:00 committed by Chocobozzz
parent 72c33e716f
commit 696d83fd13
14 changed files with 353 additions and 105 deletions

View file

@ -136,10 +136,7 @@ function createSimilarityAttribute (col: string, value: string) {
)
}
function buildBlockedAccountSQL (serverAccountId: number, userAccountId?: number) {
const blockerIds = [ serverAccountId ]
if (userAccountId) blockerIds.push(userAccountId)
function buildBlockedAccountSQL (blockerIds: number[]) {
const blockerIdsString = blockerIds.join(', ')
return 'SELECT "targetAccountId" AS "id" FROM "accountBlocklist" WHERE "accountId" IN (' + blockerIdsString + ')' +