Refactor 4 with bugfixes

This commit is contained in:
2026-03-04 03:56:23 +01:00
parent be91b6dfe8
commit 0ed9ca93d3
51 changed files with 1552 additions and 996 deletions

View File

@@ -0,0 +1,33 @@
import { Router } from 'express';
import { JoinRequestPayload } from '../cqrs/types';
import {
getJoinRequestById,
getServerById,
updateJoinRequestStatus
} from '../cqrs';
import { notifyUser } from '../websocket/broadcast';
const router = Router();
router.put('/:id', async (req, res) => {
const { id } = req.params;
const { ownerId, status } = req.body;
const request = await getJoinRequestById(id);
if (!request)
return res.status(404).json({ error: 'Request not found' });
const server = await getServerById(request.serverId);
if (!server || server.ownerId !== ownerId)
return res.status(403).json({ error: 'Not authorized' });
await updateJoinRequestStatus(id, status as JoinRequestPayload['status']);
const updated: JoinRequestPayload = { ...request, status };
notifyUser(request.userId, { type: 'request_update', request: updated });
res.json(updated);
});
export default router;