Merged in fix/getProfile-2 (pull request #2951)

fix: get profile

* fix: get profile


Approved-by: Anton Gunnarsson
This commit is contained in:
Linus Flood
2025-10-10 10:58:14 +00:00
parent 1668baf04b
commit 205e5a1843
2 changed files with 3 additions and 56 deletions

View File

@@ -52,7 +52,7 @@ export const userQueryRouter = router({
return data
}
return parsedUser(data.data, ctx.isMFA)
return parsedUser(data.data, !ctx.isMFA)
}),
getSafely: safeProtectedProcedure.query(async function getUser({ ctx }) {
if (!isValidSession(ctx.session)) {
@@ -65,7 +65,7 @@ export const userQueryRouter = router({
return null
}
return parsedUser(data.data, true)
return parsedUser(data.data, false)
}),
getWithExtendedPartnerData: safeProtectedProcedure.query(
async function getUser({ ctx }) {
@@ -82,7 +82,7 @@ export const userQueryRouter = router({
return null
}
return parsedUser(data.data, true)
return parsedUser(data.data, false)
}
),
name: safeProtectedProcedure.query(async function ({ ctx }) {

View File

@@ -1,13 +1,10 @@
import { myStay } from "@scandic-hotels/common/constants/routes/myStay"
import { dt } from "@scandic-hotels/common/dt"
import { createCounter } from "@scandic-hotels/common/telemetry"
import * as maskValue from "@scandic-hotels/common/utils/maskValue"
import { env } from "../../../env/server"
import * as api from "../../api"
import { countries } from "../../constants/countries"
import { cache } from "../../DUPLICATED/cache"
import { getFriendsMembership } from "../../routers/user/helpers"
import { creditCardsSchema } from "../../routers/user/output"
import { toApiLang } from "../../utils"
import { encrypt } from "../../utils/encryption"
@@ -19,8 +16,6 @@ import type { Lang } from "@scandic-hotels/common/constants/language"
import type { LangRoute } from "@scandic-hotels/common/constants/routes/langRoute"
import type { Session } from "next-auth"
import type { User } from "../../types/user"
export async function getMembershipNumber(
session: Session | null
): Promise<string | undefined> {
@@ -210,54 +205,6 @@ export async function getUpcomingStays(
return verifiedData.data
}
export function parsedUser(data: User, isMFA: boolean) {
const country = countries.find((c) => c.code === data.address?.countryCode)
const user = {
address: {
city: data.address?.city,
country: country?.name ?? "",
countryCode: data.address?.countryCode,
streetAddress: data.address?.streetAddress,
zipCode: data.address?.zipCode,
},
dateOfBirth: data.dateOfBirth,
email: data.email,
employmentDetails: data.employmentDetails,
promotions: data.promotions || null,
firstName: data.firstName,
language: data.language,
lastName: data.lastName,
loyalty: data.loyalty,
membershipNumber: data.membershipNumber,
membership: data.loyalty ? getFriendsMembership(data.loyalty) : null,
name: `${data.firstName} ${data.lastName}`,
phoneNumber: data.phoneNumber,
profileId: data.profileId,
}
if (!isMFA) {
if (user.address.city) {
user.address.city = maskValue.text(user.address.city)
}
if (user.address.streetAddress) {
user.address.streetAddress = maskValue.text(user.address.streetAddress)
}
user.address.zipCode = data.address?.zipCode
? maskValue.text(data.address.zipCode)
: ""
user.dateOfBirth = maskValue.all(user.dateOfBirth)
user.email = maskValue.email(user.email)
user.phoneNumber = user.phoneNumber ? maskValue.phone(user.phoneNumber) : ""
}
return user
}
export const getCreditCards = cache(
async ({
session,