diff --git a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/about/page.tsx b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/about/page.tsx
new file mode 100644
index 00000000000000..ee0936aec12dd1
--- /dev/null
+++ b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/about/page.tsx
@@ -0,0 +1,34 @@
+import OldPage from "@pages/settings/organizations/[id]/about";
+import { _generateMetadata } from "app/_utils";
+import { headers } from "next/headers";
+
+import { WizardLayout } from "@calcom/ui";
+
+import PageWrapper from "@components/PageWrapperAppDir";
+
+export const generateMetadata = async () =>
+ await _generateMetadata(
+ (t) => t("about_your_organization"),
+ (t) => t("about_your_organization_description")
+ );
+
+const LayoutWrapper = (page: React.ReactElement) => {
+ return (
+
+ {page}
+
+ );
+};
+
+const Page = () => {
+ const h = headers();
+ const nonce = h.get("x-nonce") ?? undefined;
+
+ return (
+
+
+
+ );
+};
+
+export default Page;
diff --git a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/add-teams/page.tsx b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/add-teams/page.tsx
new file mode 100644
index 00000000000000..a65c2e2a4ab0b9
--- /dev/null
+++ b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/add-teams/page.tsx
@@ -0,0 +1,38 @@
+import OldPage from "@pages/settings/organizations/[id]/add-teams";
+import { _generateMetadata } from "app/_utils";
+import { headers } from "next/headers";
+import { redirect } from "next/navigation";
+
+import { WizardLayout } from "@calcom/ui";
+
+import PageWrapper from "@components/PageWrapperAppDir";
+
+export const generateMetadata = async () =>
+ await _generateMetadata(
+ (t) => t("create_your_teams"),
+ (t) => t("create_your_teams_description")
+ );
+
+const LayoutWrapper = (page: React.ReactElement) => (
+ {
+ redirect(`/event-types`);
+ }}>
+ {page}
+
+);
+
+const Page = () => {
+ const h = headers();
+ const nonce = h.get("x-nonce") ?? undefined;
+
+ return (
+
+
+
+ );
+};
+
+export default Page;
diff --git a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/onboard-admins/page.tsx b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/onboard-admins/page.tsx
new file mode 100644
index 00000000000000..f08759953db779
--- /dev/null
+++ b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/onboard-admins/page.tsx
@@ -0,0 +1,45 @@
+import OldPage from "@pages/settings/organizations/[id]/onboard-admins";
+import { type Params } from "app/_types";
+import { _generateMetadata } from "app/_utils";
+import { headers } from "next/headers";
+import { redirect } from "next/navigation";
+
+import { WizardLayout } from "@calcom/ui";
+
+import PageWrapper from "@components/PageWrapperAppDir";
+
+type PageProps = Readonly<{
+ params: Params;
+}>;
+
+export const generateMetadata = async () =>
+ await _generateMetadata(
+ (t) => t("invite_organization_admins"),
+ (t) => t("invite_organization_admins_description")
+ );
+
+const Page = ({ params }: PageProps) => {
+ const h = headers();
+ const nonce = h.get("x-nonce") ?? undefined;
+
+ return (
+ (
+ {
+ redirect(`/settings/organizations/${params.id}/add-teams`);
+ }}>
+ {page}
+
+ )}
+ requiresLicense={false}
+ nonce={nonce}
+ themeBasis={null}>
+
+
+ );
+};
+
+export default Page;
diff --git a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/set-password/page.tsx b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/set-password/page.tsx
new file mode 100644
index 00000000000000..774717d6cfb556
--- /dev/null
+++ b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/[id]/set-password/page.tsx
@@ -0,0 +1,34 @@
+import OldPage from "@pages/settings/organizations/[id]/set-password";
+import { _generateMetadata } from "app/_utils";
+import { headers } from "next/headers";
+
+import { WizardLayout } from "@calcom/ui";
+
+import PageWrapper from "@components/PageWrapperAppDir";
+
+export const generateMetadata = async () =>
+ await _generateMetadata(
+ (t) => t("set_a_password"),
+ (t) => t("set_a_password_description")
+ );
+
+const LayoutWrapper = (page: React.ReactElement) => {
+ return (
+
+ {page}
+
+ );
+};
+
+const Page = () => {
+ const h = headers();
+ const nonce = h.get("x-nonce") ?? undefined;
+
+ return (
+
+
+
+ );
+};
+
+export default Page;
diff --git a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/new/page.tsx b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/new/page.tsx
index 5e0be4543eb445..d91d4a4e12d0ba 100644
--- a/apps/web/app/future/(individual-page-wrapper)/settings/organizations/new/page.tsx
+++ b/apps/web/app/future/(individual-page-wrapper)/settings/organizations/new/page.tsx
@@ -1,7 +1,12 @@
import OldPage from "@pages/settings/organizations/new/index";
+import { type Params } from "app/_types";
import { _generateMetadata } from "app/_utils";
-import type { Params } from "next/dist/shared/lib/router/utils/route-matcher";
+import { type GetServerSidePropsContext } from "next";
import { headers, cookies } from "next/headers";
+import { notFound } from "next/navigation";
+
+import { getFeatureFlagMap } from "@calcom/features/flags/server/utils";
+import { WizardLayout } from "@calcom/ui";
import { buildLegacyCtx } from "@lib/buildLegacyCtx";
@@ -17,6 +22,29 @@ type PageProps = Readonly<{
params: Params;
}>;
+const getData = async (context: GetServerSidePropsContext) => {
+ const prisma = await import("@calcom/prisma").then((mod) => mod.default);
+ const flags = await getFeatureFlagMap(prisma);
+ // Check if organizations are enabled
+ if (flags["organizations"] !== true) {
+ return notFound();
+ }
+
+ const querySlug = context.query.slug as string;
+
+ return {
+ querySlug: querySlug ?? null,
+ };
+};
+
+const LayoutWrapper = (page: React.ReactElement) => {
+ return (
+
+ {page}
+
+ );
+};
+
const Page = async ({ params }: PageProps) => {
const h = headers();
const nonce = h.get("x-nonce") ?? undefined;
@@ -25,7 +53,7 @@ const Page = async ({ params }: PageProps) => {
const props = await getData(legacyCtx);
return (
-
+
);
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/about/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/about/page.tsx
deleted file mode 100644
index 76cfc531d9f78a..00000000000000
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/about/page.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import Page from "@pages/settings/organizations/[id]/about";
-import { _generateMetadata } from "app/_utils";
-
-export const generateMetadata = async () =>
- await _generateMetadata(
- () => "",
- () => ""
- );
-
-export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/add-teams/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/add-teams/page.tsx
deleted file mode 100644
index cc41fb1575782b..00000000000000
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/add-teams/page.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import Page from "@pages/settings/organizations/[id]/add-teams";
-import { _generateMetadata } from "app/_utils";
-
-export const generateMetadata = async () =>
- await _generateMetadata(
- () => "",
- () => ""
- );
-
-export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/onboard-admins/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/onboard-admins/page.tsx
deleted file mode 100644
index d8f05c9d3f2293..00000000000000
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/onboard-admins/page.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import Page from "@pages/settings/organizations/[id]/onboard-admins";
-import { _generateMetadata } from "app/_utils";
-
-export const generateMetadata = async () =>
- await _generateMetadata(
- () => "",
- () => ""
- );
-
-export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/set-password/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/set-password/page.tsx
deleted file mode 100644
index 932136fa670e75..00000000000000
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/[id]/set-password/page.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import Page from "@pages/settings/organizations/[id]/set-password";
-import { _generateMetadata } from "app/_utils";
-
-export const generateMetadata = async () =>
- await _generateMetadata(
- () => "",
- () => ""
- );
-
-export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/appearance/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/appearance/page.tsx
similarity index 76%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/appearance/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/appearance/page.tsx
index dd26c44d6adde5..5f8b2547f0a43e 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/appearance/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/appearance/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/appearance";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("appearance"),
+ (t) => t("appearance_org_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/billing/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/billing/page.tsx
similarity index 74%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/billing/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/billing/page.tsx
index e53f1dbb0b36b1..7dbae67d41eefe 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/billing/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/billing/page.tsx
@@ -3,8 +3,8 @@ import { _generateMetadata } from "app/_utils";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("billing"),
+ (t) => t("manage_billing_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/general/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/general/page.tsx
similarity index 78%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/general/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/general/page.tsx
index c7bf276a3b92e6..e55435094bf079 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/general/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/general/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/general";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("general"),
+ (t) => t("general_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/members/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/members/page.tsx
similarity index 74%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/members/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/members/page.tsx
index 0f6b11308dedda..5c90c6869eac7c 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/members/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/members/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/members";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("organization_members"),
+ (t) => t("organization_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/profile/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/profile/page.tsx
similarity index 77%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/profile/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/profile/page.tsx
index 0defa632070c69..3450c5abddde9b 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/profile/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/profile/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/profile";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("profile"),
+ (t) => t("profile_org_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx
similarity index 73%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx
index dfd094a48e21b7..ac76104d07a5f0 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/appearance/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/teams/pages/team-appearance-view";
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("booking_appearance"),
+ (t) => t("appearance_team_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/members/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/members/page.tsx
similarity index 77%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/members/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/members/page.tsx
index 7359eee3a2fcb5..9e5018ada3668e 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/members/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/members/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/other-team-me
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("team_members"),
+ (t) => t("members_team_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/profile/page.tsx b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/profile/page.tsx
similarity index 78%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/profile/page.tsx
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/profile/page.tsx
index a8ea10d56afcd4..66cf714fbcc5b5 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/[id]/profile/page.tsx
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/[id]/profile/page.tsx
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/other-team-pr
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("profile"),
+ (t) => t("profile_team_description")
);
export default Page;
diff --git a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/page.ts b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/page.ts
similarity index 73%
rename from apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/page.ts
rename to apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/page.ts
index faf325dbe32f57..ffaf5302cb166b 100644
--- a/apps/web/app/future/(shared-page-wrapper)/(no-layout)/settings/organizations/teams/other/page.ts
+++ b/apps/web/app/future/(shared-page-wrapper)/(settings-layout)/settings/organizations/teams/other/page.ts
@@ -4,8 +4,8 @@ import Page from "@calcom/features/ee/organizations/pages/settings/other-team-li
export const generateMetadata = async () =>
await _generateMetadata(
- () => "",
- () => ""
+ (t) => t("org_admin_other_teams"),
+ (t) => t("org_admin_other_teams_description")
);
export default Page;