backend_adaptive_learning/routes/contents/exercise.js
2024-09-19 17:04:18 +07:00

36 lines
1.9 KiB
JavaScript

import express from "express";
import { getExercises, getExercisesForAdmin, getExerciseById, getExerciseByLevelId, deleteExerciseById, deleteExerciseFileById } from "../../controllers/contentControllers/exercise.js";
import { createMultipleChoicesExercise, updateMultipleChoicesExerciseById } from "../../controllers/exerciseTypesControllers/multipleChoices.js";
import { createMatchingPairsExercise, updateMatchingPairsExerciseById } from "../../controllers/exerciseTypesControllers/matchingPairs.js";
import { createTrueFalseExercise, updateTrueFalseExerciseById } from "../../controllers/exerciseTypesControllers/trueFalse.js";
import { verifyLoginUser, adminOnly } from "../../middlewares/User/authUser.js";
import handleUpload from '../../middlewares/uploadExercise.js';
const router = express.Router();
router.get("/exercise", verifyLoginUser, getExercises);
router.get("/exercise/admin", verifyLoginUser, adminOnly, getExercisesForAdmin);
router.get("/exercise/level/:idLevel", verifyLoginUser, getExerciseByLevelId);
router.get("/exercise/:id", verifyLoginUser, getExerciseById);
router.post("/exercise/multiple-choices", verifyLoginUser, adminOnly, handleUpload, createMultipleChoicesExercise);
router.post("/exercise/matching-pairs", verifyLoginUser, adminOnly, handleUpload, createMatchingPairsExercise);
router.post("/exercise/true-false", verifyLoginUser, adminOnly, handleUpload, createTrueFalseExercise);
router.put("/exercise/multiple-choices/:id", verifyLoginUser, adminOnly, handleUpload, updateMultipleChoicesExerciseById);
router.put("/exercise/matching-pairs/:id", verifyLoginUser, adminOnly, handleUpload, updateMatchingPairsExerciseById);
router.put("/exercise/true-false/:id", verifyLoginUser, adminOnly, handleUpload, updateTrueFalseExerciseById);
router.delete("/exercise/:id", verifyLoginUser, adminOnly, deleteExerciseById);
router.delete("/exercise/file/:id", verifyLoginUser, adminOnly, deleteExerciseFileById);
export default router