From 91ee08b8d971e8823eb6a6bcf294890daac71232 Mon Sep 17 00:00:00 2001
From: Charlie Darques <charlie.darques.etu@univ-lille.fr>
Date: Tue, 11 Mar 2025 09:50:37 +0100
Subject: [PATCH] =?UTF-8?q?correction=20de=20base=20de=20donn=C3=A9es=20+?=
 =?UTF-8?q?=20permet=20de=20cr=C3=A9er=20un=20thread?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit

---
 WEB-INF/src/controleurs/NewThread.java | 18 +++++++++++-------
 WEB-INF/src/dao/ThreadDAO.java         |  4 +++-
 WEB-INF/src/dao/UserDAO.java           |  1 +
 sql/data.sql                           |  8 ++++----
 4 files changed, 19 insertions(+), 12 deletions(-)

diff --git a/WEB-INF/src/controleurs/NewThread.java b/WEB-INF/src/controleurs/NewThread.java
index 14bfaa9..e921bcb 100644
--- a/WEB-INF/src/controleurs/NewThread.java
+++ b/WEB-INF/src/controleurs/NewThread.java
@@ -25,33 +25,37 @@ public class NewThread extends HttpServlet {
             String login = (String) req.getSession().getAttribute("login");
             User user = (User) req.getSession().getAttribute("user");
             String threadname = null;
-            String message = null;
+            //String message = null;
             boolean newThreadWasCreated = false;
 
             if (req.getParameter("threadname") != null) {
                 threadname = req.getParameter("threadname");
             }
-            if (req.getParameter("first_message") != null) {
-                message = req.getParameter("first_message");
-            }
+            // if (req.getParameter("first_message") != null) {
+            //     message = req.getParameter("first_message");
+            // }
 
-            if (threadname != null && message != null) {
+            if (threadname != null 
+            //&& message != null
+            ) {
                 try {
                     threadDAO.createThread(user, threadname);
                     List<MyThread> threadsCreated = userDAO.getThreadsCreatedByUser(user);
                     MyThread newThread = null;
                     for (MyThread t : threadsCreated) {
+                        System.out.println("liste threads : " + t.getThreadName());
                         if (t.getThreadName().equals(threadname)) {
                             newThread = t;
                             newThreadWasCreated = true;
                         }
                     }
                     // PROBLEME ICI : Cannot invoke "dto.MyThread.getId()" because "<parameter2>" is null
-                    userDAO.postMessage(user, newThread, message);
+                    //userDAO.postMessage(user, newThread, message);
                 }
                 catch (SQLException sqle) {
                     sqle.getStackTrace();
                 }
+                System.out.println(newThreadWasCreated);
             }
 
 
@@ -62,7 +66,7 @@ public class NewThread extends HttpServlet {
             out.println("<h3>Create a new thread</h3>");
             out.println("<form action=\"http://localhost:8080/s4a021-web-backend/NewThread\" method=\"post\">");
             out.println("<input name=\"threadname\" type=\"text\" placeholder=\"Name of new thread\">");
-            out.println("<input name=\"first_message\" type=\"text\" placeholder=\"Post the first message of your new thread!\">");
+           // out.println("<input name=\"first_message\" type=\"text\" placeholder=\"Post the first message of your new thread!\">");
             out.println("<button type=\"submit\">Create</button>");
             out.println("</form>");
 
diff --git a/WEB-INF/src/dao/ThreadDAO.java b/WEB-INF/src/dao/ThreadDAO.java
index 6f7f821..d8133b6 100644
--- a/WEB-INF/src/dao/ThreadDAO.java
+++ b/WEB-INF/src/dao/ThreadDAO.java
@@ -101,8 +101,10 @@ public class ThreadDAO {
     public void createThread(User user, String threadName) throws SQLException {
         PreparedStatement ps = this.con.prepareStatement("INSERT INTO thread (userID_thread, threadName) VALUES(?, ?)");
         try {
-            ps.setString(1, ""+user.getId());
+            ps.setInt(1, +user.getId());
             ps.setString(2, threadName);
+            System.out.println(ps);
+            ps.executeUpdate();
         }
         catch (SQLException sqle) {
             sqle.getStackTrace();
diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java
index 22d2f10..d976a06 100644
--- a/WEB-INF/src/dao/UserDAO.java
+++ b/WEB-INF/src/dao/UserDAO.java
@@ -212,6 +212,7 @@ public class UserDAO {
             ps.setInt(1, user.getId());
             ResultSet rs = ps.executeQuery();
             while(rs.next()){
+                System.out.println("thread créé : " + rs.getString(2));
                 int threadId = rs.getInt(1);
                 String threadname = rs.getString(2);
                 threads.add(new MyThread(threadId, threadname));
diff --git a/sql/data.sql b/sql/data.sql
index a4adb10..9a4d848 100644
--- a/sql/data.sql
+++ b/sql/data.sql
@@ -5,10 +5,10 @@ INSERT INTO userAccount (username, password) VALUES ('toto', 'totopwd123'),
                                 ('test', 'test');
 
 
-INSERT INTO thread VALUES (1, 2, 'Gaming'),
-                            (2, 3, 'Animaux'),
-                            (3, 3, 'Objet perdu'),
-                            (4, 1, 'Discussion');
+INSERT INTO thread (userID_thread, threadName) VALUES (2, 'Gaming'),
+                            (3, 'Animaux'),
+                            (3, 'Objet perdu'),
+                            (1, 'Discussion');
 
 
 INSERT INTO follow VALUES (2,1, TO_DATE('11/02/2025', 'DD/MM/YYYY')),
-- 
GitLab