diff --git a/apps/web/app/(use-page-wrapper)/settings/platform/managed-users/page.tsx b/apps/web/app/(use-page-wrapper)/settings/platform/managed-users/page.tsx
index 0ecd2b45a4..6d51cd2fd5 100644
--- a/apps/web/app/(use-page-wrapper)/settings/platform/managed-users/page.tsx
+++ b/apps/web/app/(use-page-wrapper)/settings/platform/managed-users/page.tsx
@@ -1,4 +1,11 @@
import { _generateMetadata } from "app/_utils";
+import { cookies, headers } from "next/headers";
+import { redirect } from "next/navigation";
+
+import { getServerSession } from "@calcom/features/auth/lib/getServerSession";
+import { WEBAPP_URL } from "@calcom/lib/constants";
+
+import { buildLegacyRequest } from "@lib/buildLegacyCtx";
import ManagedUsersView from "~/settings/platform/managed-users/managed-users-view";
@@ -11,7 +18,14 @@ export const generateMetadata = async () =>
"/settings/platform/managed-users"
);
-const ServerPageWrapper = () => {
+const ServerPageWrapper = async () => {
+ const session = await getServerSession({ req: buildLegacyRequest(await headers(), await cookies()) });
+ const callbackUrl = `${WEBAPP_URL}/settings/platform/managed-users`;
+
+ if (!session?.user) {
+ redirect(`/login?callbackUrl=${callbackUrl}`);
+ }
+
return ;
};
diff --git a/apps/web/app/(use-page-wrapper)/settings/platform/new/page.tsx b/apps/web/app/(use-page-wrapper)/settings/platform/new/page.tsx
index 9cb10150d9..a35a026a6e 100644
--- a/apps/web/app/(use-page-wrapper)/settings/platform/new/page.tsx
+++ b/apps/web/app/(use-page-wrapper)/settings/platform/new/page.tsx
@@ -1,19 +1,15 @@
-import { withAppDirSsr } from "app/WithAppDirSsr";
-import type { PageProps } from "app/_types";
import { _generateMetadata } from "app/_utils";
import { cookies, headers } from "next/headers";
+import { redirect } from "next/navigation";
+import { getServerSession } from "@calcom/features/auth/lib/getServerSession";
import LicenseRequired from "@calcom/features/ee/common/components/LicenseRequired";
+import { WEBAPP_URL } from "@calcom/lib/constants";
-import { buildLegacyCtx } from "@lib/buildLegacyCtx";
-import { getServerSideProps } from "@lib/settings/organizations/new/getServerSideProps";
+import { buildLegacyRequest } from "@lib/buildLegacyCtx";
import LegacyPage, { LayoutWrapper } from "~/settings/platform/new/create-new-view";
-type Props = {
- isOrg: boolean;
-};
-
export const generateMetadata = async () =>
await _generateMetadata(
(t) => t("set_up_your_platform_organization"),
@@ -23,10 +19,14 @@ export const generateMetadata = async () =>
"/settings/platform/new"
);
-const getData = withAppDirSsr(getServerSideProps);
+const ServerPage = async () => {
+ const session = await getServerSession({ req: buildLegacyRequest(await headers(), await cookies()) });
+ const callbackUrl = `${WEBAPP_URL}/settings/platform/new`;
+
+ if (!session?.user) {
+ redirect(`/login?callbackUrl=${callbackUrl}`);
+ }
-const ServerPage = async ({ params, searchParams }: PageProps) => {
- await getData(buildLegacyCtx(await headers(), await cookies(), await params, await searchParams));
return (
diff --git a/apps/web/app/(use-page-wrapper)/settings/platform/plans/page.tsx b/apps/web/app/(use-page-wrapper)/settings/platform/plans/page.tsx
index e37fa6d473..d8cdb9fe31 100644
--- a/apps/web/app/(use-page-wrapper)/settings/platform/plans/page.tsx
+++ b/apps/web/app/(use-page-wrapper)/settings/platform/plans/page.tsx
@@ -1,4 +1,11 @@
import { _generateMetadata } from "app/_utils";
+import { cookies, headers } from "next/headers";
+import { redirect } from "next/navigation";
+
+import { getServerSession } from "@calcom/features/auth/lib/getServerSession";
+import { WEBAPP_URL } from "@calcom/lib/constants";
+
+import { buildLegacyRequest } from "@lib/buildLegacyCtx";
import PlatformPlansView from "~/settings/platform/plans/platform-plans-view";
@@ -12,7 +19,14 @@ export const generateMetadata = async () => {
);
};
-const ServerPageWrapper = () => {
+const ServerPageWrapper = async () => {
+ const session = await getServerSession({ req: buildLegacyRequest(await headers(), await cookies()) });
+ const callbackUrl = `${WEBAPP_URL}/settings/platform/plans`;
+
+ if (!session?.user) {
+ redirect(`/login?callbackUrl=${callbackUrl}`);
+ }
+
return ;
};
diff --git a/packages/trpc/server/routers/viewer/organizations/create.handler.ts b/packages/trpc/server/routers/viewer/organizations/create.handler.ts
index 209907c46e..20ac6e90df 100644
--- a/packages/trpc/server/routers/viewer/organizations/create.handler.ts
+++ b/packages/trpc/server/routers/viewer/organizations/create.handler.ts
@@ -112,6 +112,7 @@ export const createHandler = async ({ input, ctx }: CreateOptions) => {
slug: true,
isOrganization: true,
isPlatform: true,
+ name: true,
},
},
},
@@ -173,7 +174,10 @@ export const createHandler = async ({ input, ctx }: CreateOptions) => {
});
if (!!hasExistingPlatformOrOrgTeam?.team && isPlatform) {
- throw new TRPCError({ code: "BAD_REQUEST", message: "User is already part of a team" });
+ throw new TRPCError({
+ code: "BAD_REQUEST",
+ message: `You can't create a new team because you are already a part of ${hasExistingPlatformOrOrgTeam.team.name}`,
+ });
}
const availability = getAvailabilityFromSchedule(DEFAULT_SCHEDULE);