diff --git a/apps/web/app/environments/[environmentId]/layout.tsx b/apps/web/app/environments/[environmentId]/layout.tsx index 5633cffcb5..5b6b36d636 100644 --- a/apps/web/app/environments/[environmentId]/layout.tsx +++ b/apps/web/app/environments/[environmentId]/layout.tsx @@ -6,12 +6,17 @@ import { authOptions } from "@/app/api/auth/[...nextauth]/authOptions"; import PosthogIdentify from "./PosthogIdentify"; import FormbricksClient from "../../FormbricksClient"; import { PosthogClientWrapper } from "../../PosthogClientWrapper"; +import { hasUserEnvironmentAccess } from "@/lib/api/apiHelper"; export default async function EnvironmentLayout({ children, params }) { const session = await getServerSession(authOptions); if (!session) { return redirect(`/auth/login`); } + const hasAccess = await hasUserEnvironmentAccess(session.user, params.environmentId); + if (!hasAccess) { + throw new Error("User does not have access to this environment"); + } return ( <> diff --git a/apps/web/app/environments/[environmentId]/people/page.tsx b/apps/web/app/environments/[environmentId]/people/page.tsx index b7800835d5..434be75a6a 100644 --- a/apps/web/app/environments/[environmentId]/people/page.tsx +++ b/apps/web/app/environments/[environmentId]/people/page.tsx @@ -4,6 +4,7 @@ import EmptySpaceFiller from "@/components/shared/EmptySpaceFiller"; import { truncateMiddle } from "@/lib/utils"; import { TransformPersonOutput, getPeople } from "@formbricks/lib/services/person"; import { PersonAvatar } from "@formbricks/ui"; +import Link from "next/link"; const getAttributeValue = (person: TransformPersonOutput, attributeName: string) => person.attributes[attributeName]?.toString(); @@ -23,7 +24,7 @@ export default async function PeoplePage({ params }) {
Email
{people.map((person) => ( - @@ -53,7 +54,7 @@ export default async function PeoplePage({ params }) {
{getAttributeValue(person, "email")}
-
+ ))} )}