diff --git a/WEB-INF/classes/controleurs/Authent.class b/WEB-INF/classes/controleurs/LogIn.class similarity index 67% rename from WEB-INF/classes/controleurs/Authent.class rename to WEB-INF/classes/controleurs/LogIn.class index 6f46360ac41b5117d6b87297929365b3335a3379..34640d678d8193a8897e67c83cc4c46a74de2d6e 100644 Binary files a/WEB-INF/classes/controleurs/Authent.class and b/WEB-INF/classes/controleurs/LogIn.class differ diff --git a/WEB-INF/classes/controleurs/SignIn.class b/WEB-INF/classes/controleurs/SignIn.class new file mode 100644 index 0000000000000000000000000000000000000000..e16cbbf9fbeb27d5267ec8a60b6203278cf024ee Binary files /dev/null and b/WEB-INF/classes/controleurs/SignIn.class differ diff --git a/WEB-INF/classes/dao/ThreadDAO.class b/WEB-INF/classes/dao/ThreadDAO.class index 062c075115638b7c60829a62e267dd435a8eafe4..c71c8b8c8e913c4c238bde9189f4a9c65af2ed44 100644 Binary files a/WEB-INF/classes/dao/ThreadDAO.class and b/WEB-INF/classes/dao/ThreadDAO.class differ diff --git a/WEB-INF/classes/dao/UserDAO.class b/WEB-INF/classes/dao/UserDAO.class index bce45245902404438541c8c70726976ec3236ab1..5f6e297b01c74494541e99ff2c295b2af0942d13 100644 Binary files a/WEB-INF/classes/dao/UserDAO.class and b/WEB-INF/classes/dao/UserDAO.class differ diff --git a/WEB-INF/classes/dto/Message.class b/WEB-INF/classes/dto/Message.class index b98cfcca70fb67df1b3760a2598665f24d842832..d2e78212587772e41a107588ec40d0777260468b 100644 Binary files a/WEB-INF/classes/dto/Message.class and b/WEB-INF/classes/dto/Message.class differ diff --git a/WEB-INF/src/controleurs/Authent.java b/WEB-INF/src/controleurs/LogIn.java similarity index 91% rename from WEB-INF/src/controleurs/Authent.java rename to WEB-INF/src/controleurs/LogIn.java index babd3034eac09bf1b562362eafacf305685a91c4..852e2dc6d3d84f55c198c9389bed90465801ac07 100644 --- a/WEB-INF/src/controleurs/Authent.java +++ b/WEB-INF/src/controleurs/LogIn.java @@ -10,8 +10,8 @@ import jakarta.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; -@WebServlet("/Authentification") -public class Authent extends HttpServlet { +@WebServlet("/LogIn") +public class LogIn extends HttpServlet { @Override public void service(HttpServletRequest req, HttpServletResponse res) throws IOException { diff --git a/WEB-INF/src/controleurs/SignIn.java b/WEB-INF/src/controleurs/SignIn.java new file mode 100644 index 0000000000000000000000000000000000000000..5127db7b293abc21f584a3923b97788a5e3c1650 --- /dev/null +++ b/WEB-INF/src/controleurs/SignIn.java @@ -0,0 +1,27 @@ +package controleurs; + +import dao.UserDAO; +import dto.User; +import jakarta.servlet.annotation.WebServlet; +import jakarta.servlet.http.HttpServlet; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; + +import java.io.IOException; +import java.io.PrintWriter; + +@WebServlet("/SignIn") +public class SignIn extends HttpServlet { + @Override + public void service(HttpServletRequest req, HttpServletResponse res) throws IOException { + PrintWriter out = res.getWriter(); + UserDAO userdao = new UserDAO(); + userdao.createUser(); //WIP + + if (userdao.isDatabased(user)){ + out.println("<h1>Bienvenue " + user.getUserName() + " !</h1>"); + }else{ + out.println("<h1>Partez de chez moi ?!</h1>"); + } + } +} diff --git a/WEB-INF/src/dao/ThreadDAO.java b/WEB-INF/src/dao/ThreadDAO.java index cf7fc1ced882e8550af0493871e2dea473a51b24..4ce3f5e67af34e47514883b95fdd2c86720f4e78 100644 --- a/WEB-INF/src/dao/ThreadDAO.java +++ b/WEB-INF/src/dao/ThreadDAO.java @@ -1,8 +1,11 @@ package dao; +import dto.Message; import dto.User; import java.sql.*; +import java.util.ArrayList; +import java.util.List; public class ThreadDAO { private Connection con; @@ -11,24 +14,25 @@ public class ThreadDAO { this.con = new BDConnection().getConnection(); } - public String getAllMessages(){ - StringBuilder txt = new StringBuilder(); + public List<Message> getAllMessages(){ + ArrayList<Message> messages = new ArrayList<>(); try{ Statement stmt = this.con.createStatement(); - ResultSet rs = stmt.executeQuery("SELECT * FROM userAccount;"); + ResultSet rs = stmt.executeQuery("SELECT * FROM msg;"); while(rs.next()){ - int userId = rs.getInt(1); - String username = rs.getString(2); - String pwd = rs.getString(3); + int msgId = rs.getInt(1); + int userIdMsg = rs.getInt(2); + int threadId = rs.getInt(3); + String msg = rs.getString(4); - txt.append("Id : ").append(userId).append(" Username : ").append(username).append(" Password : ").append(pwd).append('\n'); + messages.add(new Message(msgId,userIdMsg,threadId,msg)); } } catch (SQLException sqle) { sqle.getStackTrace(); } - return txt.toString(); + return messages; } // Créer un thread diff --git a/WEB-INF/src/dao/UserDAO.java b/WEB-INF/src/dao/UserDAO.java index 3d5e9aaa8aacd666893cec2509663b5923425194..ede761a121bfd67e0adb7bc408898b75ae7af8db 100644 --- a/WEB-INF/src/dao/UserDAO.java +++ b/WEB-INF/src/dao/UserDAO.java @@ -16,6 +16,19 @@ public class UserDAO extends HttpServlet{ this.con = new BDConnection().getConnection(); } + public void createUser(String username, String password){ + try{ + PreparedStatement stmt = this.con.prepareStatement("INSERT INTO userAccount (username, password) VALUES (?,?)"); + stmt.setString(1, username); + stmt.setString(2, password); + + stmt.executeUpdate(); + + } catch (SQLException e) { + throw new RuntimeException(e); + } + } + public List<User> getAllUsers(){ ArrayList<User> users = new ArrayList<>(); try{ @@ -41,15 +54,13 @@ public class UserDAO extends HttpServlet{ boolean isIn = false; try { - PreparedStatement stmt = con.prepareStatement("SELECT * FROM userAccount WHERE userid=?"); + PreparedStatement stmt = this.con.prepareStatement("SELECT * FROM userAccount WHERE userid=?"); stmt.setInt(1, user.getId()); ResultSet rs = stmt.executeQuery(); if (rs.next()) { isIn = true; - }else { - System.out.println(user); } } catch (SQLException sqle) { @@ -64,7 +75,7 @@ public class UserDAO extends HttpServlet{ User user = new User(0,null,null); try{ - PreparedStatement stmt = con.prepareStatement("SELECT * FROM userAccount WHERE username=? AND password=?"); + PreparedStatement stmt = this.con.prepareStatement("SELECT * FROM userAccount WHERE username=? AND password=?"); stmt.setString(1, username); stmt.setString(2, password); @@ -162,7 +173,7 @@ public class UserDAO extends HttpServlet{ PreparedStatement ps = this.con.prepareStatement("INSERT INTO reactions VALUES(?, ?, ?)"); try { ps.setInt(1, user.getId()); - ps.setInt(2, msg.getId()); + ps.setInt(2, msg.getMsgId()); ps.setString(3, "true"); } catch (SQLException sqle) { diff --git a/WEB-INF/src/dto/Message.java b/WEB-INF/src/dto/Message.java index c63f8807b8be9c3e7c8ade6b2ff5d275acfe9ae8..a50cac348a79b81305f9396f446abec906edd402 100644 --- a/WEB-INF/src/dto/Message.java +++ b/WEB-INF/src/dto/Message.java @@ -1,22 +1,34 @@ package dto; public class Message { - private int msgID; + private int msgId; + private int senderId; + private int threadId; private String content; // Constructor // - public Message(int msgID, String content) { - this.msgID = msgID; + public Message(int msgId, int senderId, int threadId, String content) { + this.msgId = msgId; + this.senderId = senderId; + this.threadId = threadId; this.content = content; } // Getter // - public int getId() { - return msgID; + public int getMsgId() { + return msgId; + } + + public int getSenderId() { + return senderId; + } + + public int getThreadId() { + return threadId; } public String getContent() { @@ -26,8 +38,16 @@ public class Message { // Setter // - public void setMsgID(int msgID) { - this.msgID = msgID; + public void setMsgId(int msgId) { + this.msgId = msgId; + } + + public void setSenderId(int senderId) { + this.senderId = senderId; + } + + public void setThreadId(int threadId) { + this.threadId = threadId; } public void setContent(String content) { diff --git a/create.html b/create.html new file mode 100644 index 0000000000000000000000000000000000000000..212601a3ca9479dd04fd24703388ae012bd868b3 --- /dev/null +++ b/create.html @@ -0,0 +1,14 @@ +<!DOCTYPE html> +<html lang="fr"> +<head> + <meta charset="UTF-8"> + <title>Create Account</title> +</head> +<body> +<form action="LogIn"> + <input name="login" type="text"> + <input name="pwd" type="password"> + <button type="submit">Create my Account</button> +</form> +</body> +</html> \ No newline at end of file diff --git a/index.html b/index.html index 1aa21b1c56ac2e96f64de6e618b229923c23ccec..7693f8f1579db2a27c3a65f04259add3c0148dce 100644 --- a/index.html +++ b/index.html @@ -8,11 +8,11 @@ <title>Connexion</title> </head> <body> -<form action="Authentification" method="get"> +<form action="LogIn" method="get"> <input name="login" type="text"> <input name="pwd" type="password"> <button type="submit">Connexion</button> + <a href="./create.html">Create Account</a> </form> -<button>Créer un compte</button> </body> </html> \ No newline at end of file