summary refs log tree commit diff
diff options
context:
space:
mode:
authorErkin Alp Güney <erkinalp9035@gmail.com>2022-04-24 09:23:52 +0300
committerGitHub <noreply@github.com>2022-04-24 09:23:52 +0300
commit755f278e5395207db02af8011f08857abef8be71 (patch)
tree68f0550f077d3544270e05cf26305a6ac4125491
parentWhile backfilling, message ids must now be valid snowflakes, cannot be in the... (diff)
downloadserver-755f278e5395207db02af8011f08857abef8be71.tar.xz
Backfilling privilege does not imply right to post messages
-rw-r--r--api/src/routes/channels/#channel_id/messages/#message_id/index.ts7
1 files changed, 5 insertions, 2 deletions
diff --git a/api/src/routes/channels/#channel_id/messages/#message_id/index.ts b/api/src/routes/channels/#channel_id/messages/#message_id/index.ts
index 8d2bd5cb..cf25f916 100644
--- a/api/src/routes/channels/#channel_id/messages/#message_id/index.ts
+++ b/api/src/routes/channels/#channel_id/messages/#message_id/index.ts
@@ -92,10 +92,13 @@ router.put(
 		const { channel_id, message_id } = req.params;
 		var body = req.body as MessageCreateSchema;
 		const attachments: Attachment[] = [];
+		
+		const rights = getRights(req.user_id);
+		rights.hasThrow("SEND_MESSAGES");
 
 		// regex to check if message contains anything other than numerals ( also no decimals )
 		if (!message_id.match(/^\+?\d+$/)) {
-			throw new HTTPError("Message IDs must be positive integers")
+			throw new HTTPError("Message IDs must be positive integers", 400);
 		}
 
 		const snowflake = Snowflake.deconstruct(message_id)
@@ -106,7 +109,7 @@ router.put(
 
 		const exists = await Message.findOne({ where: { id: message_id, channel_id: channel_id }});
 		if (exists) {
-			throw new HTTPError("Cannot backfill to message ID that already exists", 400);
+			throw new HTTPError("Cannot backfill to message ID that already exists", 409);
 		}
 
 		if (req.file) {