From 3ea896bdc163daaa1246c748472c96154b3ad65e Mon Sep 17 00:00:00 2001 From: TheCoreDev Date: Wed, 15 Nov 2023 14:56:17 +0100 Subject: [PATCH] Correction des derniers bugs --- app.js | 70 ++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 46 insertions(+), 24 deletions(-) diff --git a/app.js b/app.js index d5e1f5d..361bef2 100644 --- a/app.js +++ b/app.js @@ -63,31 +63,53 @@ app.get("/register", (req, res) => { app.post("/auth/register", (req, res) => { const { gender, name, firstname, nickname, title, email, password, password_confirm, session, role } = req.body - db.query('SELECT email FROM user WHERE email = ? OR nickname = ?', [email, nickname], async (error, result) => { - if(error){ - console.log(error) - } - if( result.length > 0 ) { - return res.render('register', { - error: 'Adresse email ou pseudo déjà utilisé : modifiez votre saisie ou bien cliquez sur le lien ci-dessus pour vous connecter', - session: session, role: role - }) - } else if(password !== password_confirm) { - return res.render('register', { - error: 'Vos mots de passe ne correspondent pas', - session: session, role: role - }) - } + let requete = ''; + if (nickname != '') { + requete = "SELECT * FROM user WHERE UPPER(nickname) = '?'".replace("?", nickname.toUpperCase()); + } + if (email != '') { + requete = "SELECT * FROM user WHERE UPPER(email) = '?'".replace("?", email.toUpperCase()); + } - let hashedPassword = await bcrypt.hash(password, 8); - db.query('INSERT INTO user SET?', {gender : (gender != undefined ? gender : ""), firstname: firstname, name: name, title: title, email: email, nickname : nickname, password: hashedPassword}, (err, result) => { - if(error) { + if (requete.length > 0) { + let topic, sessionDate; + + db.query(requete, async (error, result) => { + if(error){ console.log(error) - } else { - return res.render('login', { session: session, role: role, email: email, nickname: nickname }) } - }) - }) + if( result.length > 0 ) { + return res.render('register', { + error: 'Adresse email ou pseudo déjà utilisé : modifiez votre saisie ou bien cliquez sur le lien ci-dessus pour vous connecter', + session: session, role: role + }) + } else if(password !== password_confirm) { + return res.render('register', { + error: 'Vos mots de passe ne correspondent pas', + session: session, role: role + }) + } + + db.query('SELECT topic, DATE_FORMAT(scheduled_on, "%d/%m/%Y %H:%i") as "date" FROM session WHERE id = ?', [session], (err, result) => { + if(error){ + console.log(error) + } + if( result.length > 0 ) { + topic = result[0].topic; + sessionDate = result[0].date; + } + }) + + let hashedPassword = await bcrypt.hash(password, 8); + db.query('INSERT INTO user SET?', {gender : (gender != undefined ? gender : ""), firstname: firstname, name: name, title: title, email: email, nickname : nickname, password: hashedPassword}, (err, result) => { + if(error) { + console.log(error) + } else { + return res.render('login', { session: session, role: role, email: email, nickname: nickname, topic: topic, session_date: sessionDate }) + } + }) + }) + } }) // ******************************************* Connexion sur le compte utilisateur ******************************************* @@ -139,10 +161,10 @@ app.post("/auth/check-login", (req, res) => { }) if (role == 'A') { - res.redirect('https://mia.thecoredev.fr'); + res.redirect('https://slave.thecoredev.fr'); } else { - res.redirect('https://mia.thecoredev.fr'); + res.redirect('https://slave.thecoredev.fr'); } } else {