summary refs log tree commit diff
diff options
context:
space:
mode:
authorChris Chrome <christophercookman@gmail.com>2021-09-20 08:58:06 -0400
committerChris Chrome <christophercookman@gmail.com>2021-09-20 08:58:06 -0400
commit12a151eb2d907bdcfa80baa0defe3a255d58f8a7 (patch)
treecb73a783e6959864a28cbe30a7ae8240c7c1bb7d
parentUpdate README.md (diff)
downloadserver-12a151eb2d907bdcfa80baa0defe3a255d58f8a7.tar.xz
Delete messages before deleting channel
Might need some testing, but seems pretty solid for one line of code lol
-rw-r--r--api/src/routes/channels/#channel_id/index.ts4
1 files changed, 2 insertions, 2 deletions
diff --git a/api/src/routes/channels/#channel_id/index.ts b/api/src/routes/channels/#channel_id/index.ts
index 3f434f5e..ca8cc87c 100644
--- a/api/src/routes/channels/#channel_id/index.ts
+++ b/api/src/routes/channels/#channel_id/index.ts
@@ -1,4 +1,4 @@
-import { Channel, ChannelDeleteEvent, ChannelPermissionOverwriteType, ChannelType, ChannelUpdateEvent, emitEvent, Recipient } from "@fosscord/util";
+import { Channel, Message, ChannelDeleteEvent, ChannelPermissionOverwriteType, ChannelType, ChannelUpdateEvent, emitEvent, Recipient } from "@fosscord/util";
 import { Request, Response, Router } from "express";
 import { handleFile, route } from "@fosscord/api";
 
@@ -30,8 +30,8 @@ router.delete("/", route({ permission: "MANAGE_CHANNELS" }), async (req: Request
 	} else if (channel.type === ChannelType.GROUP_DM) {
 		await Channel.removeRecipientFromChannel(channel, req.user_id)
 	} else {
-		//TODO messages in this channel should be deleted before deleting the channel
 		await Promise.all([
+			Message.delete({ channel_id: channel_id }),
 			Channel.delete({ id: channel_id }),
 			emitEvent({ event: "CHANNEL_DELETE", data: channel, channel_id } as ChannelDeleteEvent)
 		]);