From 5d797f5394d08bb29fef4994189c157d8f4d5ca7 Mon Sep 17 00:00:00 2001 From: Marco Beretta <81851188+berry-13@users.noreply.github.com> Date: Sun, 7 Dec 2025 04:04:26 +0100 Subject: [PATCH] feat: enhance terms acceptance response to include acceptance timestamp --- api/server/controllers/UserController.js | 5 ++++- client/src/data-provider/mutations.ts | 2 +- packages/data-provider/src/types.ts | 3 ++- 3 files changed, 7 insertions(+), 3 deletions(-) diff --git a/api/server/controllers/UserController.js b/api/server/controllers/UserController.js index 2ce4378eec..4aa102fe44 100644 --- a/api/server/controllers/UserController.js +++ b/api/server/controllers/UserController.js @@ -97,7 +97,10 @@ const acceptTermsController = async (req, res) => { if (!user) { return res.status(404).json({ message: 'User not found' }); } - res.status(200).json({ message: 'Terms accepted successfully' }); + res.status(200).json({ + message: 'Terms accepted successfully', + termsAcceptedAt: user.termsAcceptedAt, + }); } catch (error) { logger.error('Error accepting terms:', error); res.status(500).json({ message: 'Error accepting terms' }); diff --git a/client/src/data-provider/mutations.ts b/client/src/data-provider/mutations.ts index 9229b0fc3e..f93d676ef4 100644 --- a/client/src/data-provider/mutations.ts +++ b/client/src/data-provider/mutations.ts @@ -1043,7 +1043,7 @@ export const useAcceptTermsMutation = ( onSuccess: (data, variables, context) => { queryClient.setQueryData([QueryKeys.userTerms], { termsAccepted: true, - termsAcceptedAt: new Date().toISOString(), + termsAcceptedAt: data.termsAcceptedAt, }); options?.onSuccess?.(data, variables, context); }, diff --git a/packages/data-provider/src/types.ts b/packages/data-provider/src/types.ts index a7fc8a06dc..8bef61e401 100644 --- a/packages/data-provider/src/types.ts +++ b/packages/data-provider/src/types.ts @@ -659,7 +659,8 @@ export type TUserTermsResponse = { }; export type TAcceptTermsResponse = { - success: boolean; + message: string; + termsAcceptedAt: Date | string; }; export type TBannerResponse = TBanner | null;