modified: app.py
modified: templates/quiz.html
This commit is contained in:
8
app.py
8
app.py
@@ -244,7 +244,13 @@ def play_track():
|
||||
return {"error": "Missing device_id or track_uri"}, 400
|
||||
|
||||
sp = get_spotify_client()
|
||||
sp.start_playback(device_id=device_id, uris=[track_uri], position_ms=position_ms)
|
||||
try:
|
||||
sp.start_playback(device_id=device_id, uris=[track_uri], position_ms=position_ms)
|
||||
except spotipy.exceptions.SpotifyException as e:
|
||||
if "Device not found" in str(e):
|
||||
# Spezieller Fehlercode, damit das Frontend weiß, dass es neu laden soll
|
||||
return {"error": "device_not_found", "message": "Spotify-Player nicht gefunden. Die Seite wird neu geladen..."}, 409
|
||||
return {"error": str(e)}, 500
|
||||
|
||||
return {"success": True}
|
||||
|
||||
|
||||
@@ -144,11 +144,14 @@
|
||||
}
|
||||
// Starte Wiedergabe an gewünschter Stelle
|
||||
fetch(`/play_track?device_id=${device_id}&track_uri={{ track.uri }}&position_ms=${position_ms}`, { method: 'POST' })
|
||||
.then(response => {
|
||||
if (!response.ok) {
|
||||
throw new Error('Network response was not ok');
|
||||
.then(response => response.json())
|
||||
.then(data => {
|
||||
if (data.error === "device_not_found") {
|
||||
alert(data.message || "Spotify-Player nicht gefunden. Die Seite wird neu geladen...");
|
||||
window.location.reload();
|
||||
return;
|
||||
}
|
||||
return response.json();
|
||||
// ...bisheriger Code...
|
||||
})
|
||||
.catch(error => {
|
||||
console.error('Error starting playback:', error);
|
||||
|
||||
Reference in New Issue
Block a user