Fix admin UUID parsing error on test upload

This commit is contained in:
2026-09-25 15:02:02 +05:30
parent eefcb12ffc
commit 8887145260
2 changed files with 7 additions and 5 deletions

View File

@@ -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}

View File

@@ -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() {
</div>
)
}