diff --git a/controllers/registerController.js b/controllers/registerController.js index dc7c7e9711bc1a7d6dedcae23421e78827e21512..f2b683592f2579796230b4feab68d58a31d6d99f 100644 --- a/controllers/registerController.js +++ b/controllers/registerController.js @@ -2,53 +2,23 @@ const bcrypt = require('bcrypt'); const pool = require('../db'); module.exports = { - registerUser: async (req, res) => { - const { email, username, fname, lname, rpassword, confirm_password } = req.body; - - if (rpassword !== confirm_password) { - req.flash('message', 'Passwords do not match!'); - return res.redirect('/register'); - } + showRegisterPage: (req, res) => { + res.render('register', { message: req.flash('message') }); + }, - if (!email || !username || !fname || !lname || !rpassword || !confirm_password) { - req.flash('message', 'Please fill in all fields!'); - return res.redirect('/register'); - } + registerUser: async (req, res) => { + const { email, rpassword } = req.body; try { - // ตรวจสอบว่าอีเมลมีอยู่ในระบบหรือไม่ - const [existingUser] = await pool.execute('SELECT * FROM users WHERE email = ?', [email]); - if (existingUser.length > 0) { - req.flash('message', 'Email is already registered.'); - return res.redirect('/register'); - } - - // ตรวจสอบว่า username มีอยู่แล้วหรือไม่ - const [existingUsername] = await pool.execute('SELECT * FROM users WHERE username = ?', [username]); - if (existingUsername.length > 0) { - req.flash('message', 'Username is already taken.'); - return res.redirect('/register'); - } - - // แฮชรหัสผ่าน const hashedPassword = await bcrypt.hash(rpassword, 10); + const query = 'INSERT INTO users (email, password) VALUES (?, ?)'; + await pool.execute(query, [email, hashedPassword]); - // บันทึกข้อมูลผู้ใช้ในฐานข้อมูล - const query = 'INSERT INTO users (email, username, password, fname, lname) VALUES (?, ?, ?, ?, ?)'; - const result = await pool.execute(query, [email, username, hashedPassword, fname, lname]); - - // ตรวจสอบผลลัพธ์จากการแทรกข้อมูล - if (result.affectedRows > 0) { - req.flash('message', 'Registration successful! Please log in.'); - res.redirect('/login'); - } else { - req.flash('message', 'Error occurred during registration. Please try again later.'); - res.redirect('/register'); - } + req.flash('message', 'User registered successfully. Please log in.'); + res.redirect('/login'); } catch (err) { console.error('Error inserting user:', err); - req.flash('message', 'Error occurred during registration. Please try again later.'); - res.redirect('/register'); + res.status(500).send('Error occurred'); } } };