✨ Migrated to deta from imgur for image-storing
This commit is contained in:
@@ -9,8 +9,9 @@ from fastapi.responses import JSONResponse
|
||||
import re
|
||||
|
||||
from classquiz.auth import get_current_user, get_current_user_optional
|
||||
from classquiz.config import redis
|
||||
from classquiz.config import redis, settings
|
||||
from classquiz.db.models import Quiz, QuizInput, User, PlayGame
|
||||
settings = settings()
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
@@ -18,9 +19,10 @@ router = APIRouter()
|
||||
@router.post("/create")
|
||||
async def create_quiz_lol(quiz_input: QuizInput, user: User = Depends(get_current_user)):
|
||||
imgur_regex = r"^https://i\.imgur\.com\/.{7}.(jpg|png|gif)$"
|
||||
server_regex = rf"^{settings.root_address}/api/v1/storage/download/.{36}--.{36}$"
|
||||
for question in quiz_input.questions:
|
||||
if question.image is not None:
|
||||
if not re.match(imgur_regex, question.image):
|
||||
if not re.match(imgur_regex, question.image) or not re.match(server_regex, question.image):
|
||||
raise HTTPException(status_code=400, detail="image url is not valid")
|
||||
quiz = Quiz(**quiz_input.dict(), user_id=user.id, id=uuid.uuid4())
|
||||
await redis.delete("global_quiz_count")
|
||||
|
||||
Reference in New Issue
Block a user