diff --git a/apps/backend/src/api/routes/public.controller.ts b/apps/backend/src/api/routes/public.controller.ts index 6f3380ae..dc4d16fc 100644 --- a/apps/backend/src/api/routes/public.controller.ts +++ b/apps/backend/src/api/routes/public.controller.ts @@ -77,6 +77,8 @@ export class PublicController { }); } - res.status(200).send(); + res.status(200).json({ + track: uniqueId, + }); } } diff --git a/apps/backend/src/api/routes/users.controller.ts b/apps/backend/src/api/routes/users.controller.ts index 3c2f1a8d..31345ad6 100644 --- a/apps/backend/src/api/routes/users.controller.ts +++ b/apps/backend/src/api/routes/users.controller.ts @@ -238,6 +238,8 @@ export class UsersController { } console.log('hello'); - res.status(200).send(); + res.status(200).json({ + track: uniqueId, + }); } } diff --git a/libraries/react-shared-libraries/src/helpers/use.track.tsx b/libraries/react-shared-libraries/src/helpers/use.track.tsx index 0099f31e..41cf973c 100644 --- a/libraries/react-shared-libraries/src/helpers/use.track.tsx +++ b/libraries/react-shared-libraries/src/helpers/use.track.tsx @@ -7,7 +7,7 @@ import { useVariables } from '@gitroom/react/helpers/variable.context'; export const useTrack = () => { const user = useUser(); const fetch = useFetch(); - const {facebookPixel} = useVariables(); + const { facebookPixel } = useVariables(); return useCallback( async (track: TrackEnum, additional?: Record) => { @@ -16,22 +16,24 @@ export const useTrack = () => { } try { + const { track: uq } = await ( + await fetch(user ? `/user/t` : `/public/t`, { + method: 'POST', + credentials: 'include', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify({ + tt: track, + ...(additional ? { additional } : {}), + }), + }) + ).json(); + if (window.fbq) { // @ts-ignore - window.fbq('track', TrackEnum[track], additional); + window.fbq('track', TrackEnum[track], additional, {eventID: uq}); } - - await fetch(user ? `/user/t` : `/public/t`, { - method: 'POST', - credentials: 'include', - headers: { - 'Content-Type': 'application/json', - }, - body: JSON.stringify({ - tt: track, - ...(additional ? { additional } : {}), - }), - }); } catch (e) { console.log(e); }