sync rettet
This commit is contained in:
@@ -105,17 +105,24 @@ class SyncManager:
|
||||
threading.Thread(target=_run, daemon=True).start()
|
||||
|
||||
def push_and_pull(self, on_done=None, on_error=None):
|
||||
"""Pull FØR push — server er sandhed for playlister."""
|
||||
"""Push FØR pull — så sletninger når serveren inden pull henter data ned."""
|
||||
def _run():
|
||||
try:
|
||||
# 1. Pull FØR push — hent server-data ned lokalt
|
||||
pull_result = self._get("/sync/pull")
|
||||
self._apply_pull(pull_result)
|
||||
|
||||
# 2. Push lokal data op (sange, danse, dans-tags)
|
||||
# — playlister der kom fra serveren pushes IKKE
|
||||
# 1. Push lokal data op — inkl. sletninger
|
||||
payload = self._build_push_payload()
|
||||
push_result = self._post("/sync/push", payload)
|
||||
self._save_playlist_ids(push_result.get("playlist_id_map", {}))
|
||||
|
||||
# Ryd deleted_playlists nu de er sendt
|
||||
if payload.get("deleted_playlists"):
|
||||
conn = sqlite3.connect(self._db_path)
|
||||
conn.execute("DELETE FROM deleted_playlists")
|
||||
conn.commit()
|
||||
conn.close()
|
||||
|
||||
# 2. Pull — nu er sletninger gennemført på serveren
|
||||
pull_result = self._get("/sync/pull")
|
||||
self._apply_pull(pull_result)
|
||||
|
||||
pl_count = len(pull_result.get("my_playlists", []))
|
||||
logger.info(
|
||||
|
||||
Reference in New Issue
Block a user