Skip to content

Commit 243012e

Browse files
authored
fix: update resend inviation to follow auto accept (calcom#24447)
1 parent d96c807 commit 243012e

1 file changed

Lines changed: 15 additions & 4 deletions

File tree

packages/trpc/server/routers/viewer/teams/resendInvitation.handler.ts

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
import { sendTeamInviteEmail } from "@calcom/emails";
2+
import { UserRepository } from "@calcom/features/users/repositories/UserRepository";
23
import { WEBAPP_URL } from "@calcom/lib/constants";
34
import { getTranslation } from "@calcom/lib/server/i18n";
45
import { VerificationTokenRepository } from "@calcom/lib/server/repository/verificationToken";
6+
import { prisma } from "@calcom/prisma";
57
import type { TrpcSessionUser } from "@calcom/trpc/server/types";
68

79
import { ensureAtleastAdminPermissions, getTeamOrThrow } from "./inviteMember/utils";
@@ -37,15 +39,24 @@ export const resendInvitationHandler = async ({ ctx, input }: InviteMemberOption
3739
}
3840

3941
const inviteTeamOptions = {
40-
joinLink: `${WEBAPP_URL}/teams?token=${verificationToken?.token}&autoAccept=true`,
42+
joinLink: `${WEBAPP_URL}/auth/login?callbackUrl=/settings/teams`,
4143
isCalcomMember: true,
4244
isAutoJoin: false,
4345
};
4446

4547
if (verificationToken) {
46-
// Token only exists if user is CAL user but hasn't completed onboarding.
47-
inviteTeamOptions.joinLink = `${WEBAPP_URL}/signup?token=${verificationToken.token}&callbackUrl=/getting-started`;
48-
inviteTeamOptions.isCalcomMember = false;
48+
try {
49+
const user = await new UserRepository(prisma).findByEmail({ email: input.email });
50+
51+
if (user?.completedOnboarding) {
52+
inviteTeamOptions.joinLink = `${WEBAPP_URL}/teams?token=${verificationToken.token}&autoAccept=true`;
53+
} else {
54+
inviteTeamOptions.joinLink = `${WEBAPP_URL}/signup?token=${verificationToken.token}&callbackUrl=/getting-started`;
55+
inviteTeamOptions.isCalcomMember = false;
56+
}
57+
} catch (error) {
58+
console.error("[resendInvitationHandler] Error fetching user: ", error);
59+
}
4960
}
5061

5162
const translation = await getTranslation(input.language ?? "en", "common");

0 commit comments

Comments
 (0)