From 065951d91fee55cd9bdcef54d85e20b0e914a634 Mon Sep 17 00:00:00 2001 From: DecDuck Date: Tue, 1 Apr 2025 21:14:39 +1100 Subject: [PATCH] fix: update last accessed client on push --- .../api/v1/client/saves/[gameid]/[slotindex]/push.post.ts | 8 +++++++- server/internal/saves/index.ts | 4 +++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/server/api/v1/client/saves/[gameid]/[slotindex]/push.post.ts b/server/api/v1/client/saves/[gameid]/[slotindex]/push.post.ts index 5e04881f..1f4552f4 100644 --- a/server/api/v1/client/saves/[gameid]/[slotindex]/push.post.ts +++ b/server/api/v1/client/saves/[gameid]/[slotindex]/push.post.ts @@ -39,7 +39,13 @@ export default defineClientEventHandler( if (!game) throw createError({ statusCode: 400, statusMessage: "Invalid game ID" }); - await saveManager.pushSave(gameId, user.id, slotIndex, h3.node.req); + await saveManager.pushSave( + gameId, + user.id, + slotIndex, + h3.node.req, + client.id + ); return; } diff --git a/server/internal/saves/index.ts b/server/internal/saves/index.ts index a70a291d..5a9d23d8 100644 --- a/server/internal/saves/index.ts +++ b/server/internal/saves/index.ts @@ -20,7 +20,8 @@ class SaveManager { gameId: string, userId: string, index: number, - stream: IncomingMessage + stream: IncomingMessage, + clientId: string | undefined = undefined ) { const save = await prisma.saveSlot.findUnique({ where: { @@ -84,6 +85,7 @@ class SaveManager { historyChecksums: { push: hash, }, + ...(clientId && { lastUsedClientId: clientId }), }, });