Merge remote-tracking branch 'origin/develop' into Sidebar-Menu

# Conflicts:
#	src/main/java/org/to/telegramfinalproject/Client/ActionHandler.java
#	src/main/java/org/to/telegramfinalproject/Database/ContactDatabase.java
#	src/main/java/org/to/telegramfinalproject/Database/MessageDatabase.java
#	src/main/java/org/to/telegramfinalproject/Models/ContactEntry.java
#	src/main/java/org/to/telegramfinalproject/Models/Message.java
#	src/main/java/org/to/telegramfinalproject/Server/ClientHandler.java
#	src/main/resources/init.sql
This commit is contained in:
Asal Lotfi
2025-08-11 13:10:18 +03:30
16 changed files with 1939 additions and 220 deletions
@@ -283,7 +283,36 @@ public class PrivateChatDatabase {
}
public static UUID findChatBetween(UUID user1, UUID user2) {
String sql = """
SELECT chat_id FROM private_chat
WHERE (user1_id = ? AND user2_id = ?) OR (user1_id = ? AND user2_id = ?)
""";
try (Connection conn = ConnectionDb.connect();
PreparedStatement ps = conn.prepareStatement(sql)) {
ps.setObject(1, user1);
ps.setObject(2, user2);
ps.setObject(3, user2);
ps.setObject(4, user1);
ResultSet rs = ps.executeQuery();
if (rs.next()) {
return (UUID) rs.getObject("chat_id");
}
} catch (SQLException e) {
e.printStackTrace();
}
return null;
}
public static UUID getOtherParticipant(UUID chatId, UUID me) {
List<UUID> members = getMembers(chatId);
for (UUID u : members) {
if (!u.equals(me)) return u;
}
return null;
}
}