diff --git a/server/Controllers/AuthController.js b/server/Controllers/AuthController.js index eb81d20..97e812d 100644 --- a/server/Controllers/AuthController.js +++ b/server/Controllers/AuthController.js @@ -4,13 +4,13 @@ const bcrypt = require("bcryptjs"); module.exports.Signup = async (req, res, next) => { try { - const { email, password, username, createdAt,role } = req.body; - - const existingUser = await User.findOne({ email }); + const { email, password, username, createdAt, role } = req.body; + + const existingUser = await User.findOne({ username, email }); if (existingUser) { return res.json({ message: "User already exists" }); } - const user = await User.create({ email, password, username, createdAt ,role}); + const user = await User.create({ email, password, username, createdAt, role }); const token = createSecretToken(user._id); res.cookie("token", token, { withCredentials: true, @@ -18,7 +18,7 @@ module.exports.Signup = async (req, res, next) => { }); res .status(201) - .json({ message: "User signed in successfully", success: true, token }); + .json({ message: "User signed in successfully", success: true, token }); next(); } catch (error) { console.error(error); @@ -28,27 +28,27 @@ module.exports.Signup = async (req, res, next) => { module.exports.Login = async (req, res, next) => { try { const { email, password } = req.body; - if(!email || !password ){ - return res.json({message:'All fields are required'}) + if (!email || !password) { + return res.json({ message: 'All fields are required' }) } const user = await User.findOne({ email }); - if(!user){ - return res.json({message:'Incorrect password or email' }) + if (!user) { + return res.json({ message: 'Incorrect password or email' }) } - const auth = await bcrypt.compare(password,user.password) + const auth = await bcrypt.compare(password, user.password) if (!auth) { - return res.json({message:'Incorrect password or email' }) + return res.json({ message: 'Incorrect password or email' }) } - const token = createSecretToken(user._id); - - res.cookie("token", token, { - withCredentials: true, - httpOnly: false, - }); - - - res.status(201).json({ message: "User logged in successfully", success: true ,token }); - next() + const token = createSecretToken(user._id); + + res.cookie("token", token, { + withCredentials: true, + httpOnly: false, + }); + + + res.status(201).json({ message: "User logged in successfully", success: true, token }); + next() } catch (error) { console.error(error); } diff --git a/server/Controllers/UserController.js b/server/Controllers/UserController.js index efee60d..2a130d7 100644 --- a/server/Controllers/UserController.js +++ b/server/Controllers/UserController.js @@ -1,6 +1,7 @@ const User = require("../Models/UserModel"); module.exports.getAllUsers = async (req, res) => { + try { console.log("hello") const users = await User.find({}); diff --git a/server/Models/UserModel.js b/server/Models/UserModel.js index 8c72e89..2a8456f 100644 --- a/server/Models/UserModel.js +++ b/server/Models/UserModel.js @@ -10,6 +10,7 @@ const userSchema = new mongoose.Schema({ username: { type: String, required: [true, "Your username is required"], + unique: true }, password: { type: String, @@ -17,7 +18,7 @@ const userSchema = new mongoose.Schema({ }, role: { type: String, - enum: ["admin", "user","student"], // Example roles + enum: ["admin", "user", "student"], // Example roles default: "user", }, createdAt: { diff --git a/server/app.js b/server/app.js index 50ce8d8..5f81961 100644 --- a/server/app.js +++ b/server/app.js @@ -8,7 +8,7 @@ const StudentRoute = require("./Routes/StudentRoutes"); const SubjectRoute = require('./Routes/SubjectRoutes'); const StudentElectiveSubjectRoute = require('./Routes/StudentElectiveSubjectRoutes'); const { authMiddleware } = require("./Middleware/AuthMiddleware"); -const axios =require('axios') +const axios = require('axios') require("dotenv").config(); const { MONGO_URL, PORT } = process.env; @@ -52,9 +52,9 @@ app.use( authMiddleware(["admin", "user", "student"]), StudentElectiveSubjectRoute ); -app.use("/student", authMiddleware(["admin", "user","student"]), StudentRoute); -app.use("/subject", authMiddleware(["admin", "user","student"]), SubjectRoute); -app.get("/yaae", authMiddleware(["admin", "user","student"]), (req, res) => { +app.use("/student", authMiddleware(["admin", "user", "student"]), StudentRoute); +app.use("/subject", authMiddleware(["admin", "user", "student"]), SubjectRoute); +app.get("/yaae", authMiddleware(["admin", "user", "student"]), (req, res) => { res.json({ status: true, user: req.user }); }); @@ -72,7 +72,7 @@ app.post("/subscribe-newsletter", async (req, res) => { publicationId, } ); -console.log(response); + console.log(response); // Handle the response from the API call if (response.status === 200) { res.status(200).json({ message: "Subscribed to the newsletter successfully!" });