diff options
| author | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-25 15:51:45 +0900 |
|---|---|---|
| committer | syuilo <4439005+syuilo@users.noreply.github.com> | 2025-03-25 15:51:45 +0900 |
| commit | a01ae38a07f949cbcd5ce555cd90e8570bb985cc (patch) | |
| tree | 9227b0625a95a97ccf11970b479ac86b1f42a57b /packages/backend/src/server/api/endpoints/chat/rooms | |
| parent | enhance: チャットルームに招待されたときの通知を追加 (diff) | |
| download | sharkey-a01ae38a07f949cbcd5ce555cd90e8570bb985cc.tar.gz sharkey-a01ae38a07f949cbcd5ce555cd90e8570bb985cc.tar.bz2 sharkey-a01ae38a07f949cbcd5ce555cd90e8570bb985cc.zip | |
enhance: モデレーターがチャットルームの内容を確認・削除できるように
Diffstat (limited to 'packages/backend/src/server/api/endpoints/chat/rooms')
| -rw-r--r-- | packages/backend/src/server/api/endpoints/chat/rooms/delete.ts | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/packages/backend/src/server/api/endpoints/chat/rooms/delete.ts b/packages/backend/src/server/api/endpoints/chat/rooms/delete.ts index 2ef0a778f1..1d77a06dd8 100644 --- a/packages/backend/src/server/api/endpoints/chat/rooms/delete.ts +++ b/packages/backend/src/server/api/endpoints/chat/rooms/delete.ts @@ -42,11 +42,16 @@ export default class extends Endpoint<typeof meta, typeof paramDef> { // eslint- private chatService: ChatService, ) { super(meta, paramDef, async (ps, me) => { - const room = await this.chatService.findMyRoomById(me.id, ps.roomId); + const room = await this.chatService.findRoomById(ps.roomId); if (room == null) { throw new ApiError(meta.errors.noSuchRoom); } - await this.chatService.deleteRoom(room); + + if (!await this.chatService.hasPermissionToDeleteRoom(me.id, room)) { + throw new ApiError(meta.errors.noSuchRoom); + } + + await this.chatService.deleteRoom(room, me); }); } } |