From db2ccd0f578f887ee4e32e77fdd3b2b3ceccc0bb Mon Sep 17 00:00:00 2001 From: Helena Date: Thu, 18 Sep 2025 09:45:09 +0300 Subject: [PATCH] log page views --- .../(dashboard)/booking/[handle]/page.tsx | 21 +++++++++++++++++-- lib/services/audit/pageView.service.ts | 2 ++ 2 files changed, 21 insertions(+), 2 deletions(-) diff --git a/app/home/(user)/(dashboard)/booking/[handle]/page.tsx b/app/home/(user)/(dashboard)/booking/[handle]/page.tsx index 395b590..fa25357 100644 --- a/app/home/(user)/(dashboard)/booking/[handle]/page.tsx +++ b/app/home/(user)/(dashboard)/booking/[handle]/page.tsx @@ -1,13 +1,17 @@ +import { redirect } from 'next/navigation'; + import { HomeLayoutPageHeader } from '@/app/home/(user)/_components/home-page-header'; import { loadCategory } from '@/app/home/(user)/_lib/server/load-category'; +import { pathsConfig } from '@kit/shared/config'; import { AppBreadcrumbs } from '@kit/ui/makerkit/app-breadcrumbs'; import { Trans } from '@kit/ui/trans'; +import BookingContainer from '~/home/(user)/_components/booking/booking-container'; import { createI18nServerInstance } from '~/lib/i18n/i18n.server'; import { withI18n } from '~/lib/i18n/with-i18n'; - -import BookingContainer from '~/home/(user)/_components/booking/booking-container'; +import { PageViewAction, createPageViewLog } from '~/lib/services/audit/pageView.service'; +import { loadCurrentUserAccount } from '~/home/(user)/_lib/server/load-user-account'; export const generateMetadata = async () => { const i18n = await createI18nServerInstance(); @@ -25,11 +29,24 @@ async function BookingHandlePage({ }) { const { handle } = await params; const { category } = await loadCategory({ handle }); + const { account } = await loadCurrentUserAccount(); if (!category) { return
Category not found
; } + if (!account) { + return redirect(pathsConfig.auth.signIn); + } + + await createPageViewLog({ + accountId: account.id, + action: PageViewAction.VIEW_TTO_SERVICE_BOOKING, + extraData: { + handle, + }, + }); + return ( <>