Fix timezone comparison error in invitation verification

This commit is contained in:
Koncept Kit
2026-01-05 02:26:11 +07:00
parent 340f838925
commit 6784148058

View File

@@ -2814,8 +2814,9 @@ async def verify_invitation_token(
if not invitation:
raise HTTPException(status_code=404, detail="Invalid or expired invitation token")
# Check expiry
if invitation.expires_at < datetime.now(timezone.utc):
# Check expiry (handle timezone-naive datetime from DB)
expires_at_aware = invitation.expires_at.replace(tzinfo=timezone.utc) if invitation.expires_at.tzinfo is None else invitation.expires_at
if expires_at_aware < datetime.now(timezone.utc):
invitation.status = InvitationStatus.expired
db.commit()
raise HTTPException(status_code=400, detail="Invitation has expired")
@@ -2847,8 +2848,9 @@ async def accept_invitation(
if not invitation:
raise HTTPException(status_code=404, detail="Invalid or expired invitation token")
# Check expiry
if invitation.expires_at < datetime.now(timezone.utc):
# Check expiry (handle timezone-naive datetime from DB)
expires_at_aware = invitation.expires_at.replace(tzinfo=timezone.utc) if invitation.expires_at.tzinfo is None else invitation.expires_at
if expires_at_aware < datetime.now(timezone.utc):
invitation.status = InvitationStatus.expired
db.commit()
raise HTTPException(status_code=400, detail="Invitation has expired")