diff --git a/controllers/authController.js b/controllers/authController.js index fd33a5c9b54e1fddbc59fcfe79a73bb0e515ae11..b1f6306f6b5238a6911bbdccffd0d6a572a42999 100644 --- a/controllers/authController.js +++ b/controllers/authController.js @@ -1,50 +1,50 @@ -// const db = require('../config/database'); -// const bcrypt = require('bcryptjs'); - -// exports.register = async (req, res) => { -// const { name, email, password } = req.body; - -// try { -// const [existingUser] = await db.query('SELECT * FROM users WHERE email = ?', [email]); -// if (existingUser.length > 0) { -// return res.status(400).json({ message: 'Email นี้ถูกใช้ไปแล้ว' }); -// } - -// const hashedPassword = await bcrypt.hash(password, 10); -// await db.query('INSERT INTO users (name, email, password) VALUES (?, ?, ?)', [name, email, hashedPassword]); - -// res.status(201).json({ message: 'ลงทะเบียนสำเร็จ' }); -// } catch (error) { -// res.status(500).json({ message: 'เกิดข้อผิดพลาด', error }); -// } -// }; - -// exports.login = async (req, res) => { -// const { email, password } = req.body; - -// try { -// const [user] = await db.query('SELECT * FROM users WHERE email = ?', [email]); -// if (user.length === 0) { -// return res.status(400).json({ message: 'อีเมลหรือรหัสผ่านไม่ถูกต้อง' }); -// } - -// const isMatch = await bcrypt.compare(password, user[0].password); -// if (!isMatch) { -// return res.status(400).json({ message: 'อีเมลหรือรหัสผ่านไม่ถูกต้อง' }); -// } - -// // เก็บ session หลังจากล็อกอิน -// req.session.userId = user[0].id; -// req.session.userEmail = user[0].email; - -// res.status(200).json({ message: 'เข้าสู่ระบบสำเร็จ' }); -// } catch (error) { -// res.status(500).json({ message: 'เกิดข้อผิดพลาด', error }); -// } -// }; - -// exports.logout = (req, res) => { -// req.session.destroy(() => { -// res.json({ message: 'ออกจากระบบสำเร็จ' }); -// }); -// }; +const db = require('../config/database'); +const bcrypt = require('bcryptjs'); + +exports.register = async (req, res) => { + const { name, email, password } = req.body; + + try { + const [existingUser] = await db.query('SELECT * FROM users WHERE email = ?', [email]); + if (existingUser.length > 0) { + return res.status(400).json({ message: 'Email นี้ถูกใช้ไปแล้ว' }); + } + + const hashedPassword = await bcrypt.hash(password, 10); + await db.query('INSERT INTO users (name, email, password) VALUES (?, ?, ?)', [name, email, hashedPassword]); + + res.status(201).json({ message: 'ลงทะเบียนสำเร็จ' }); + } catch (error) { + res.status(500).json({ message: 'เกิดข้อผิดพลาด', error }); + } +}; + +exports.login = async (req, res) => { + const { email, password } = req.body; + + try { + const [user] = await db.query('SELECT * FROM users WHERE email = ?', [email]); + if (user.length === 0) { + return res.status(400).json({ message: 'อีเมลหรือรหัสผ่านไม่ถูกต้อง' }); + } + + const isMatch = await bcrypt.compare(password, user[0].password); + if (!isMatch) { + return res.status(400).json({ message: 'อีเมลหรือรหัสผ่านไม่ถูกต้อง' }); + } + + // เก็บ session หลังจากล็อกอิน + req.session.userId = user[0].id; + req.session.userEmail = user[0].email; + + res.status(200).json({ message: 'เข้าสู่ระบบสำเร็จ' }); + } catch (error) { + res.status(500).json({ message: 'เกิดข้อผิดพลาด', error }); + } +}; + +exports.logout = (req, res) => { + req.session.destroy(() => { + res.json({ message: 'ออกจากระบบสำเร็จ' }); + }); +}; diff --git a/controllers/tourController.js b/controllers/tourController.js index 34b937eb330a5047c06c7c6b6eeeff62923d004f..e8f29eab8efcc8f9ad44cb808cd565fffc8bdee4 100644 --- a/controllers/tourController.js +++ b/controllers/tourController.js @@ -1,23 +1,20 @@ -const db = require('../config/db'); +const Tour = require('../models/tourModel'); -class Tour { - static async getAllTours() { - try { - const [rows] = await db.query('SELECT * FROM tours'); - return rows; - } catch (error) { - throw error; - } +exports.getTours = async (req, res) => { + try { + const tours = await Tour.getAllTours(); + res.render('index', { tours }); + } catch (error) { + res.status(500).send('เกิดข้อผิดพลาด'); } +}; - static async getTourById(id) { - try { - const [rows] = await db.query('SELECT * FROM tours WHERE id = ?', [id]); - return rows.length > 0 ? rows[0] : null; - } catch (error) { - throw error; - } +exports.getTourDetails = async (req, res) => { + try { + const tour = await Tour.getTourById(req.params.id); + if (!tour) return res.status(404).send('ไม่พบข้อมูล'); + res.render('tour-details', { tour }); + } catch (error) { + res.status(500).send('เกิดข้อผิดพลาด'); } -} - -module.exports = Tour; +}; diff --git a/routes/bookingRoutes.js b/routes/bookingRoutes.js deleted file mode 100644 index 79e62bc8f3c8b049e142eda77548282948944072..0000000000000000000000000000000000000000 --- a/routes/bookingRoutes.js +++ /dev/null @@ -1,10 +0,0 @@ -const express = require('express'); -const { isAuthenticated } = require('../middlewares/authMiddleware'); - -const router = express.Router(); - -router.post('/create', isAuthenticated, (req, res) => { - res.json({ message: 'จองทัวร์สำเร็จ!' }); -}); - -module.exports = router;