diff --git a/src/middlewares/auth/authenticated.ts b/src/middlewares/auth/authenticated.ts index 503fa2a3a54dd13ee9c419a1ebad43f1b448619a..44d6052bc41aab725509b240d465c8bf9d0b24b7 100644 --- a/src/middlewares/auth/authenticated.ts +++ b/src/middlewares/auth/authenticated.ts @@ -5,10 +5,15 @@ const authenticated = () => ( res: Response, next: NextFunction ) => { - if (req.session!.user) next(); - else { + if (req.session!.user) { + if (req.session!.user.isRegistered) next(); + else { + res.status(401); + res.json({ message: "You have to register to see this page!" }); + } + } else { res.status(401); - res.json({ message: "You have to login to see this page" }); + res.json({ message: "You have to login to see this page!" }); } }; diff --git a/src/middlewares/user/addUser.ts b/src/middlewares/user/addUser.ts index 74eceb9e215da9cb3ae2d4bbe34fbb144166ab52..b19dd88a6d529a20c1a440b68f645fbffd6f5336 100644 --- a/src/middlewares/user/addUser.ts +++ b/src/middlewares/user/addUser.ts @@ -8,6 +8,10 @@ const addUser = () => async ( res: Response, next: NextFunction ) => { + if (!req.session!.user) { + return res.status(401).json({ message: "You have to login to register!" }); + } + // Already registered if (req.session?.user?.isRegistered) { await Profile.findOne( diff --git a/src/routes/user.ts b/src/routes/user.ts index eb3dbfa73868a5c3f671b0011b5c14e5e5f8208b..62ca838fba079a41c32dfeeeb5745bc2d67d5f1e 100644 --- a/src/routes/user.ts +++ b/src/routes/user.ts @@ -18,7 +18,7 @@ import updateWarning from "../middlewares/user/updateWarning"; const usersRoute = (app: Application): void => { app.get("/api/v1/users", authenticated(), getUsersList(), responseUserList()); - app.post("/api/v1/users", authenticated(), addUser(), responseUser()); + app.post("/api/v1/users", addUser(), responseUser()); app.get("/api/v1/users/me", authenticated(), getOwnUser(), responseUser());