Fix: Reload playlist after edited media is uploaded to server

CRITICAL FIX - This was the main issue preventing edited images from appearing!

Problem:
  - Edited media was being uploaded to server successfully
  - Server updated the playlist (new version returned: 34)
  - BUT player never reloaded the playlist
  - So edited images stayed invisible until restart

Solution:
1. EditPopup now sets should_refresh_playlist flag when upload succeeds
2. Main player checks this flag in check_playlist_and_play()
3. When flag is set, player immediately reloads playlist
4. Edited media appears instantly without needing restart

Testing:
  - Created diagnostic script test_edited_media_upload.py
  - Confirmed server accepts edited media and returns new playlist version
  - Verified SSL fix works correctly (verify=False)

Now edited images should appear immediately after save!
This commit is contained in:
Kiwy Player
2026-01-17 22:01:13 +02:00
parent 9b58f6b63d
commit 30f058182c
6 changed files with 201 additions and 1 deletions

View File

@@ -903,6 +903,7 @@ class SignagePlayer(Widget):
self.auto_resume_event = None # Track scheduled auto-resume
self.config = {}
self.playlist_version = None
self.should_refresh_playlist = False # Flag to reload playlist after edit upload
self.consecutive_errors = 0 # Track consecutive playback errors
self.max_consecutive_errors = 10 # Maximum errors before stopping
self.intro_played = False # Track if intro has been played
@@ -1218,6 +1219,16 @@ class SignagePlayer(Widget):
if not self.intro_played:
return
# Check if playlist needs to be refreshed (after edited media upload)
if self.should_refresh_playlist:
Logger.info("SignagePlayer: Reloading playlist due to edited media upload...")
self.should_refresh_playlist = False
self.load_playlist()
# If we were playing, restart from current position
if self.is_playing and self.playlist:
self.play_current_media(force_reload=True)
return
if not self.playlist:
self.load_playlist()