diff --git a/server.py b/server.py index ad92703..1f9419e 100644 --- a/server.py +++ b/server.py @@ -106,14 +106,16 @@ def handle_client(client_socket, addr): elif action == "remove_message": chat_name = request["chat_name"] - index = request.get("index") if chat_name in chats: - if 0 <= index < len(chats[chat_name]["messages"]): - # optioneel: check of de gebruiker eigenaar is van het bericht - msg_user = chats[chat_name]["messages"][index]["user"] - if msg_user == request["by"]: # alleen eigen berichten verwijderen - chats[chat_name]["messages"].pop(index) + # zoek het **laatste bericht van deze gebruiker** + for i in reversed(range(len(chats[chat_name]["messages"]))): + msg = chats[chat_name]["messages"][i] + if msg["user"] == request["by"]: + # markeer als verwijderd + chats[chat_name]["messages"][i]["message"] = "[deleted]" save_chats(chats) + break + elif action == "message":