Files
ocean-cleanup/server/src/routes/eventRoutes.ts
Paul Bailey c1f362a604 Implement event completion workflow (Task 14)
- Add completeEvent endpoint to backend API
- Create EventCompletionForm component with litter quantity input and photo upload
- Update EventDetailModal to show completion form for organizers
- Add isOrganizer check in EventsPage
- Update event service to support completion
- Display completion data (litter collected, photos) for completed events
2025-11-16 20:21:47 +00:00

22 lines
941 B
TypeScript

import { Router } from 'express';
import { eventController } from '../controllers/eventController';
import { requireAuth } from '../middleware/auth';
const router = Router();
// Public routes
router.get('/', eventController.getEvents);
router.get('/:id', eventController.getEvent);
router.get('/:id/registrations', eventController.getEventRegistrations);
// Protected routes (require authentication)
router.post('/', requireAuth, eventController.createEvent);
router.patch('/:id', requireAuth, eventController.updateEvent);
router.delete('/:id', requireAuth, eventController.deleteEvent);
router.post('/:id/register', requireAuth, eventController.registerForEvent);
router.delete('/:id/register', requireAuth, eventController.unregisterFromEvent);
router.get('/:id/registration-status', requireAuth, eventController.getRegistrationStatus);
router.post('/:id/complete', requireAuth, eventController.completeEvent);
export default router;