From 88871452605debbc78432c8c7e31ed112915e257 Mon Sep 17 00:00:00 2001 From: ectasy663 Date: Fri, 25 Sep 2026 15:02:02 +0530 Subject: [PATCH] Fix admin UUID parsing error on test upload --- backend/main.py | 7 ++++--- src/app/admin/tests/page.tsx | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/backend/main.py b/backend/main.py index 24fbd81..fbaea7d 100644 --- a/backend/main.py +++ b/backend/main.py @@ -91,7 +91,7 @@ def create_access_token(data: dict): def get_current_user(token: str = Depends(oauth2_scheme), session: Session = Depends(get_session)): if token == "admin": - return models.User(id=uuid.uuid4(), name="Admin", email="admin@pragativeer.com", tier=models.TierEnum.AI_COACH) + return models.User(id=uuid.UUID("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"), name="Admin", email="admin@pragativeer.com", tier=models.TierEnum.AI_COACH) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) @@ -133,7 +133,7 @@ def require_tier(allowed_tiers: List[models.TierEnum]): """ def tier_checker(token: str = Depends(oauth2_scheme), session: Session = Depends(get_session)): if token == "admin": - return models.User(id=uuid.uuid4(), name="Admin", email="admin@pragativeer.com", tier=models.TierEnum.AI_COACH) + return models.User(id=uuid.UUID("aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"), name="Admin", email="admin@pragativeer.com", tier=models.TierEnum.AI_COACH) try: payload = jwt.decode(token, SECRET_KEY, algorithms=[ALGORITHM]) @@ -414,7 +414,7 @@ def login(payload: LoginPayload, session: Session = Depends(get_session)): access_token = create_access_token(data={"sub": token_id}) return {"success": True, "role": "user", "token": access_token, "user_id": token_id} if payload.email == "admin@pragativeer.com" and payload.password == "Pv9#kL2$mQ8!vX4@": - return {"success": True, "role": "admin", "token": "admin"} + return {"success": True, "role": "admin", "token": "admin", "user_id": "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa"} user = session.exec(select(models.User).where(models.User.email == payload.email)).first() if not user: @@ -1838,3 +1838,4 @@ def verify_payment(payload: VerifyPaymentPayload, session: Session = Depends(get session.commit() return {"success": True, "tier": user.tier.value} + diff --git a/src/app/admin/tests/page.tsx b/src/app/admin/tests/page.tsx index bbd3162..e5bfdf1 100644 --- a/src/app/admin/tests/page.tsx +++ b/src/app/admin/tests/page.tsx @@ -187,7 +187,7 @@ export default function AdminTestsPage() { formData.append("title", title) formData.append("exam_pattern", examPattern) formData.append("time_limit", timeLimit) - formData.append("admin_id", userId as string) + formData.append("admin_id", userId === "admin" ? "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" : (userId as string)) if (scheduledDate) formData.append("scheduled_date", scheduledDate.toISOString()) const res = await fetchWithAuth("/api/admin/tests/upload", { @@ -224,7 +224,7 @@ export default function AdminTestsPage() { type: testType, exam_pattern: examPattern, time_limit: parseInt(timeLimit), - admin_id: userId, + admin_id: userId === "admin" ? "aaaaaaaa-aaaa-aaaa-aaaa-aaaaaaaaaaaa" : userId, questions_json: validQuestions, scheduled_date: scheduledDate ? scheduledDate.toISOString() : null, end_date: endDate ? endDate.toISOString() : null, @@ -491,3 +491,4 @@ export default function AdminTestsPage() { ) } +