diff --git a/app.js b/app.js index 602136b..d5e1f5d 100644 --- a/app.js +++ b/app.js @@ -5,7 +5,8 @@ const app = express() const path = require("path") const publicDir = path.join(__dirname, './public') const bcrypt = require("bcryptjs") -var bodyParser = require('body-parser') +const bodyParser = require('body-parser') +const dateFormat = require('dateformat'); /* Connexion à la BDD MySQL */ @@ -28,13 +29,9 @@ db.connect((error) => { app.set('view engine', 'hbs'); app.use(express.static(publicDir)); app.use('/css', express.static(__dirname + '/node_modules/bootstrap/dist/css')); - -/* configure the Express.js server to receive the form values as JSON */ app.use(bodyParser.urlencoded({extended: false})); app.use(express.json()) -const dateFormat = require('dateformat'); - // ******************************************* Arrivée sur la page d'accueil ******************************************* app.get("/", (req, res) => { @@ -55,35 +52,39 @@ app.get("/", (req, res) => { }) }); -app.get("/login", (req, res) => { res.render("login") }); -app.get("/register", (req, res) => { res.render("register") }); -app.get("/index", (req, res) => { res.render("index") }); + app.get("/index", (req, res) => { res.render("index") }); + app.get("/login", (req, res) => { res.render("login") }); +app.get("/register", (req, res) => { + res.render("register", { session: req.query.s, role: req.query.r}) +}); // ******************************************* Création d'un nouveau compte ******************************************* app.post("/auth/register", (req, res) => { - const { gender, name, firstname, nickname, dob, title, email, password, password_confirm, session, role } = req.body + const { gender, name, firstname, nickname, title, email, password, password_confirm, session, role } = req.body - db.query('SELECT email FROM user WHERE email = ?', [email], async (error, result) => { + 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 déjà utilisée : choisissez-en une autre ou bien cliquez sur le lien ci-dessus pour vous connecter' + 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' + error: 'Vos mots de passe ne correspondent pas', + session: session, role: role }) } - let hashedPassword = await bcrypt.hash(password, 8) - db.query('INSERT INTO user SET?', {gender : (gender != undefined ? gender : ""), firstname: firstname, name: name, date_of_birth: dob, title: title, email: email, password: hashedPassword}, (err, result) => { + 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') + return res.render('login', { session: session, role: role, email: email, nickname: nickname }) } }) }) diff --git a/views/login.hbs b/views/login.hbs index 8b0faae..c09e37d 100644 --- a/views/login.hbs +++ b/views/login.hbs @@ -27,11 +27,11 @@
- +
- +
@@ -40,7 +40,7 @@
- Pas encore inscrit ? Cliquez ici pour vous enregistrer. + Pas encore inscrit ? Cliquez ici pour vous enregistrer. {{#if error }} diff --git a/views/register.hbs b/views/register.hbs index 203d46a..54a2c99 100644 --- a/views/register.hbs +++ b/views/register.hbs @@ -16,7 +16,9 @@
Veuillez vous enregistrer
-
+ + +
@@ -40,11 +42,7 @@
-
- - -
-
+