add display track event to posthog

This commit is contained in:
Matthias Nannt
2023-04-20 09:54:45 +02:00
parent ce0179a2c7
commit d889775c56
2 changed files with 42 additions and 1 deletions

View File

@@ -1,3 +1,4 @@
import { capturePosthogEvent } from "@formbricks/lib/posthogServer";
import { prisma } from "@formbricks/database";
import type { NextApiRequest, NextApiResponse } from "next";
@@ -21,6 +22,38 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
return res.status(400).json({ message: "Missing surveyId" });
}
// get teamId from environment
const environment = await prisma.environment.findUnique({
where: {
id: environmentId,
},
select: {
product: {
select: {
team: {
select: {
id: true,
memberships: {
select: {
userId: true,
role: true,
},
},
},
},
},
},
},
});
if (!environment) {
return res.status(404).json({ message: "Environment not found" });
}
const teamId = environment.product.team.id;
// find team owner
const teamOwnerId = environment.product.team.memberships.find((m) => m.role === "owner")?.userId;
const createBody: any = {
select: {
id: true,
@@ -46,6 +79,14 @@ export default async function handle(req: NextApiRequest, res: NextApiResponse)
// create new display
const displayData = await prisma.display.create(createBody);
if (teamOwnerId) {
await capturePosthogEvent(teamOwnerId, "response created", teamId, {
surveyId,
});
} else {
console.warn("Posthog capture not possible. No team owner found");
}
return res.json(displayData);
}

View File

@@ -1,7 +1,7 @@
import { prisma } from "@formbricks/database";
import type { NextApiRequest, NextApiResponse } from "next";
import { captureTelemetry } from "@formbricks/lib/telemetry";
import { capturePosthogEvent } from "@/../../packages/lib/posthogServer";
import { capturePosthogEvent } from "@formbricks/lib/posthogServer";
export default async function handle(req: NextApiRequest, res: NextApiResponse) {
const environmentId = req.query.environmentId?.toString();