From 005560d3a6d1403e20d7bce8a2b3a4f5e4249a70 Mon Sep 17 00:00:00 2001 From: Alex TYRODE Date: Tue, 29 Apr 2025 21:01:35 +0000 Subject: [PATCH] fix: check for posthog api key in user.py --- src/backend/routers/user.py | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/src/backend/routers/user.py b/src/backend/routers/user.py index 2b6c556..5cae10f 100644 --- a/src/backend/routers/user.py +++ b/src/backend/routers/user.py @@ -1,9 +1,14 @@ +import os import jwt -from fastapi import APIRouter, Depends, Request + import posthog +from fastapi import APIRouter, Depends, Request +from dotenv import load_dotenv from dependencies import SessionData, require_auth +load_dotenv() + user_router = APIRouter() @user_router.get("/me") @@ -19,21 +24,7 @@ async def get_user_info(auth: SessionData = Depends(require_auth), request: Requ full_url = str(request.base_url).rstrip("/") + str(request.url.path) full_url = full_url.replace("http://", "https://") - # Identify user in PostHog (mirrors frontend identify) - posthog.identify( - distinct_id=decoded["sub"], - properties={ - "email": decoded.get("email", ""), - "username": decoded.get("preferred_username", ""), - "name": decoded.get("name", ""), - "given_name": decoded.get("given_name", ""), - "family_name": decoded.get("family_name", ""), - "email_verified": decoded.get("email_verified", False), - "$current_url": full_url - } - ) - - return { + user_data: dict = { "id": decoded["sub"], # Unique user ID "email": decoded.get("email", ""), "username": decoded.get("preferred_username", ""), @@ -42,3 +33,9 @@ async def get_user_info(auth: SessionData = Depends(require_auth), request: Requ "family_name": decoded.get("family_name", ""), "email_verified": decoded.get("email_verified", False) } + + if os.getenv("VITE_PUBLIC_POSTHOG_KEY"): + telemetry = user_data | {"$current_url": full_url} + posthog.identify(distinct_id=decoded["sub"], properties=telemetry) + + return user_data