1
0

add moderation logs for many endpoints

- `/admin/delete-all-files-of-a-user`
- `/admin/nsfw-user`
- `/admin/unnsfw-user`
- `/admin/silence-user`
- `/admin/unsilence-user`
- `/admin/accounts/create`
- `/admin/drive/clean-remote-files`
- `/admin/drive/cleanup`
- `/admin/emoji/set-category-bulk`
- `/admin/emoji/set-license-bulk`
- `/admin/emoji/set-aliases-bulk`
- `/admin/emoji/add-aliases-bulk`
- `/admin/emoji/remove-aliases-bulk`
- `/admin/emoji/import-zip`
- `/admin/federation/delete-all-files`
- `/admin/federation/remove-all-following`
- `/admin/promo/create`
- `/admin/relay/add`
- `/admin/relay/remove`
This commit is contained in:
Hazelnoot
2025-02-26 23:18:30 -05:00
parent 504e90c190
commit 27d43879a2
25 changed files with 480 additions and 43 deletions
@@ -9,6 +9,7 @@ import { Endpoint } from '@/server/api/endpoint-base.js';
import type { DriveFilesRepository } from '@/models/_.js';
import { DriveService } from '@/core/DriveService.js';
import { DI } from '@/di-symbols.js';
import { ModerationLogService } from '@/core/ModerationLogService.js';
export const meta = {
tags: ['admin'],
@@ -29,7 +30,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
constructor(
@Inject(DI.driveFilesRepository)
private driveFilesRepository: DriveFilesRepository,
private readonly moderationLogService: ModerationLogService,
private driveService: DriveService,
) {
super(meta, paramDef, async (ps, me) => {
@@ -37,6 +38,10 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
userId: IsNull(),
});
await this.moderationLogService.log(me, 'clearOwnerlessFiles', {
count: files.length,
});
for (const file of files) {
this.driveService.deleteFile(file);
}