diff --git a/apps/web/modules/availability/availability-view.tsx b/apps/web/modules/availability/availability-view.tsx index fad17f183b..97a3649192 100644 --- a/apps/web/modules/availability/availability-view.tsx +++ b/apps/web/modules/availability/availability-view.tsx @@ -196,12 +196,16 @@ export default function AvailabilityPage({ currentOrg }: PageProps) { [searchParams] ); + const isOrg = Boolean(data); const isOrgAdminOrOwner = - data && (data.user.role === MembershipRole.OWNER || data.user.role === MembershipRole.ADMIN); + (data && (data.user.role === MembershipRole.OWNER || data.user.role === MembershipRole.ADMIN)) ?? false; const isOrgAndPrivate = data?.isOrganization && data.isPrivate; + + const canViewTeamAvailability = isOrg && (isOrgAdminOrOwner || !isOrgAndPrivate); + const toggleGroupOptions = [{ value: "mine", label: t("my_availability") }]; - if (!isOrgAndPrivate || isOrgAdminOrOwner) { + if (canViewTeamAvailability) { toggleGroupOptions.push({ value: "team", label: t("team_availability") }); } @@ -228,7 +232,7 @@ export default function AvailabilityPage({ currentOrg }: PageProps) { }> - {searchParams?.get("type") === "team" && (!isOrgAndPrivate || isOrgAdminOrOwner) ? ( + {searchParams?.get("type") === "team" && canViewTeamAvailability ? ( ) : (