🚨 Optimized python-imports
This commit is contained in:
@@ -1,9 +1,9 @@
|
||||
from fastapi import FastAPI
|
||||
from classquiz.socket_server import sio
|
||||
from socketio import ASGIApp
|
||||
|
||||
from classquiz.routers import users, quiz, utils
|
||||
from classquiz.db import database
|
||||
from classquiz.routers import users, quiz, utils
|
||||
from classquiz.socket_server import sio
|
||||
|
||||
app = FastAPI()
|
||||
app.state.database = database
|
||||
|
||||
+16
-16
@@ -1,21 +1,21 @@
|
||||
from datetime import timedelta
|
||||
from typing import Dict
|
||||
from typing import Optional
|
||||
from typing import Union
|
||||
|
||||
from fastapi import Depends
|
||||
from fastapi import HTTPException
|
||||
from fastapi import Request
|
||||
from fastapi import status
|
||||
from fastapi.openapi.models import OAuthFlows as OAuthFlowsModel
|
||||
from fastapi.security import OAuth2
|
||||
from fastapi.security.utils import get_authorization_scheme_param
|
||||
from jose import JWTError, jwt
|
||||
from passlib.hash import argon2
|
||||
|
||||
from classquiz.cache import get_cache
|
||||
from classquiz.config import settings
|
||||
from classquiz.db.models import *
|
||||
from typing import Union
|
||||
from jose import JWTError, jwt
|
||||
from fastapi.security import OAuth2PasswordBearer, OAuth2PasswordRequestForm
|
||||
from passlib.hash import argon2
|
||||
from datetime import datetime, timedelta
|
||||
from classquiz.cache import get_cache
|
||||
from fastapi import APIRouter, Depends, HTTPException, status
|
||||
from fastapi.security import OAuth2
|
||||
from fastapi.openapi.models import OAuthFlows as OAuthFlowsModel
|
||||
from fastapi import Request
|
||||
from fastapi.security.utils import get_authorization_scheme_param
|
||||
from fastapi import HTTPException
|
||||
from fastapi import status
|
||||
from typing import Optional
|
||||
from typing import Dict
|
||||
import pydantic
|
||||
|
||||
# pwd_context = CryptContext(schemes=["bcrypt"], deprecated="auto")
|
||||
pwd_context = argon2
|
||||
|
||||
+6
-4
@@ -1,9 +1,11 @@
|
||||
import uuid
|
||||
from json import loads
|
||||
from typing import Union
|
||||
|
||||
import ormar
|
||||
|
||||
from classquiz.config import redis, settings
|
||||
from classquiz.db.models import User
|
||||
import ormar
|
||||
import uuid
|
||||
from typing import Union
|
||||
from json import loads, dumps
|
||||
|
||||
|
||||
async def cache_account(criteria: str, content: str) -> Union[User, None]:
|
||||
|
||||
+1
-1
@@ -1,5 +1,5 @@
|
||||
from pydantic import BaseSettings, RedisDsn, PostgresDsn
|
||||
import redis.asyncio as redis_lib
|
||||
from pydantic import BaseSettings, RedisDsn, PostgresDsn
|
||||
|
||||
|
||||
class Settings(BaseSettings):
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import databases
|
||||
import sqlalchemy
|
||||
|
||||
from classquiz.config import settings
|
||||
|
||||
database = databases.Database(settings.db_url)
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
from typing import Optional
|
||||
from pydantic import BaseModel, Json
|
||||
from . import metadata, database
|
||||
|
||||
import ormar
|
||||
from pydantic import BaseModel, Json
|
||||
|
||||
from . import metadata, database
|
||||
|
||||
|
||||
class User(ormar.Model):
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
from jinja2 import Environment, PackageLoader, select_autoescape
|
||||
from classquiz.db.models import User
|
||||
|
||||
from email.mime.multipart import MIMEMultipart
|
||||
from classquiz.config import settings
|
||||
from email.mime.text import MIMEText
|
||||
import smtplib
|
||||
import ssl
|
||||
from email.mime.multipart import MIMEMultipart
|
||||
from email.mime.text import MIMEText
|
||||
|
||||
from jinja2 import Environment, PackageLoader, select_autoescape
|
||||
|
||||
from classquiz.config import settings
|
||||
from classquiz.db.models import User
|
||||
|
||||
jinja = Environment(
|
||||
loader=PackageLoader('classquiz.emails', 'templates'),
|
||||
|
||||
@@ -1,15 +1,14 @@
|
||||
import json
|
||||
import os
|
||||
import uuid
|
||||
from datetime import datetime
|
||||
from random import randint
|
||||
|
||||
from fastapi import APIRouter, Depends, HTTPException
|
||||
from fastapi.responses import JSONResponse
|
||||
from classquiz.config import redis
|
||||
|
||||
from classquiz.auth import get_current_user, get_current_user_optional
|
||||
from classquiz.config import redis
|
||||
from classquiz.db.models import Quiz, QuizInput, User, PlayGame
|
||||
from random import randint
|
||||
import uuid
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@@ -1,14 +1,15 @@
|
||||
import os
|
||||
|
||||
from fastapi import APIRouter, HTTPException, Response
|
||||
from email_validator import validate_email, EmailNotValidError
|
||||
from classquiz.auth import *
|
||||
from fastapi import APIRouter, Response
|
||||
from fastapi.background import BackgroundTasks
|
||||
from classquiz.emails import send_mail
|
||||
from classquiz.config import redis
|
||||
from fastapi.responses import JSONResponse, RedirectResponse
|
||||
from fastapi.security import OAuth2PasswordRequestForm
|
||||
|
||||
from classquiz.auth import *
|
||||
from classquiz.config import redis
|
||||
from classquiz.db.models import *
|
||||
from classquiz.emails import send_mail
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
@@ -3,9 +3,10 @@ import io
|
||||
import qrcode
|
||||
import qrcode.image.svg
|
||||
from fastapi import APIRouter
|
||||
from classquiz.config import settings
|
||||
from fastapi.responses import Response
|
||||
|
||||
from classquiz.config import settings
|
||||
|
||||
router = APIRouter()
|
||||
|
||||
|
||||
|
||||
@@ -1,11 +1,12 @@
|
||||
import socketio
|
||||
import json
|
||||
from classquiz.config import redis, settings
|
||||
from classquiz.db.models import GameSession, GameAnser1, GameAnser2, PlayGame
|
||||
import aiohttp
|
||||
from redis.commands.json.path import Path
|
||||
|
||||
sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins="*")
|
||||
import aiohttp
|
||||
import socketio
|
||||
|
||||
from classquiz.config import redis, settings
|
||||
from classquiz.db.models import GameSession, PlayGame
|
||||
|
||||
sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins=[])
|
||||
|
||||
|
||||
@sio.event
|
||||
@@ -62,7 +63,8 @@ async def register_as_admin(sid, data):
|
||||
game_pin = data["game_pin"]
|
||||
game_id = data["game_id"]
|
||||
if (await redis.get(f"game_session:{game_pin}")) is None:
|
||||
await redis.set(f"game_session:{game_pin}", json.dumps({"admin": sid, "game_id": game_id, "players": []}), ex=18000)
|
||||
await redis.set(f"game_session:{game_pin}", json.dumps({"admin": sid, "game_id": game_id, "players": []}),
|
||||
ex=18000)
|
||||
|
||||
await sio.emit("registered_as_admin", {"game_id": game_id, "game": await redis.get(f"game:{data['game_pin']}")},
|
||||
room=sid)
|
||||
@@ -107,7 +109,8 @@ async def submit_answer(sid, data):
|
||||
if answers is None:
|
||||
await redis.set(f"game_session:{session['game_pin']}:{data['question_index']}",
|
||||
json.dumps(
|
||||
[{"username": session["username"], "answer": data["answer"], "right": answer_right}]), ex=18000)
|
||||
[{"username": session["username"], "answer": data["answer"], "right": answer_right}]),
|
||||
ex=18000)
|
||||
else:
|
||||
answers = json.loads(answers)
|
||||
answers.append({"username": session["username"], "answer": data["answer"], "right": answer_right})
|
||||
|
||||
Reference in New Issue
Block a user