added haveUnreadMessage to logged_in server response. change searchuser to not be case sensitive

This commit is contained in:
2024-09-29 03:21:40 +02:00
parent 8aac415275
commit 4ef459e2cc
4 changed files with 18 additions and 10 deletions

View File

@ -6,7 +6,7 @@
# By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/08/03 08:10:38 by edbernar #+# #+# #
# Updated: 2024/09/15 11:14:32 by tomoron ### ########.fr #
# Updated: 2024/09/29 03:14:58 by tomoron ### ########.fr #
# #
# **************************************************************************** #
@ -16,6 +16,7 @@ import hashlib
import requests
import json
import os
from .statusMessage import getUnreadStatus
@sync_to_async
def userExists(mail, password):
@ -37,6 +38,7 @@ async def loginByPass(socket, content):
"status":True,
"username":u_info["username"],
"id": u_info["id"],
"haveUnreadMessage": await getUnreadStatus(u_info["id"])
}}))
else:
socket.sendError("An unknown error occured",9027)

View File

@ -6,7 +6,7 @@
# By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/09/18 07:26:07 by edbernar #+# #+# #
# Updated: 2024/09/28 19:10:09 by tomoron ### ########.fr #
# Updated: 2024/09/29 02:40:51 by tomoron ### ########.fr #
# #
# **************************************************************************** #
@ -18,7 +18,7 @@ import json
@sync_to_async
def searchUser(socket, content):
try:
users = User.objects.filter(Q(username__contains=content["username"].lower()) & ~Q(id=socket.id))[:10]
users = User.objects.filter(Q(username__icontains=content["username"]) & ~Q(id=socket.id))[:10]
userList = []
for user in users:
userList.append((user.username, user.id, user.pfp))

View File

@ -6,7 +6,7 @@
# By: tomoron <tomoron@student.42.fr> +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/09/28 20:03:49 by tomoron #+# #+# #
# Updated: 2024/09/28 20:20:12 by tomoron ### ########.fr #
# Updated: 2024/09/29 03:09:32 by tomoron ### ########.fr #
# #
# **************************************************************************** #
@ -15,10 +15,15 @@ from ..models import User, Message
from asgiref.sync import sync_to_async
@sync_to_async
def statusMessage(socket,content):
def getUnreadStatus(uid):
if(uid == None or uid == 0):
return(False)
user = User.objects.get(id=uid)
return(Message.objects.filter(Q(to=user) & Q(read=False)).exists())
async def statusMessage(socket,content):
try:
user = User.objects.get(id=socket.id)
haveUnread = Message.objects.filter(Q(to=user) & Q(read=False)).exists()
haveUnread = await getUnreadStatus(socket.id)
socket.sync_send({"type":"status_message","content":{"haveUnread" : haveUnread}})
except Exception as e:
socket.sendError("Invalid request", 9005, e)

View File

@ -6,7 +6,7 @@
# By: edbernar <edbernar@student.42angouleme. +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2024/09/09 14:31:30 by tomoron #+# #+# #
# Updated: 2024/09/28 21:03:10 by tomoron ### ########.fr #
# Updated: 2024/09/29 03:18:30 by tomoron ### ########.fr #
# #
# **************************************************************************** #
@ -32,7 +32,7 @@ from .typeRequests.getUserInfo import getUserInfo
from .typeRequests.getPrivateInfo import getPrivateInfo
from .typeRequests.changePrivateInfo import changePrivateInfo
from .typeRequests.changePfp import changePfp
from .typeRequests.statusMessage import statusMessage
from .typeRequests.statusMessage import statusMessage,getUnreadStatus
from .typeRequests.readMessage import readMessage
typeRequest = ["login", "get_private_list_user", "get_private_list_message",
@ -110,7 +110,8 @@ class WebsocketHandler(AsyncWebsocketConsumer):
await self.send(text_data=json.dumps({"type":"logged_in", "content":{
"status":await self.session_get("logged_in",False),
"username":await self.session_get("username",None),
"id":await self.session_get("id",0)
"id":await self.session_get("id",0),
"haveUnredMessage":await getUnreadStatus(self.id)
}}))
print("new client")