From f4f6f490ab0bb1a2a06d660ce1b276a4fad9d2c2 Mon Sep 17 00:00:00 2001 From: Daniel Andreas Wang Date: Sat, 14 Mar 2026 15:37:31 +0100 Subject: first commit --- backend/src/controllers/user.controller.js | 33 ++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) create mode 100644 backend/src/controllers/user.controller.js (limited to 'backend/src/controllers') diff --git a/backend/src/controllers/user.controller.js b/backend/src/controllers/user.controller.js new file mode 100644 index 0000000..b5d2048 --- /dev/null +++ b/backend/src/controllers/user.controller.js @@ -0,0 +1,33 @@ +import { User } from '../models/user.model.js' + +const registerUser = async (req, res) => { + try { + const { username, email, password } = req.body + + if (!username || !email || !password) { + return res.status(400).json({ message: 'All fields are important!'}) + } + + const existing = await User.findOne({ email: email.toLowerCase() }) + if (existing) { + return res.status(400).json({ message: 'User already exists.'}) + } + + const user = await User.create({ + username, + email: email.toLowerCase(), + password, + }) + + res.status(201).json({ + message: 'User registered.', + user: { id: user._id, email: user.email, username: user.username } + }) + } catch (error) { + res.status(500).json({ message: 'Internal server error!', error: error.message }) + } +} + +export { + registerUser +} -- cgit