summaryrefslogtreecommitdiff
path: root/packages/backend/src/server/api/endpoints/admin/federation
diff options
context:
space:
mode:
authorsyuilo <Syuilotan@yahoo.co.jp>2023-09-23 20:50:02 +0900
committersyuilo <Syuilotan@yahoo.co.jp>2023-09-23 20:50:02 +0900
commit19bc9c20a651be62286573377348f4c61ae96587 (patch)
tree50c17f9ccbbb06119f2106745f2481ad25bd163f /packages/backend/src/server/api/endpoints/admin/federation
parentUpdate CHANGELOG.md (diff)
downloadsharkey-19bc9c20a651be62286573377348f4c61ae96587.tar.gz
sharkey-19bc9c20a651be62286573377348f4c61ae96587.tar.bz2
sharkey-19bc9c20a651be62286573377348f4c61ae96587.zip
improve moderation log
Diffstat (limited to 'packages/backend/src/server/api/endpoints/admin/federation')
-rw-r--r--packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts18
1 files changed, 17 insertions, 1 deletions
diff --git a/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts b/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts
index fbb91837f2..357bf83e87 100644
--- a/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts
+++ b/packages/backend/src/server/api/endpoints/admin/federation/update-instance.ts
@@ -9,6 +9,7 @@ import type { InstancesRepository } from '@/models/_.js';
import { UtilityService } from '@/core/UtilityService.js';
import { DI } from '@/di-symbols.js';
import { FederatedInstanceService } from '@/core/FederatedInstanceService.js';
+import { ModerationLogService } from '@/core/ModerationLogService.js';
export const meta = {
tags: ['admin'],
@@ -34,6 +35,7 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
private utilityService: UtilityService,
private federatedInstanceService: FederatedInstanceService,
+ private moderationLogService: ModerationLogService,
) {
super(meta, paramDef, async (ps, me) => {
const instance = await this.instancesRepository.findOneBy({ host: this.utilityService.toPuny(ps.host) });
@@ -42,9 +44,23 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint-
throw new Error('instance not found');
}
- this.federatedInstanceService.update(instance.id, {
+ await this.federatedInstanceService.update(instance.id, {
isSuspended: ps.isSuspended,
});
+
+ if (instance.isSuspended !== ps.isSuspended) {
+ if (ps.isSuspended) {
+ this.moderationLogService.log(me, 'suspendRemoteInstance', {
+ id: instance.id,
+ host: instance.host,
+ });
+ } else {
+ this.moderationLogService.log(me, 'unsuspendRemoteInstance', {
+ id: instance.id,
+ host: instance.host,
+ });
+ }
+ }
});
}
}