From ccff528765c83fdd92d24e9790d8ec7de19e8c46 Mon Sep 17 00:00:00 2001 From: Leo Giovanetti Date: Mon, 19 Jun 2023 11:37:23 -0300 Subject: [PATCH] fix: Creating teams for organizations in wizard (#9632) * Expanding org slug check and adding proper error msg * Duh && --- apps/web/public/static/locales/en/common.json | 1 + .../ee/organizations/components/AddNewTeamsForm.tsx | 2 +- .../server/routers/viewer/organizations/create.handler.ts | 2 +- .../routers/viewer/organizations/createTeams.handler.ts | 8 ++++++-- 4 files changed, 9 insertions(+), 4 deletions(-) diff --git a/apps/web/public/static/locales/en/common.json b/apps/web/public/static/locales/en/common.json index e97d0966c6..2a4aa130ee 100644 --- a/apps/web/public/static/locales/en/common.json +++ b/apps/web/public/static/locales/en/common.json @@ -1889,5 +1889,6 @@ "my_profile": "My Profile", "my_settings": "My Settings", "sender_id_info": "Name or number shown as the sender of an SMS (some countries do not allow alphanumeric sender IDs)", + "no_organization_slug": "There was an error creating teams for this organization. Missing URL slug.", "ADD_NEW_STRINGS_ABOVE_THIS_LINE_TO_PREVENT_MERGE_CONFLICTS": "↑↑↑↑↑↑↑↑↑↑↑↑↑ Add your new strings above here ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑" } diff --git a/packages/features/ee/organizations/components/AddNewTeamsForm.tsx b/packages/features/ee/organizations/components/AddNewTeamsForm.tsx index e258228a04..382325231f 100644 --- a/packages/features/ee/organizations/components/AddNewTeamsForm.tsx +++ b/packages/features/ee/organizations/components/AddNewTeamsForm.tsx @@ -50,7 +50,7 @@ export const AddNewTeamsForm = () => { } }, onError: (error) => { - showToast(error.message, "error"); + showToast(t(error.message), "error"); }, }); diff --git a/packages/trpc/server/routers/viewer/organizations/create.handler.ts b/packages/trpc/server/routers/viewer/organizations/create.handler.ts index ad6a9513af..0df4c3cb7d 100644 --- a/packages/trpc/server/routers/viewer/organizations/create.handler.ts +++ b/packages/trpc/server/routers/viewer/organizations/create.handler.ts @@ -86,7 +86,7 @@ export const createHandler = async ({ input }: CreateOptions) => { name, ...(!IS_TEAM_BILLING_ENABLED && { slug }), metadata: { - requestedSlug: slug, + ...(IS_TEAM_BILLING_ENABLED && { requestedSlug: slug }), isOrganization: true, }, }, diff --git a/packages/trpc/server/routers/viewer/organizations/createTeams.handler.ts b/packages/trpc/server/routers/viewer/organizations/createTeams.handler.ts index ab1cb1b80a..a8143b2f7b 100644 --- a/packages/trpc/server/routers/viewer/organizations/createTeams.handler.ts +++ b/packages/trpc/server/routers/viewer/organizations/createTeams.handler.ts @@ -18,10 +18,14 @@ type CreateTeamsOptions = { export const createTeamsHandler = async ({ ctx, input }: CreateTeamsOptions) => { const { teamNames, orgId } = input; - const organization = await prisma.team.findFirst({ where: { id: orgId }, select: { metadata: true } }); + const organization = await prisma.team.findFirst({ + where: { id: orgId }, + select: { slug: true, metadata: true }, + }); const metadata = teamMetadataSchema.parse(organization?.metadata); - if (!metadata?.requestedSlug) throw new TRPCError({ code: "BAD_REQUEST", message: "no_organization" }); + if (!metadata?.requestedSlug && !organization?.slug) + throw new TRPCError({ code: "BAD_REQUEST", message: "no_organization_slug" }); const userMembership = await prisma.membership.findFirst({ where: {