From a219ce4d79a15ef900583ab025fb0da1df79ace3 Mon Sep 17 00:00:00 2001 From: retoor Date: Sat, 8 Mar 2025 20:21:02 +0100 Subject: [PATCH] Update sorting. --- src/snek/view/web.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/snek/view/web.py b/src/snek/view/web.py index 3ae7902..be44df9 100644 --- a/src/snek/view/web.py +++ b/src/snek/view/web.py @@ -58,6 +58,9 @@ class WebView(BaseView): async for subscribed_channel in self.app.services.channel_member.find(user_uid=self.session.get("uid"), deleted_at=None, is_banned=False): item = {} other_user = await self.app.services.channel_member.get_other_dm_user(subscribed_channel["channel_uid"], self.session.get("uid")) + parent_object = await subscribed_channel.get_channel() + last_message =await parent_object.get_last_message() + item["last_message_on"] = parent_object["last_message_on"] if other_user: item["name"] = other_user["nick"] item["uid"] = subscribed_channel["channel_uid"] @@ -65,6 +68,8 @@ class WebView(BaseView): item["name"] = subscribed_channel["label"] item["uid"] = subscribed_channel["channel_uid"] channels.append(item) + + channels.sort(key=lambda x: x['last_message_on'], reverse=True) name = await channel_member.get_name() return await self.render_template("web.html", {"name": name, "channel": channel,"user": user,"messages": messages , "channels": channels})