modified: app.py
modified: templates/quiz.html
This commit is contained in:
9
app.py
9
app.py
@@ -81,17 +81,21 @@ def quiz(playlist_id):
|
||||
played_tracks = session.get(f'played_tracks_{playlist_id}', [])
|
||||
score = session.get(f'score_{playlist_id}', 0)
|
||||
|
||||
# Wenn alle Songs gespielt wurden, played_tracks zurücksetzen, Score bleibt!
|
||||
available_tracks = [t for t in tracks if t["id"] not in played_tracks]
|
||||
if not available_tracks:
|
||||
played_tracks = []
|
||||
available_tracks = tracks
|
||||
score = 0 # Score zurücksetzen, wenn alle gespielt
|
||||
# Score NICHT zurücksetzen!
|
||||
|
||||
track = random.choice(available_tracks)
|
||||
played_tracks.append(track["id"])
|
||||
session[f'played_tracks_{playlist_id}'] = played_tracks
|
||||
session[f'score_{playlist_id}'] = score
|
||||
|
||||
# Für die Anzeige der beantworteten Fragen
|
||||
answered = len(played_tracks) - 1 if len(played_tracks) > 0 else 0
|
||||
|
||||
token_info = session.get('token_info', None)
|
||||
if not token_info:
|
||||
return redirect('/login')
|
||||
@@ -117,7 +121,8 @@ def quiz(playlist_id):
|
||||
all_tracks=all_tracks,
|
||||
question_number=len(played_tracks),
|
||||
total_questions=len(tracks),
|
||||
score=score
|
||||
score=score,
|
||||
answered=answered
|
||||
)
|
||||
|
||||
@app.route("/search_track", methods=["POST"])
|
||||
|
||||
@@ -291,8 +291,7 @@
|
||||
</head>
|
||||
<body>
|
||||
<div style="text-align:center; margin-bottom: 10px;">
|
||||
{% set answered = question_number - 1 if question_number > 0 else 0 %}
|
||||
<span id="progressInfo">Frage {{ answered + 1 }} von {{ total_questions }}</span>
|
||||
<span id="progressInfo">Songs in Playlist: {{ total_questions }}</span>
|
||||
<span id="scoreInfo" style="margin-left:20px;">
|
||||
Richtige: {{ score }} / {{ answered if answered > 0 else 1 }}
|
||||
({{ ((score / (answered if answered > 0 else 1)) * 100) | round(0) if answered > 0 else 0 }}%)
|
||||
|
||||
Reference in New Issue
Block a user