From 9fdf74373aaa8de2c2be2886565f37e9d903ee4a Mon Sep 17 00:00:00 2001 From: Atiwit Pattanapukdee <65160394@go.buu.ac.th> Date: Sun, 16 Mar 2025 18:14:41 +0700 Subject: [PATCH] Project Round 2 --- models/tourModel.js | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/models/tourModel.js b/models/tourModel.js index d02fe49..ce553ba 100644 --- a/models/tourModel.js +++ b/models/tourModel.js @@ -12,27 +12,28 @@ class Tour { } } -class User { - static findOne(email, callback) { +const User = { + findOne: (email, callback) => { const query = 'SELECT * FROM users WHERE email = ?'; db.query(query, [email], (err, results) => { if (err) return callback(err); - callback(null, results[0] || null); // คืนค่า null หากไม่มีผู้ใช้ + callback(null, results.length > 0 ? results[0] : null); }); - } + }, - static create(name, email, password, callback) { - const query = 'INSERT INTO users (name, email, password) VALUES (?, ?, ?)'; + create: (name, email, password, callback) => { bcrypt.hash(password, 10, (err, hashedPassword) => { if (err) return callback(err); + + const query = 'INSERT INTO users (name, email, password) VALUES (?, ?, ?)'; db.query(query, [name, email, hashedPassword], (err, results) => { if (err) return callback(err); callback(null, results.insertId); }); }); - } + }, - static comparePassword(email, password, callback) { + comparePassword: (email, password, callback) => { User.findOne(email, (err, user) => { if (err || !user) return callback(err || 'User not found'); bcrypt.compare(password, user.password, (err, isMatch) => { @@ -41,7 +42,7 @@ class User { }); }); } -} +}; module.exports = User; module.exports = Tour; -- GitLab