Browse Source

fix: update type hints for store_token and build_entry_url methods

master
mortezaei 8 months ago
parent
commit
610488ee68
  1. 5
      utils/redis.py

5
utils/redis.py

@ -3,6 +3,7 @@ import hashlib
import random
import secrets
from datetime import datetime, timedelta
from typing import Optional
from urllib.parse import parse_qsl, urlencode, urlparse, urlunparse
from redis.exceptions import RedisError
@ -92,7 +93,7 @@ class OnlineClassTokenManager(RedisConfig):
seed = f"{course_id}:{user_identifier}:{secrets.token_urlsafe(16)}"
return hashlib.sha256(seed.encode()).hexdigest()
def store_token(self, token: str, payload: dict, ttl: int | None = None) -> None:
def store_token(self, token: str, payload: dict, ttl: Optional[int] = None) -> None:
data = {
**payload,
"generated_at": datetime.utcnow().isoformat() + "Z",
@ -109,7 +110,7 @@ class OnlineClassTokenManager(RedisConfig):
self.redis.delete(self._build_key(token))
@staticmethod
def build_entry_url(token: str, base_url: str | None = None) -> str:
def build_entry_url(token: str, base_url: Optional[str] = None) -> str:
base = base_url or getattr(settings, "ONLINE_CLASS_FRONTEND_DOMAIN", getattr(settings, "SITE_DOMAIN", ""))
if not base:
return f"?token={token}"

Loading…
Cancel
Save