From 73924286c82e54e4271cce32db45294ecaa5b01a Mon Sep 17 00:00:00 2001 From: Defreitasnicolas Date: Mon, 5 Feb 2024 14:31:08 +0100 Subject: [PATCH 1/5] modification du home --- frontend/context/AuthContext.jsx | 1 + frontend/src/assets/W-removebg-preview.png | Bin 33902 -> 0 bytes frontend/src/pages/Home.jsx | 2 ++ 3 files changed, 3 insertions(+) delete mode 100644 frontend/src/assets/W-removebg-preview.png diff --git a/frontend/context/AuthContext.jsx b/frontend/context/AuthContext.jsx index 7c67c45..b0dd469 100644 --- a/frontend/context/AuthContext.jsx +++ b/frontend/context/AuthContext.jsx @@ -16,6 +16,7 @@ function AuthProvider({ children }) { }), [connected, setConnected, profil, setProfil] ); + return ( {children} ); diff --git a/frontend/src/assets/W-removebg-preview.png b/frontend/src/assets/W-removebg-preview.png deleted file mode 100644 index c81fdf441ecd01c1f874920e3d50eed41610a554..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 33902 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 u$C@6rCA-Q=2jvyeuKwFJ +
From 579158d2775b2263147e776af730e478170e708b Mon Sep 17 00:00:00 2001 From: Defreitasnicolas Date: Mon, 5 Feb 2024 14:34:15 +0100 Subject: [PATCH 2/5] css du boutton --- frontend/src/pages/auth/Login.jsx | 57 ++++++++++++++++------------- frontend/src/style/index.scss | 2 + frontend/src/style/pages/Login.scss | 33 +++++++++++++++++ 3 files changed, 67 insertions(+), 25 deletions(-) diff --git a/frontend/src/pages/auth/Login.jsx b/frontend/src/pages/auth/Login.jsx index 91c72af..ddc1013 100644 --- a/frontend/src/pages/auth/Login.jsx +++ b/frontend/src/pages/auth/Login.jsx @@ -44,31 +44,38 @@ function Login() { alt="ceci est l illustration de la page de creation de compte" /> -
-

Connexion au compte

-
- - -
- -
- +
+
+ +
+
+

Connexion au compte

+
+ + +
+ +
+ +
diff --git a/frontend/src/style/index.scss b/frontend/src/style/index.scss index f26bbed..5d7da1a 100644 --- a/frontend/src/style/index.scss +++ b/frontend/src/style/index.scss @@ -17,3 +17,5 @@ @import "./components/InputComponents.scss"; @import "../style/pages/Signup.scss"; @import "../style/pages/Login.scss"; +@import "../style/components/Header.scss"; +@import "../style/components/ButtonConnected.scss"; diff --git a/frontend/src/style/pages/Login.scss b/frontend/src/style/pages/Login.scss index d71f4f5..1c6b1c9 100644 --- a/frontend/src/style/pages/Login.scss +++ b/frontend/src/style/pages/Login.scss @@ -18,12 +18,22 @@ flex-direction: column; align-items: center; justify-content: center; + margin-top: -6rem; width: 50vw; + height: 100vh; h3 { color: var(--text-color); margin-bottom: 0; } } + +.authInscriptionButtonContainer { + display: flex; + justify-content: flex-end; + padding-right: 2rem; + width: 100%; +} + .formLoginContainer { background-color: var(--primary-color); flex-direction: column; @@ -51,6 +61,23 @@ .inputConnexion:active { box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); } +.authInscriptionButton { + width: 102px; + height: 33px; + border-radius: 20px; + background-color: var(--button-color); + border: none; + margin-top: 1rem; + margin-bottom: 1rem; + color: var(--text-color); + cursor: pointer; +} +.authInscriptionButton:hover { + box-shadow: 0 0 10px rgba(0, 0, 0, 0.3); +} +.authInscriptionButton:active { + box-shadow: 0 0 20px rgba(0, 0, 0, 0.5); +} @media screen and (max-width: 1200px) { .imageLogin { width: 400px; @@ -70,10 +97,16 @@ align-items: center; justify-content: center; } + .authFormContainer { + width: 100vw; + } .authFormContainer h3 { font-size: 15px; } .formLoginContainer { width: 350px; } + .authInscriptionButtonContainer { + width: 100vw; + } } From f4c507ae17b0498fc803081f5fab50514cec49ea Mon Sep 17 00:00:00 2001 From: Defreitasnicolas Date: Mon, 5 Feb 2024 14:36:36 +0100 Subject: [PATCH 3/5] ajout du composant header --- frontend/src/assets/logo.png | Bin 0 -> 33902 bytes frontend/src/components/header/Header.jsx | 14 ++++++++++++++ frontend/src/style/components/Header.scss | 7 +++++++ 3 files changed, 21 insertions(+) create mode 100644 frontend/src/assets/logo.png create mode 100644 frontend/src/components/header/Header.jsx create mode 100644 frontend/src/style/components/Header.scss diff --git a/frontend/src/assets/logo.png b/frontend/src/assets/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c81fdf441ecd01c1f874920e3d50eed41610a554 GIT binary patch literal 33902 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 u$C@6rCA-Q=2jvyeuKwFJ + logo + + + ); +} + +export default Header; diff --git a/frontend/src/style/components/Header.scss b/frontend/src/style/components/Header.scss new file mode 100644 index 0000000..181d2c7 --- /dev/null +++ b/frontend/src/style/components/Header.scss @@ -0,0 +1,7 @@ +.headerContainer { + display: flex; + flex-direction: row; + justify-content: space-around; + align-items: center; + width: 100%; +} From b8162df30478945560f38e0445d0ab73b7e5f056 Mon Sep 17 00:00:00 2001 From: Defreitasnicolas Date: Mon, 5 Feb 2024 14:37:30 +0100 Subject: [PATCH 4/5] creation du boutton --- .../src/components/input/ButtonConected.jsx | 30 +++++++++++++++++++ .../src/style/components/ButtonConnected.scss | 23 ++++++++++++++ 2 files changed, 53 insertions(+) create mode 100644 frontend/src/components/input/ButtonConected.jsx create mode 100644 frontend/src/style/components/ButtonConnected.scss diff --git a/frontend/src/components/input/ButtonConected.jsx b/frontend/src/components/input/ButtonConected.jsx new file mode 100644 index 0000000..4497d5d --- /dev/null +++ b/frontend/src/components/input/ButtonConected.jsx @@ -0,0 +1,30 @@ +import React, { useContext } from "react"; +import { Link } from "react-router-dom"; +import { AuthContext } from "../../../context/AuthContext"; + +function ButtonConected() { + const { connected } = useContext(AuthContext); + const reload = () => { + window.location.reload(); + }; + return ( +
+ {connected.login && ( +
+ +
+ )} + {!connected.login && ( + + + + )} +
+ ); +} + +export default ButtonConected; diff --git a/frontend/src/style/components/ButtonConnected.scss b/frontend/src/style/components/ButtonConnected.scss new file mode 100644 index 0000000..5e03251 --- /dev/null +++ b/frontend/src/style/components/ButtonConnected.scss @@ -0,0 +1,23 @@ +.connexionButton { + width: 102px; + height: 33px; + border-radius: 20px; + background-color: var(--button-color); + border: none; + margin-top: 1rem; + margin-bottom: 1rem; + color: var(--text-color); + cursor: pointer; +} + +.disconnectedButton { + width: 102px; + height: 33px; + border-radius: 20px; + background-color: #f05555; + border: none; + margin-top: 1rem; + margin-bottom: 1rem; + color: var(--text-color); + cursor: pointer; +} From e3f3884a5fe6ac550b4a2ec82770b4331c43679a Mon Sep 17 00:00:00 2001 From: Defreitasnicolas Date: Mon, 5 Feb 2024 16:14:26 +0100 Subject: [PATCH 5/5] ajout de la requete vers /logout et fonction logout ds controller --- backend/package-lock.json | 37 +++++++++++++++++++ backend/package.json | 1 + backend/src/app.js | 5 ++- backend/src/controllers/playerControllers.js | 9 +++++ backend/src/router.js | 1 + .../src/components/input/ButtonConected.jsx | 8 +++- 6 files changed, 58 insertions(+), 3 deletions(-) diff --git a/backend/package-lock.json b/backend/package-lock.json index ede5d34..ecbdfde 100644 --- a/backend/package-lock.json +++ b/backend/package-lock.json @@ -6,6 +6,7 @@ "": { "dependencies": { "argon2": "^0.31.2", + "cookie-parser": "^1.4.6", "cors": "^2.8.5", "dotenv": "^16.3.1", "express": "^4.18.2", @@ -2384,6 +2385,26 @@ "node": ">= 0.6" } }, + "node_modules/cookie-parser": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.6.tgz", + "integrity": "sha512-z3IzaNjdwUC2olLIB5/ITd0/setiaFMLYiZJle7xg5Fe9KWAceil7xszYfHHBtDFYLSgJduS2Ty0P1uJdPDJeA==", + "dependencies": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/cookie-parser/node_modules/cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==", + "engines": { + "node": ">= 0.6" + } + }, "node_modules/cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", @@ -9486,6 +9507,22 @@ "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==" }, + "cookie-parser": { + "version": "1.4.6", + "resolved": "https://registry.npmjs.org/cookie-parser/-/cookie-parser-1.4.6.tgz", + "integrity": "sha512-z3IzaNjdwUC2olLIB5/ITd0/setiaFMLYiZJle7xg5Fe9KWAceil7xszYfHHBtDFYLSgJduS2Ty0P1uJdPDJeA==", + "requires": { + "cookie": "0.4.1", + "cookie-signature": "1.0.6" + }, + "dependencies": { + "cookie": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.1.tgz", + "integrity": "sha512-ZwrFkGJxUR3EIoXtO+yVE69Eb7KlixbaeAWfBQB9vVsNn/o+Yw69gBWSSDK825hQNdN+wF8zELf3dFNl/kxkUA==" + } + } + }, "cookie-signature": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", diff --git a/backend/package.json b/backend/package.json index e4682ad..703c803 100644 --- a/backend/package.json +++ b/backend/package.json @@ -9,6 +9,7 @@ }, "dependencies": { "argon2": "^0.31.2", + "cookie-parser": "^1.4.6", "cors": "^2.8.5", "dotenv": "^16.3.1", "express": "^4.18.2", diff --git a/backend/src/app.js b/backend/src/app.js index f1c4f47..9d289c2 100644 --- a/backend/src/app.js +++ b/backend/src/app.js @@ -66,8 +66,9 @@ app.use(express.json()); // Then, require the module and use it as middleware in your Express application: -// const cookieParser = require("cookie-parser"); -// app.use(cookieParser()); +const cookieParser = require("cookie-parser"); + +app.use(cookieParser()); // Once `cookie-parser` is set up, you can read and set cookies in your routes. // For example, to set a cookie named "username" with the value "john": diff --git a/backend/src/controllers/playerControllers.js b/backend/src/controllers/playerControllers.js index b3717be..ebfc73c 100644 --- a/backend/src/controllers/playerControllers.js +++ b/backend/src/controllers/playerControllers.js @@ -86,9 +86,18 @@ const log = async (req, res, next) => { } }; +const logout = (req, res) => { + // Effacer le cookie d'authentification côté client + res.clearCookie("auth"); + + // Répondre avec succès + res.sendStatus(200); +}; + module.exports = { browse, destroy, add, log, + logout, }; diff --git a/backend/src/router.js b/backend/src/router.js index 5e9ccad..b9e008d 100644 --- a/backend/src/router.js +++ b/backend/src/router.js @@ -13,6 +13,7 @@ const hashPassword = require("./midleware/hash/hashPassword"); const validateUsers = require("./midleware/joi/validateUsers"); router.get("/players", PlayerControllers.browse); +router.post("/logout", PlayerControllers.logout); router.delete("/players/:id", PlayerControllers.destroy); router.get("/party", PartyControllers.browse); router.get("/games", GameControllers.browse); diff --git a/frontend/src/components/input/ButtonConected.jsx b/frontend/src/components/input/ButtonConected.jsx index 4497d5d..9cff99b 100644 --- a/frontend/src/components/input/ButtonConected.jsx +++ b/frontend/src/components/input/ButtonConected.jsx @@ -1,10 +1,16 @@ import React, { useContext } from "react"; import { Link } from "react-router-dom"; import { AuthContext } from "../../../context/AuthContext"; +import connexion from "../../services/connexion"; function ButtonConected() { const { connected } = useContext(AuthContext); - const reload = () => { + const reload = async () => { + try { + await connexion.post("/logout"); + } catch (error) { + console.error("Erreur lors de la déconnexion :", error); + } window.location.reload(); }; return (