You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

21 lines
1.1 KiB

import { Router } from "express";
import {addLogger} from "../middlewares/logger.middleware.js";
import {isTokenValid} from "../middlewares/jwt.middleware.js";
import {del, getById, getByVideo, update, upload} from "../controllers/comment.controller.js";
import {Comment, CommentCreate, doCommentExists, isAuthor} from "../middlewares/comment.middleware.js";
import validator from "../middlewares/error.middleware.js";
import {doVideoExists, doVideoExistsParam, Video} from "../middlewares/video.middleware.js";
const router = Router();
router.post("/", [addLogger, isTokenValid, CommentCreate.content, CommentCreate.video, validator, doVideoExists], upload);
router.get("/video/:id", [addLogger, isTokenValid, Video.id, doVideoExistsParam], getByVideo);
router.get("/:id", [addLogger, isTokenValid, Comment.id, validator, doCommentExists], getById);
router.put("/:id", [addLogger, isTokenValid, Comment.id, CommentCreate.content, CommentCreate.video,validator, doVideoExists, doCommentExists, isAuthor], update);
router.delete("/:id", [addLogger, isTokenValid, Comment.id, validator, doCommentExists, isAuthor], del);
export default router;