Merged in feat/sw-3601-hookfix (pull request #3113)

Feat(SW-3601): useIsUserLoggedIn needs to check webview token 

* fix(SW-3601): useIsUserLoggedIn needs to check webview token

* Check if we have webview token as well

* .


Approved-by: Joakim Jäderberg
This commit is contained in:
Linus Flood
2025-11-10 13:06:51 +00:00
parent 69f852a2d3
commit ce3412b29f
2 changed files with 11 additions and 7 deletions

View File

@@ -4,6 +4,7 @@ import { isValidSession } from "@scandic-hotels/trpc/utils/session"
export function useIsUserLoggedIn() { export function useIsUserLoggedIn() {
const { data: session } = useSession() const { data: session } = useSession()
const isUserLoggedIn = isValidSession(session) const hasWebviewToken = document?.cookie?.includes("webviewToken=")
return isUserLoggedIn
return isValidSession(session) || hasWebviewToken
} }

View File

@@ -23,6 +23,9 @@ export const useTrackHardNavigationBasic = ({
const sessionId = useSessionId() const sessionId = useSessionId()
const { data: session } = useSession() const { data: session } = useSession()
const validSession = isValidSession(session) const validSession = isValidSession(session)
const hasWebviewToken = global?.document?.cookie?.includes("webviewToken=")
const isUserLoggedIn = validSession || !!hasWebviewToken
useEffect(() => { useEffect(() => {
if (hasTrackedHardNavigationBasic) return if (hasTrackedHardNavigationBasic) return
@@ -31,23 +34,23 @@ export const useTrackHardNavigationBasic = ({
pathName, pathName,
sessionId, sessionId,
pageData, pageData,
validSession, isUserLoggedIn,
}) })
hasTrackedHardNavigationBasic = true hasTrackedHardNavigationBasic = true
}, [pathName, pageData, sessionId, validSession]) }, [pathName, pageData, sessionId, isUserLoggedIn])
} }
const trackBasicPageView = async ({ const trackBasicPageView = async ({
pathName, pathName,
sessionId, sessionId,
pageData, pageData,
validSession, isUserLoggedIn,
}: { }: {
pathName: string pathName: string
sessionId: string | null sessionId: string | null
pageData: TrackingSDKProps["pageData"] pageData: TrackingSDKProps["pageData"]
validSession: boolean isUserLoggedIn: boolean
}) => { }) => {
const trackingData = { ...pageData, pathName, sessionId } const trackingData = { ...pageData, pathName, sessionId }
const pageObject = createSDKPageObject(trackingData) const pageObject = createSDKPageObject(trackingData)
@@ -56,7 +59,7 @@ const trackBasicPageView = async ({
event: "pageViewBasic", event: "pageViewBasic",
pageInfo: pageObject, pageInfo: pageObject,
userInfo: { userInfo: {
loginStatus: validSession ? "logged in" : "Non-logged in", loginStatus: isUserLoggedIn ? "logged in" : "Non-logged in",
}, },
}) })
} }