From 5c86930220e97888eeae1c5440572ba7ef2434be Mon Sep 17 00:00:00 2001 From: Meier Lukas Date: Mon, 13 Oct 2025 23:52:17 +0200 Subject: [PATCH] feat(users): allow profile picture change for external providers (#4275) --- .../_components/_profile-avatar-form.tsx | 42 +++++++------------ packages/api/src/router/user.ts | 7 ---- packages/auth/events.ts | 10 +++++ packages/auth/providers/oidc/oidc-provider.ts | 1 + 4 files changed, 25 insertions(+), 35 deletions(-) diff --git a/apps/nextjs/src/app/[locale]/manage/users/[userId]/general/_components/_profile-avatar-form.tsx b/apps/nextjs/src/app/[locale]/manage/users/[userId]/general/_components/_profile-avatar-form.tsx index b510f37dc..485bffdf5 100644 --- a/apps/nextjs/src/app/[locale]/manage/users/[userId]/general/_components/_profile-avatar-form.tsx +++ b/apps/nextjs/src/app/[locale]/manage/users/[userId]/general/_components/_profile-avatar-form.tsx @@ -92,38 +92,24 @@ export const UserProfileAvatarForm = ({ user }: UserProfileAvatarForm) => { }); }, [mutate, user.id, openConfirmModal, tManageAvatar]); - const isCredentialsUser = user.provider === "credentials"; - return ( - + - + - {isCredentialsUser && ( - - )} + diff --git a/packages/api/src/router/user.ts b/packages/api/src/router/user.ts index ebb0b432b..f59d6740e 100644 --- a/packages/api/src/router/user.ts +++ b/packages/api/src/router/user.ts @@ -146,13 +146,6 @@ export const userRouter = createTRPCRouter({ }); } - if (user.provider !== "credentials") { - throw new TRPCError({ - code: "FORBIDDEN", - message: "Profile image can not be changed for users with external providers", - }); - } - await ctx.db .update(users) .set({ diff --git a/packages/auth/events.ts b/packages/auth/events.ts index 7ca77e0f9..b1222abb7 100644 --- a/packages/auth/events.ts +++ b/packages/auth/events.ts @@ -20,6 +20,7 @@ export const createSignInEventHandler = (db: Database): Exclude