diff --git a/osinaweb/db.sqlite3 b/osinaweb/db.sqlite3 index 10c199fe..0e7b61e5 100644 Binary files a/osinaweb/db.sqlite3 and b/osinaweb/db.sqlite3 differ diff --git a/osinaweb/osinacore/__pycache__/consumers.cpython-310.pyc b/osinaweb/osinacore/__pycache__/consumers.cpython-310.pyc index eca0461e..66e5ad14 100644 Binary files a/osinaweb/osinacore/__pycache__/consumers.cpython-310.pyc and b/osinaweb/osinacore/__pycache__/consumers.cpython-310.pyc differ diff --git a/osinaweb/osinacore/consumers.py b/osinaweb/osinacore/consumers.py index 09afccf3..779b7bb0 100644 --- a/osinaweb/osinacore/consumers.py +++ b/osinaweb/osinacore/consumers.py @@ -46,11 +46,17 @@ class OnlineUserConsumer(WebsocketConsumer): offline_connections = connections.filter(online=False, last_seen__isnull=False).order_by('-last_seen')[:5] sorted_connections = list(online_connections) + list(offline_connections) online_users_ids = [connection.user.id for connection in online_connections] - - + customer_connections = [] + staff_connections = [] + for connection in sorted_connections: + if hasattr(connection.user, 'customerprofile'): + customer_connections.append(connection) + elif hasattr(connection.user, 'staffprofile'): + staff_connections.append(connection) event = { 'type': 'online_user_connection_handler', - + 'staff_connections': staff_connections, + 'customer_connections': customer_connections, 'online_users_ids': online_users_ids } async_to_sync(self.channel_layer.group_send)( @@ -59,6 +65,8 @@ class OnlineUserConsumer(WebsocketConsumer): def online_user_connection_handler(self, event): context = { + 'staff_connections': event['staff_connections'], + 'customer_connections': event['customer_connections'], } html = render_to_string("details_templates/partials/recently-online.html", context=context) self.send(text_data=json.dumps({