From b68d85e561910ea99d284abc9ba9947afbba9369 Mon Sep 17 00:00:00 2001 From: lucuswolfius Date: Tue, 3 Jun 2025 11:14:47 -0700 Subject: [PATCH] users with less rights than others can no longer edit their rights --- apps/hub/app/(app)/admin/user/[id]/_components/forms.tsx | 3 +++ 1 file changed, 3 insertions(+) diff --git a/apps/hub/app/(app)/admin/user/[id]/_components/forms.tsx b/apps/hub/app/(app)/admin/user/[id]/_components/forms.tsx index 94caafb0..4829b591 100644 --- a/apps/hub/app/(app)/admin/user/[id]/_components/forms.tsx +++ b/apps/hub/app/(app)/admin/user/[id]/_components/forms.tsx @@ -33,6 +33,7 @@ import { ChartBarBigIcon, Check, Eye, PlaneIcon, Timer, X } from "lucide-react"; import Link from "next/link"; import { ColumnDef } from "@tanstack/react-table"; import { Error } from "_components/Error"; +import { useSession } from "next-auth/react"; interface ProfileFormProps { user: User; @@ -40,6 +41,7 @@ interface ProfileFormProps { export const ProfileForm: React.FC = ({ user }: ProfileFormProps) => { const [isLoading, setIsLoading] = useState(false); + const session = useSession(); const form = useForm({ defaultValues: user, resolver: zodResolver(UserOptionalDefaultsSchema), @@ -131,6 +133,7 @@ export const ProfileForm: React.FC = ({ user }: ProfileFormPro form={form} name="permissions" label="Permissions" + isDisabled={user.permissions.length > (session.data?.user?.permissions?.length ?? 0)} options={Object.entries(PERMISSION).map(([key, value]) => ({ label: value, value: key,