/** * Copyright (c) 2026 Niolla * All rights reserved. * * This source code is proprietary and confidential. * Unauthorized copying, modification, distribution, or use * of this file, via any medium, is strictly prohibited. */ // app/routes/profile.routes.js const express = require("express"); const router = express.Router(); const profileController = require("../controllers/profile.controller.js"); const { authenticate } = require("../middleware/auth.middleware"); const { authorizedAccountType, checkPermission, } = require("../middleware/permission.middleware"); const PERMISSIONS = require("../constants/permissions"); const { sensitiveLimiter } = require("../middleware/rateLimit.middleware"); router.post("/req-reset-password", sensitiveLimiter, profileController.requestPasswordReset); router.post("/reset-password", sensitiveLimiter, profileController.resetPassword); router.post( "/change-password", authenticate, authorizedAccountType(["admin", "management", "team_head", "user"]), profileController.changePassword, ); router.get( "/avatar/:userId", authenticate, authorizedAccountType(["admin", "management", "team_head", "user"]), profileController.getProfileAvatar, ); router.get( "/background/:userId", authenticate, authorizedAccountType(["admin", "management", "team_head", "user"]), profileController.getProfileBackgroundImage, ); module.exports = router;