27 lines
793 B
TypeScript
Executable File
27 lines
793 B
TypeScript
Executable File
import { Router } from "express";
|
|
import { isAllowed } from "../middleware/isAllowed.js";
|
|
import { ISettingsController } from "@/controllers/settingsController.js";
|
|
|
|
class SettingsRoutes {
|
|
private router: Router;
|
|
private settingsController: ISettingsController;
|
|
|
|
constructor(settingsController: ISettingsController) {
|
|
this.router = Router();
|
|
this.settingsController = settingsController;
|
|
this.initRoutes();
|
|
}
|
|
|
|
initRoutes() {
|
|
this.router.get("/", this.settingsController.getAppSettings);
|
|
this.router.patch("/", isAllowed(["admin", "superadmin"]), this.settingsController.updateAppSettings);
|
|
this.router.post("/test-email", isAllowed(["admin", "superadmin"]), this.settingsController.sendTestEmail);
|
|
}
|
|
|
|
getRouter() {
|
|
return this.router;
|
|
}
|
|
}
|
|
|
|
export default SettingsRoutes;
|