Files
Checkmate/Server/routes/authRoute.js
Alex Holliday aed4881eac Fix rest verbs
2024-08-02 11:54:46 -07:00

50 lines
1.4 KiB
JavaScript

const router = require("express").Router();
const { verifyJWT } = require("../middleware/verifyJWT");
const { verifyAdmin } = require("../middleware/verifyAdmin");
const { verifyOwnership } = require("../middleware/verifyOwnership");
const multer = require("multer");
const upload = multer();
const User = require("../models/user");
const {
registerController,
loginController,
userEditController,
recoveryRequestController,
validateRecoveryTokenController,
resetPasswordController,
checkAdminController,
getAllUsersController,
deleteUserController,
inviteController,
inviteVerifyController,
} = require("../controllers/authController");
//Auth routes
router.post("/register", upload.single("profileImage"), registerController);
router.post("/login", loginController);
router.put(
"/user/:userId",
upload.single("profileImage"),
verifyJWT,
userEditController
);
router.get("/users/admin", checkAdminController);
router.get("/users", verifyJWT, verifyAdmin, getAllUsersController);
router.delete(
"/user/:userId",
verifyJWT,
verifyOwnership(User, "userId"),
deleteUserController
);
router.post("/invite", verifyJWT, inviteController);
router.post("/invite/verify", inviteVerifyController);
//Recovery routes
router.post("/recovery/request", recoveryRequestController);
router.post("/recovery/validate", validateRecoveryTokenController);
router.post("/recovery/reset/", resetPasswordController);
module.exports = router;