-
-
Notifications
You must be signed in to change notification settings - Fork 12
/
Copy pathevents.js
37 lines (28 loc) · 920 Bytes
/
events.js
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
import express from "express";
import {
createEvent,
editEvent,
deleteEvent,
getAllEvents,
getEventById,
registerToEvent,
unregisterFromEvent,
} from "../controllers/events-controller.js";
import { authenticateJWT } from "../util/auth.js";
import { upload } from "../util/upload.js";
const router = express.Router();
// Create a new event
router.post("/", authenticateJWT, upload.single("image"), createEvent);
// Get all events
router.get("/", getAllEvents);
// Get event by ID
router.get("/:id", getEventById);
// Edit an event by ID
router.put("/:id", authenticateJWT, upload.single("image"), editEvent);
// Delete an event by ID
router.delete("/:id", authenticateJWT, deleteEvent);
// Register to an event
router.post("/:id/register", authenticateJWT, registerToEvent);
// Unregister from an event
router.delete("/:id/unregister", authenticateJWT, unregisterFromEvent);
export default router;