From 9e237a1d98d5a05a9650c1bbeea7ca81c65247ea Mon Sep 17 00:00:00 2001 From: retoor Date: Wed, 25 Jun 2025 21:38:26 +0200 Subject: [PATCH] Upodate. --- src/snek/view/rpc.py | 90 ++++++++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 44 deletions(-) diff --git a/src/snek/view/rpc.py b/src/snek/view/rpc.py index b709f5f..224c360 100644 --- a/src/snek/view/rpc.py +++ b/src/snek/view/rpc.py @@ -374,56 +374,58 @@ class RPCView(BaseView): async def update_message_text(self, message_uid, text): - async with self.app.no_save(): - self._require_login() + #async with self.app.no_save(): + self._require_login() - message = await self.services.channel_message.get(message_uid) - if not message: - return { - "error": "Message not found", - "success": False, - } - if message["is_final"]: - return { - "error": "Message is final", - "success": False, - } - if message["deleted_at"]: - return { - "error": "Message is deleted", - "success": False, - } - if message["user_uid"] != self.user_uid: - raise Exception("Not allowed") + message = await self.services.channel_message.get(message_uid) + if not message: + return { + "error": "Message not found", + "success": False, + } + if message["is_final"]: + return { + "error": "Message is final", + "success": False, + } + if message["deleted_at"]: + return { + "error": "Message is deleted", + "success": False, + } + if message["user_uid"] != self.user_uid: + raise Exception("Not allowed") - #if message.get_seconds_since_last_update() > 8: - # return { - # "error": "Message too old", - # "seconds_since_last_update": message.get_seconds_since_last_update(), - # "success": False, - # } + if message.get_seconds_since_last_update() > 8: + return { + "error": "Message too old", + "seconds_since_last_update": message.get_seconds_since_last_update(), + "success": False, + } - message["message"] = text - if not text: - message["deleted_at"] = now() - else: - message["deleted_at"] = None - await self.services.channel_message.save(message) - data = message.record - data["text"] = message["message"] - data["message_uid"] = message_uid + if not text: + message["deleted_at"] = now() + else: + message["deleted_at"] = None - await self.services.socket.broadcast( - message["channel_uid"], - { - "channel_uid": message["channel_uid"], - "event": "update_message_text", - "data": message.record, - }, - ) + message["message"] = text - return {"success": True} + await self.services.channel_message.save(message) + data = message.record + data["text"] = message["message"] + data["message_uid"] = message_uid + + await self.services.socket.broadcast( + message["channel_uid"], + { + "channel_uid": message["channel_uid"], + "event": "update_message_text", + "data": message.record, + }, + ) + + return {"success": True}