|
|
@ -193,7 +193,7 @@ class Osichat(WebsocketConsumer):
|
|
|
|
chat_rooms = ChatRoom.objects.annotate(last_update=Max('chatmessage__date_sent'),order_key=Case(
|
|
|
|
chat_rooms = ChatRoom.objects.annotate(last_update=Max('chatmessage__date_sent'),order_key=Case(
|
|
|
|
When(last_update__isnull=True, then=F('date_created')),
|
|
|
|
When(last_update__isnull=True, then=F('date_created')),
|
|
|
|
default=F('last_update'),
|
|
|
|
default=F('last_update'),
|
|
|
|
output_field=DateTimeField(),)).filter(chatroomguest__isnull=True, chatmember__member=self.scope["user"], chatmessage__isnull=False).order_by('-order_key')
|
|
|
|
output_field=DateTimeField(),)).filter(chatroomguest__isnull=True, chatmember__member=self.scope["user"]).order_by('-order_key')
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
chat_rooms = None
|
|
|
|
chat_rooms = None
|
|
|
|
context = {
|
|
|
|
context = {
|
|
|
@ -207,8 +207,7 @@ class Osichat(WebsocketConsumer):
|
|
|
|
'name': chat_room.name,
|
|
|
|
'name': chat_room.name,
|
|
|
|
'last_update': chat_room.last_updated,
|
|
|
|
'last_update': chat_room.last_updated,
|
|
|
|
'date_created': chat_room.date_created,
|
|
|
|
'date_created': chat_room.date_created,
|
|
|
|
'unread_messages': chat_room.unread_messages(self.scope["user"]),
|
|
|
|
|
|
|
|
'last_message': model_to_dict(ChatMessage.objects.filter(room=chat_room).last())
|
|
|
|
|
|
|
|
}
|
|
|
|
}
|
|
|
|
members = chat_room.chatmember_set.all()
|
|
|
|
members = chat_room.chatmember_set.all()
|
|
|
|
member_data = []
|
|
|
|
member_data = []
|
|
|
|