From 7b7419a73f2a28eb2f822d46ef5f3f9aab153c2d Mon Sep 17 00:00:00 2001 From: Charlie Darques <charlie.darques.etu@univ-lille.fr> Date: Fri, 14 Mar 2025 12:20:36 +0100 Subject: [PATCH] =?UTF-8?q?bouton=20follow=20s'affiche=20diff=C3=A9remment?= =?UTF-8?q?=20si=20l'user=20follow=20d=C3=A9j=C3=A0=20le=20thread?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- WEB-INF/src/controleurs/Discover.java | 12 +++++++----- WEB-INF/src/controleurs/FollowThread.java | 2 +- WEB-INF/src/dao/UserDAO.java | 8 +++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/WEB-INF/src/controleurs/Discover.java b/WEB-INF/src/controleurs/Discover.java index 5d909fe..feb4572 100644 --- a/WEB-INF/src/controleurs/Discover.java +++ b/WEB-INF/src/controleurs/Discover.java @@ -39,27 +39,29 @@ public class Discover extends HttpServlet { out.println(PageGeneration.generateNavMenu()); - List<MyThread> followedThreads = null; + List<Integer> followedThreads = null; try { followedThreads = userDao.getThreadsFollowedByUser(user); + System.out.println(followedThreads.get(2)); } catch (SQLException sqle) { sqle.getStackTrace(); } - if (!messages.isEmpty()) { for (Message message : messages) { MyThread msgThread = null; try { msgThread = threadDao.getThreadById(message.getThreadId()); + System.out.println(msgThread.getId()); } catch (SQLException e) { throw new RuntimeException(e); } User sender = userDao.getUserById(message.getSenderId()); String senderName = sender.getUserName(); - boolean followed = followedThreads.contains(msgThread); + boolean followed = followedThreads.contains(msgThread.getId()); + System.out.println("suivi : " + followed); out.println("<div class=\"message\">"); out.println("<h3 class=\"msgThread\">" + msgThread.getThreadName() + "</h3>"); @@ -70,10 +72,10 @@ public class Discover extends HttpServlet { out.println("<input name=\"threadid\" type=\"hidden\" value=\"" + msgThread.getId() +"\">"); if (followed) { - out.println("<button type=\"submit\">Followed</button>"); + out.println("<button class=\"followed\" type=\"submit\">Followed</button>"); } else { - out.println("<button type=\"submit\">Follow</button>"); + out.println("<button class=\"unfollowed\" type=\"submit\">Follow</button>"); } out.println("</form>"); } diff --git a/WEB-INF/src/controleurs/FollowThread.java b/WEB-INF/src/controleurs/FollowThread.java index 4c00b8a..857ec85 100644 --- a/WEB-INF/src/controleurs/FollowThread.java +++ b/WEB-INF/src/controleurs/FollowThread.java @@ -24,7 +24,7 @@ public class FollowThread extends HttpServlet { ThreadDAO threadDao = new ThreadDAO(); - List<MyThread> threadsFollowed = null; + List<Integer> threadsFollowed = null; try { threadsFollowed = userDao.getThreadsFollowedByUser(user); } diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java index 442504b..c59f0a9 100644 --- a/WEB-INF/src/dao/UserDAO.java +++ b/WEB-INF/src/dao/UserDAO.java @@ -209,17 +209,15 @@ public class UserDAO { } // Récupérer les thread auxquels un utilisateur est abonné - public List<MyThread> getThreadsFollowedByUser(User user) throws SQLException { - List<MyThread> threads = new ArrayList<>(); - ThreadDAO threadDAO = new ThreadDAO(); + public List<Integer> getThreadsFollowedByUser(User user) throws SQLException { + List<Integer> threads = new ArrayList<>(); PreparedStatement ps = this.con.prepareStatement("SELECT threadID_follow FROM follow WHERE userID_follow = ?"); try { ps.setInt(1, user.getId()); ResultSet rs = ps.executeQuery(); while(rs.next()){ int threadId = rs.getInt(1); - String threadname = threadDAO.getThreadById(threadId).getThreadName(); - threads.add(new MyThread(threadId, threadname)); + threads.add(threadId); } } catch (SQLException sqle) { -- GitLab