Merged in fix/getProfile-2 (pull request #2951)
fix: get profile * fix: get profile Approved-by: Anton Gunnarsson
This commit is contained in:
@@ -52,7 +52,7 @@ export const userQueryRouter = router({
|
|||||||
return data
|
return data
|
||||||
}
|
}
|
||||||
|
|
||||||
return parsedUser(data.data, ctx.isMFA)
|
return parsedUser(data.data, !ctx.isMFA)
|
||||||
}),
|
}),
|
||||||
getSafely: safeProtectedProcedure.query(async function getUser({ ctx }) {
|
getSafely: safeProtectedProcedure.query(async function getUser({ ctx }) {
|
||||||
if (!isValidSession(ctx.session)) {
|
if (!isValidSession(ctx.session)) {
|
||||||
@@ -65,7 +65,7 @@ export const userQueryRouter = router({
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
return parsedUser(data.data, true)
|
return parsedUser(data.data, false)
|
||||||
}),
|
}),
|
||||||
getWithExtendedPartnerData: safeProtectedProcedure.query(
|
getWithExtendedPartnerData: safeProtectedProcedure.query(
|
||||||
async function getUser({ ctx }) {
|
async function getUser({ ctx }) {
|
||||||
@@ -82,7 +82,7 @@ export const userQueryRouter = router({
|
|||||||
return null
|
return null
|
||||||
}
|
}
|
||||||
|
|
||||||
return parsedUser(data.data, true)
|
return parsedUser(data.data, false)
|
||||||
}
|
}
|
||||||
),
|
),
|
||||||
name: safeProtectedProcedure.query(async function ({ ctx }) {
|
name: safeProtectedProcedure.query(async function ({ ctx }) {
|
||||||
|
|||||||
@@ -1,13 +1,10 @@
|
|||||||
import { myStay } from "@scandic-hotels/common/constants/routes/myStay"
|
import { myStay } from "@scandic-hotels/common/constants/routes/myStay"
|
||||||
import { dt } from "@scandic-hotels/common/dt"
|
import { dt } from "@scandic-hotels/common/dt"
|
||||||
import { createCounter } from "@scandic-hotels/common/telemetry"
|
import { createCounter } from "@scandic-hotels/common/telemetry"
|
||||||
import * as maskValue from "@scandic-hotels/common/utils/maskValue"
|
|
||||||
|
|
||||||
import { env } from "../../../env/server"
|
import { env } from "../../../env/server"
|
||||||
import * as api from "../../api"
|
import * as api from "../../api"
|
||||||
import { countries } from "../../constants/countries"
|
|
||||||
import { cache } from "../../DUPLICATED/cache"
|
import { cache } from "../../DUPLICATED/cache"
|
||||||
import { getFriendsMembership } from "../../routers/user/helpers"
|
|
||||||
import { creditCardsSchema } from "../../routers/user/output"
|
import { creditCardsSchema } from "../../routers/user/output"
|
||||||
import { toApiLang } from "../../utils"
|
import { toApiLang } from "../../utils"
|
||||||
import { encrypt } from "../../utils/encryption"
|
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 { LangRoute } from "@scandic-hotels/common/constants/routes/langRoute"
|
||||||
import type { Session } from "next-auth"
|
import type { Session } from "next-auth"
|
||||||
|
|
||||||
import type { User } from "../../types/user"
|
|
||||||
|
|
||||||
export async function getMembershipNumber(
|
export async function getMembershipNumber(
|
||||||
session: Session | null
|
session: Session | null
|
||||||
): Promise<string | undefined> {
|
): Promise<string | undefined> {
|
||||||
@@ -210,54 +205,6 @@ export async function getUpcomingStays(
|
|||||||
return verifiedData.data
|
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(
|
export const getCreditCards = cache(
|
||||||
async ({
|
async ({
|
||||||
session,
|
session,
|
||||||
|
|||||||
Reference in New Issue
Block a user