Files
ocean-cleanup/server/src/routes/userRoutes.ts
Paul Bailey bee80be87d fix: add support for Clerk IDs and activity endpoint
- Update getUserProfile to accept both database ID and Clerk ID
- Update getUserReports to handle Clerk IDs
- Update getUserEvents to handle Clerk IDs
- Add getUserActivity endpoint to return timeline of user actions
- Add activity route GET /api/users/:id/activity
- Fix TypeScript errors with const assertions

This fixes 404 errors when frontend uses Clerk IDs to fetch user data
2025-11-16 21:39:38 +00:00

23 lines
923 B
TypeScript

import { Router } from 'express';
import { userController } from '../controllers/userController';
import { requireAuth } from '../middleware/auth';
const router = Router();
// User profile endpoints
router.get('/:id', userController.getUserProfile.bind(userController));
router.patch('/:id', requireAuth, userController.updateUserProfile.bind(userController));
// User reports and events
router.get('/:id/reports', userController.getUserReports.bind(userController));
router.get('/:id/events', userController.getUserEvents.bind(userController));
router.get('/:id/activity', userController.getUserActivity.bind(userController));
// Notification preferences
router.patch('/:id/preferences', requireAuth, userController.updateNotificationPreferences.bind(userController));
// Impact score calculation
router.post('/:id/calculate-impact', userController.calculateImpactScore.bind(userController));
export default router;