Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 | 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x 1x | const express = require("express");
const campaignController = require("../controllers/campaignController");
const { validateRequest } = require("../middleware/validationMiddleware");
const {
createCampaingSchema,
updateCampaingSchema,
} = require("../utils/validationSchema");
const {
loginSignupLimiter,
campaignLimiter,
} = require("../middleware/rateLimitMiddleware");
const { authMiddleware } = require("../middleware/authMiddleware");
const { upload } = require("../middleware/multerMiddleware");
const router = express.Router();
// GET route for fetching all campaign records
router.get(
"/",
authMiddleware,
campaignLimiter,
campaignController.listCampaigns,
);
// Get route for fetching single campaign record
router.get(
"/:id",
authMiddleware,
campaignLimiter,
campaignController.listOneCampaign,
);
// POST route for creating a new campaign
router.post(
"/",
upload.fields([
{
name: "postcard_front_img",
maxCount: 1,
},
{
name: "company_logo",
maxCount: 1,
},
]),
authMiddleware,
campaignLimiter,
validateRequest(createCampaingSchema),
campaignController.createCampaign,
);
// PUT route for updating a campaign
router.put(
"/:id",
authMiddleware,
campaignLimiter,
upload.none(),
validateRequest(updateCampaingSchema),
campaignController.updateCampaign,
);
// DELETE route for deleting the campaign
router.delete(
"/:id",
authMiddleware,
campaignLimiter,
campaignController.deleteCampaign,
);
module.exports = router;
|