Merge remote-tracking branch 'origin/master'
This commit is contained in:
@@ -1,3 +1,4 @@
|
||||
[flake8]
|
||||
max-line-length = 120
|
||||
extend-ignore = E203
|
||||
exclude = ./migrations/versions/,
|
||||
|
||||
@@ -22,3 +22,10 @@ repos:
|
||||
additional_dependencies:
|
||||
- "prettier-plugin-svelte@latest"
|
||||
- "prettier@latest"
|
||||
- repo: https://github.com/pycqa/flake8
|
||||
rev: 5.0.4
|
||||
hooks:
|
||||
- id: flake8
|
||||
# flake8 is passed in all tracked python files
|
||||
# so --exclude in .flake8 does not work
|
||||
exclude: ^migrations/versions/
|
||||
|
||||
@@ -81,10 +81,10 @@ def mint(resource, bits=20, now=None, ext="", saltchars=8, stamp_seconds=False):
|
||||
return challenge + _mint(challenge, bits)
|
||||
|
||||
|
||||
def _salt(l):
|
||||
"Return a random string of length 'l'"
|
||||
def _salt(length):
|
||||
"Return a random string of length 'length'"
|
||||
alphabet = ascii_letters + "+/="
|
||||
return "".join([choice(alphabet) for _ in [None] * l])
|
||||
return "".join([choice(alphabet) for _ in [None] * length])
|
||||
|
||||
|
||||
def _mint(challenge, bits):
|
||||
|
||||
@@ -169,7 +169,7 @@ async def update_quiz(quiz_id: str, quiz_input: QuizInput, user: User = Depends(
|
||||
quiz_id = uuid.UUID(quiz_id)
|
||||
except ValueError:
|
||||
raise HTTPException(status_code=400, detail="badly formed quiz id")
|
||||
## Check Cover-Image
|
||||
# Check Cover-Image
|
||||
|
||||
print(quiz_input.cover_image)
|
||||
if quiz_input.cover_image == "":
|
||||
|
||||
@@ -11,9 +11,9 @@ import socketio
|
||||
from cryptography.fernet import Fernet
|
||||
|
||||
from classquiz.config import redis, settings
|
||||
from classquiz.db.models import PlayGame, QuizQuestionType, GameSession, GamePlayer, RangeQuizAnswer, QuizQuestion
|
||||
from classquiz.db.models import PlayGame, QuizQuestionType, GameSession, GamePlayer, QuizQuestion
|
||||
from pydantic import BaseModel, ValidationError, validator
|
||||
from datetime import timedelta, datetime
|
||||
from datetime import datetime
|
||||
|
||||
sio = socketio.AsyncServer(async_mode="asgi", cors_allowed_origins=[])
|
||||
settings = settings()
|
||||
|
||||
@@ -57,7 +57,30 @@ example_quiz = {
|
||||
test_user_email = "sth@byom.de"
|
||||
test_user_password = "test"
|
||||
|
||||
# mock_test_results = {'0': [{'username': 'Player 1', 'answer': 'Byte, Bit, KB, MB, GB, TB', 'right': False}, {'username': 'Player 2', 'answer': 'Byte, Bit, KB, MB, GB, TB', 'right': False}, {'username': 'Player 3', 'answer': 'Bit, Byte, KB, MB, GB, TB', 'right': True}], '1': [{'username': 'Player 3', 'answer': 'CPU', 'right': True}, {'username': 'Player 2', 'answer': 'CPU', 'right': True}, {'username': 'Player 1', 'answer': 'CPU', 'right': True}], '2': [{'username': 'Player 1', 'answer': 'Peripheriegeräte', 'right': True}, {'username': 'Player 2', 'answer': 'Speichergeräte', 'right': False}, {'username': 'Player 3', 'answer': 'Kommunikationsgeräte', 'right': False}], '3': [{'username': 'Player 1', 'answer': 'die Taktfrequenz der CPU', 'right': True}, {'username': 'Player 2', 'answer': 'die Taktfrequenz der CPU', 'right': True}, {'username': 'Player 3', 'answer': 'die Taktfrequenz der CPU', 'right': True}], '4': [{'username': 'Player 3', 'answer': 'Drucker', 'right': True}, {'username': 'Player 2', 'answer': 'Drucker', 'right': True}, {'username': 'Player 1', 'answer': 'Tabellenkalkulation', 'right': False}], '5': [{'username': 'Player 1', 'answer': 'CPU (Central Processing Unit)', 'right': False}, {'username': 'Player 2', 'answer': 'RAM (Random Access Memory)', 'right': True}, {'username': 'Player 3', 'answer': 'RAM (Random Access Memory)', 'right': True}], '6': [{'username': 'Player 3', 'answer': 'RAM', 'right': True}, {'username': 'Player 2', 'answer': 'ROM', 'right': False}, {'username': 'Player 1', 'answer': 'RAM', 'right': True}], '7': [{'username': 'Player 1', 'answer': '1 TB (Terabyte)', 'right': True}, {'username': 'Player 2', 'answer': '500 KB (Kilobyte)', 'right': False}, {'username': 'Player 3', 'answer': '500 TB (Terabyte)', 'right': False}], '8': [{'username': 'Player 3', 'answer': 'Tabellenkalkulationsprogramm', 'right': True}, {'username': 'Player 2', 'answer': 'Tabellenkalkulationsprogramm', 'right': True}, {'username': 'Player 1', 'answer': 'Linux', 'right': False}], '9': [{'username': 'Player 1', 'answer': 'Anwendungsprogramme', 'right': True}, {'username': 'Player 2', 'answer': 'Lernprogramme', 'right': False}, {'username': 'Player 3', 'answer': 'Anwendungsprogramme', 'right': True}]}
|
||||
# mock_test_results = {'0': [{'username': 'Player 1', 'answer': 'Byte, Bit, KB, MB, GB, TB', 'right': False},
|
||||
# {'username': 'Player 2', 'answer': 'Byte, Bit, KB, MB, GB, TB', 'right': False}, {'username': 'Player 3',
|
||||
# 'answer': 'Bit, Byte, KB, MB, GB, TB', 'right': True}], '1': [{'username': 'Player 3', 'answer': 'CPU',
|
||||
# 'right': True}, {'username': 'Player 2', 'answer': 'CPU', 'right': True}, {'username': 'Player 1',
|
||||
# 'answer': 'CPU', 'right': True}], '2': [{'username': 'Player 1', 'answer': 'Peripheriegeräte',
|
||||
# 'right': True}, {'username': 'Player 2', 'answer': 'Speichergeräte', 'right': False},
|
||||
# {'username': 'Player 3', 'answer': 'Kommunikationsgeräte', 'right': False}], '3': [{'username': 'Player 1',
|
||||
# 'answer': 'die Taktfrequenz der CPU', 'right': True}, {'username': 'Player 2',
|
||||
# 'answer': 'die Taktfrequenz der CPU', 'right': True}, {'username': 'Player 3',
|
||||
# 'answer': 'die Taktfrequenz der CPU', 'right': True}], '4': [{'username': 'Player 3', 'answer': 'Drucker',
|
||||
# 'right': True}, {'username': 'Player 2', 'answer': 'Drucker', 'right': True}, {'username': 'Player 1',
|
||||
# 'answer': 'Tabellenkalkulation', 'right': False}], '5': [{'username': 'Player 1',
|
||||
# 'answer':'CPU (Central Processing Unit)', 'right': False}, {'username': 'Player 2',
|
||||
# 'answer': 'RAM (Random Access Memory)', 'right': True}, {'username': 'Player 3',
|
||||
# 'answer': 'RAM (Random Access Memory)', 'right': True}], '6': [{'username': 'Player 3', 'answer': 'RAM',
|
||||
# 'right': True}, {'username': 'Player 2', 'answer': 'ROM', 'right': False}, {'username': 'Player 1',
|
||||
# 'answer': 'RAM', 'right': True}], '7': [{'username': 'Player 1', 'answer': '1 TB (Terabyte)',
|
||||
# 'right': True}, {'username': 'Player 2', 'answer': '500 KB (Kilobyte)', 'right': False},
|
||||
# {'username': 'Player 3', 'answer': '500 TB (Terabyte)', 'right': False}], '8': [{'username': 'Player 3',
|
||||
# 'answer': 'Tabellenkalkulationsprogramm', 'right': True}, {'username': 'Player 2',
|
||||
# 'answer': 'Tabellenkalkulationsprogramm', 'right': True}, {'username': 'Player 1', 'answer': 'Linux',
|
||||
# 'right': False}], '9': [{'username': 'Player 1', 'answer': 'Anwendungsprogramme', 'right': True},
|
||||
# {'username': 'Player 2', 'answer': 'Lernprogramme', 'right': False}, {'username': 'Player 3',
|
||||
# 'answer': 'Anwendungsprogramme', 'right': True}]}
|
||||
|
||||
|
||||
@pytest.fixture(scope="module")
|
||||
|
||||
@@ -490,7 +490,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div
|
||||
class="lg:border-l lg:border-l-black lg:border-t-0 border-t border-t-black flex lg:flex-col flex-row stretch overflow-x-scroll"
|
||||
class="lg:border-l lg:border-l-black lg:border-t-0 border-t border-t-black flex lg:flex-col flex-row stretch overflow-x-auto why-classquiz"
|
||||
>
|
||||
{#each classquiz_reasons as reason, index}
|
||||
<div
|
||||
@@ -517,3 +517,26 @@
|
||||
</div>
|
||||
{/if}
|
||||
<Footer />
|
||||
|
||||
<style>
|
||||
.why-classquiz::-webkit-scrollbar {
|
||||
height: 0.8rem;
|
||||
margin-bottom: 5rem;
|
||||
}
|
||||
|
||||
.why-classquiz::-webkit-scrollbar-track {
|
||||
box-shadow: inset 0 0 10px 10px transparent;
|
||||
border: solid 3px transparent;
|
||||
}
|
||||
|
||||
.why-classquiz::-webkit-scrollbar-thumb {
|
||||
box-shadow: inset 0 0 10px 10px #374151;
|
||||
border: solid 3px transparent;
|
||||
border-radius: 15px;
|
||||
}
|
||||
|
||||
.why-classquiz::-webkit-scrollbar-thumb:hover {
|
||||
box-shadow: inset 0 0 10px 10px #555;
|
||||
border: solid 3px transparent;
|
||||
}
|
||||
</style>
|
||||
|
||||
@@ -6,8 +6,6 @@ from logging.config import fileConfig
|
||||
from classquiz.db.models import metadata
|
||||
from classquiz.config import settings
|
||||
from sqlalchemy import create_engine
|
||||
from sqlalchemy.ext.asyncio import async_engine_from_config
|
||||
import asyncio
|
||||
|
||||
from alembic import context
|
||||
|
||||
|
||||
Reference in New Issue
Block a user