mirror of
http://88.130.71.182:3000/BlitTech/contexta_be.git
synced 2026-06-13 08:30:07 +00:00
fixed the RAg in test pipeline issue
This commit is contained in:
@@ -24,6 +24,7 @@ class ProfileUpdate(BaseModel):
|
||||
company_name: Optional[str] = None
|
||||
current_password: Optional[str] = None
|
||||
new_password: Optional[str] = Field(default=None, min_length=8)
|
||||
language: Optional[str] = None
|
||||
|
||||
|
||||
@router.post("/signup", response_model=TokenResponse)
|
||||
@@ -116,12 +117,14 @@ async def login(data: UserLogin):
|
||||
)
|
||||
plan = sub.data[0]["plan"] if sub.data else "free"
|
||||
|
||||
# Get is_admin flag
|
||||
# Get is_admin and language from profile
|
||||
try:
|
||||
profile = supabase.table("user_profiles").select("is_admin").eq("user_id", user.id).execute()
|
||||
profile = supabase.table("user_profiles").select("is_admin, language").eq("user_id", user.id).execute()
|
||||
is_admin = profile.data[0].get("is_admin", False) if profile.data else False
|
||||
language = profile.data[0].get("language", "fr") if profile.data else "fr"
|
||||
except Exception:
|
||||
is_admin = False
|
||||
language = "fr"
|
||||
|
||||
return TokenResponse(
|
||||
access_token=auth_resp.session.access_token,
|
||||
@@ -131,6 +134,7 @@ async def login(data: UserLogin):
|
||||
company_name=company_name,
|
||||
plan=plan,
|
||||
is_admin=is_admin,
|
||||
language=language,
|
||||
),
|
||||
)
|
||||
except HTTPException:
|
||||
@@ -191,12 +195,22 @@ async def update_profile(data: ProfileUpdate, user=Depends(get_current_user)):
|
||||
raise HTTPException(status_code=400, detail="Current password is incorrect")
|
||||
supabase.auth.admin.update_user_by_id(user.id, {"password": data.new_password})
|
||||
|
||||
if data.language:
|
||||
supabase.table("user_profiles").update({"language": data.language}).eq("user_id", user.id).execute()
|
||||
|
||||
company = supabase.table("companies").select("name").eq("owner_id", user.id).execute()
|
||||
company_name = company.data[0]["name"] if company.data else ""
|
||||
sub = supabase.table("subscriptions").select("plan").eq("user_id", user.id).eq("status", "active").execute()
|
||||
plan = sub.data[0]["plan"] if sub.data else "free"
|
||||
try:
|
||||
profile = supabase.table("user_profiles").select("is_admin, language").eq("user_id", user.id).execute()
|
||||
is_admin = profile.data[0].get("is_admin", False) if profile.data else False
|
||||
language = profile.data[0].get("language", "fr") if profile.data else "fr"
|
||||
except Exception:
|
||||
is_admin = False
|
||||
language = data.language or "fr"
|
||||
|
||||
return UserResponse(id=user.id, email=user.email, company_name=company_name, plan=plan)
|
||||
return UserResponse(id=user.id, email=user.email, company_name=company_name, plan=plan, is_admin=is_admin, language=language)
|
||||
|
||||
|
||||
@router.delete("/account")
|
||||
@@ -246,10 +260,12 @@ async def get_me(user=Depends(get_current_user)):
|
||||
plan = sub.data[0]["plan"] if sub.data else "free"
|
||||
|
||||
try:
|
||||
profile = supabase.table("user_profiles").select("is_admin").eq("user_id", user.id).execute()
|
||||
profile = supabase.table("user_profiles").select("is_admin, language").eq("user_id", user.id).execute()
|
||||
is_admin = profile.data[0].get("is_admin", False) if profile.data else False
|
||||
language = profile.data[0].get("language", "fr") if profile.data else "fr"
|
||||
except Exception:
|
||||
is_admin = False
|
||||
language = "fr"
|
||||
|
||||
return UserResponse(
|
||||
id=user.id,
|
||||
@@ -257,4 +273,5 @@ async def get_me(user=Depends(get_current_user)):
|
||||
company_name=company_name,
|
||||
plan=plan,
|
||||
is_admin=is_admin,
|
||||
language=language,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user