diff --git a/apps/web/pages/[user]/[type].tsx b/apps/web/pages/[user]/[type].tsx index 2ef5eb038f..8f62d6e6ba 100644 --- a/apps/web/pages/[user]/[type].tsx +++ b/apps/web/pages/[user]/[type].tsx @@ -10,8 +10,7 @@ import { getMultipleDurationValue, } from "@calcom/features/bookings/lib/get-booking"; import type { GetBookingType } from "@calcom/features/bookings/lib/get-booking"; -import { getSlugOrRequestedSlug } from "@calcom/features/ee/organizations/lib/orgDomains"; -import { orgDomainConfig } from "@calcom/features/ee/organizations/lib/orgDomains"; +import { orgDomainConfig, userOrgQuery } from "@calcom/features/ee/organizations/lib/orgDomains"; import { getUsernameList } from "@calcom/lib/defaultEvents"; import slugify from "@calcom/lib/slugify"; import prisma from "@calcom/prisma"; @@ -152,7 +151,7 @@ async function getUserPageProps(context: GetServerSidePropsContext) { const user = await prisma.user.findFirst({ where: { username, - organization: isValidOrgDomain && currentOrgDomain ? getSlugOrRequestedSlug(currentOrgDomain) : null, + organization: userOrgQuery(context.req.headers.host ?? "", context.params?.orgSlug), }, select: { away: true, diff --git a/packages/features/bookings/lib/handleNewBooking.ts b/packages/features/bookings/lib/handleNewBooking.ts index f4890a2c1a..23eb562b74 100644 --- a/packages/features/bookings/lib/handleNewBooking.ts +++ b/packages/features/bookings/lib/handleNewBooking.ts @@ -35,6 +35,7 @@ import { import { getBookingFieldsWithSystemFields } from "@calcom/features/bookings/lib/getBookingFields"; import { getCalEventResponses } from "@calcom/features/bookings/lib/getCalEventResponses"; import { handleWebhookTrigger } from "@calcom/features/bookings/lib/handleWebhookTrigger"; +import { userOrgQuery } from "@calcom/features/ee/organizations/lib/orgDomains"; import { allowDisablingAttendeeConfirmationEmails, allowDisablingHostConfirmationEmails, @@ -732,6 +733,7 @@ async function handler( const users = await prisma.user.findMany({ where: { username: { in: dynamicUserList }, + organization: userOrgQuery(req.headers.host ? req.headers.host.replace(/^https?:\/\//, "") : ""), }, select: { ...userSelect.select, diff --git a/packages/features/ee/organizations/lib/orgDomains.ts b/packages/features/ee/organizations/lib/orgDomains.ts index a405debae7..0d8051ffb7 100644 --- a/packages/features/ee/organizations/lib/orgDomains.ts +++ b/packages/features/ee/organizations/lib/orgDomains.ts @@ -64,3 +64,8 @@ export function getSlugOrRequestedSlug(slug: string) { ], } satisfies Prisma.TeamWhereInput; } + +export function userOrgQuery(hostname: string, fallback?: string | string[]) { + const { currentOrgDomain, isValidOrgDomain } = orgDomainConfig(hostname, fallback); + return isValidOrgDomain && currentOrgDomain ? getSlugOrRequestedSlug(currentOrgDomain) : null; +}