feat(cms): add management for partnerships, history, accreditation, admissions, and policies pages

Implement a singleton page content system to manage static informational pages. This includes:
- New controllers, models, and data files for Partnerships, History, Accreditation, Admissions, and Policies.
- Admin routes and views for updating page content.
- Public API endpoints for fetching page data.
- Migration scripts for initializing page data.
- Updated admin navigation layout to include a dropdown for "About" sections.
- Audit action constants for tracking updates to these pages.
This commit is contained in:
Tống Thành Đạt
2026-04-20 14:08:38 +07:00
parent fab72e86a6
commit 8b6bf5fe6e
48 changed files with 2357 additions and 4 deletions
+10
View File
@@ -3,6 +3,11 @@ const path = require("path");
const router = express.Router();
const homeController = require("../controllers/homeController");
const aboutUsController = require("../controllers/aboutUsController");
const partnershipsController = require("../controllers/partnershipsController");
const historyPageController = require("../controllers/historyPageController");
const accreditationController = require("../controllers/accreditationController");
const admissionsController = require("../controllers/admissionsController");
const policiesController = require("../controllers/policiesController");
const headerController = require("../controllers/headerController");
const socialLinkController = require("../controllers/socialLinkController");
const footerController = require("../controllers/footerController");
@@ -39,6 +44,11 @@ router.get("/api/home", homeController.api);
// API để lấy dữ liệu about
router.get("/api/about", aboutUsController.getAbout);
router.put("/api/about", aboutUsController.updateAbout);
router.get("/api/partnerships", partnershipsController.api);
router.get("/api/history", historyPageController.api);
router.get("/api/accreditation", accreditationController.api);
router.get("/api/admissions", admissionsController.api);
router.get("/api/policies", policiesController.api);
// Public about-us page and API (legacy support)
router.get("/about-us", aboutUsController.getAbout);