diff --git a/src/snek/service/channel_member.py b/src/snek/service/channel_member.py index 075e49e..407d0b7 100644 --- a/src/snek/service/channel_member.py +++ b/src/snek/service/channel_member.py @@ -37,6 +37,19 @@ class ChannelMemberService(BaseService): async for model in self.query("SELECT channel_member.* FROM channel_member INNER JOIN channel ON (channel.uid = channel_member.channel_uid and channel.tag = 'dm') INNER JOIN channel_member AS channel_member2 ON(channel_member2.channel_uid = channel.uid AND channel_member2.user_uid = :to_user) WHERE channel_member.user_uid=:from_user " ,dict(from_user=from_user, to_user=to_user)): return model return None + + async def get_other_dm_user(self, channel_uid, user_uid): + channel_member = await self.get(channel_uid=channel_uid, user_uid=user_uid) + channel = await self.services.channel.get(uid=channel_member['channel_uid']) + if channel["tag"] != "dm": + print("NONT!\n", flush=True) + return None + print("YEAHH",flush=True) + async for model in self.services.channel_member.find(channel_uid=channel_uid): + print("huh!!!",model['uid'],flush=True) + if model["uid"] != channel_member['uid']: + print("GOOOD!!",flush=True) + return await self.services.user.get(uid=model["user_uid"]) async def create_dm(self,channel_uid, from_user_uid, to_user_uid): result = await self.create(channel_uid, from_user_uid) diff --git a/src/snek/service/channel_message.py b/src/snek/service/channel_message.py index 309e959..7607f03 100644 --- a/src/snek/service/channel_message.py +++ b/src/snek/service/channel_message.py @@ -54,8 +54,10 @@ class ChannelMessageService(BaseService): async def offset(self, channel_uid, offset=0): results = [] - - async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid ORDER BY created_at DESC LIMIT 60 OFFSET :offset",dict(channel_uid=channel_uid, offset=offset)): - results.append(model) + try: + async for model in self.query("SELECT * FROM channel_message WHERE channel_uid=:channel_uid ORDER BY created_at DESC LIMIT 60 OFFSET :offset",dict(channel_uid=channel_uid, offset=offset)): + results.append(model) + except: + pass results.sort(key=lambda x: x['created_at']) return results diff --git a/src/snek/templates/app.html b/src/snek/templates/app.html index c50ff60..8caaef8 100644 --- a/src/snek/templates/app.html +++ b/src/snek/templates/app.html @@ -34,7 +34,7 @@