diff options
| author | syuilo <Syuilotan@yahoo.co.jp> | 2023-09-23 20:50:02 +0900 |
|---|---|---|
| committer | syuilo <Syuilotan@yahoo.co.jp> | 2023-09-23 20:50:02 +0900 |
| commit | 19bc9c20a651be62286573377348f4c61ae96587 (patch) | |
| tree | 50c17f9ccbbb06119f2106745f2481ad25bd163f /packages/backend/src/server/api/endpoints/admin/federation | |
| parent | Update CHANGELOG.md (diff) | |
| download | sharkey-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.ts | 18 |
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, + }); + } + } }); } } |