Sync på ID

This commit is contained in:
2026-04-19 22:01:56 +02:00
parent 34040af464
commit f943c5ffba
2 changed files with 23 additions and 6 deletions

View File

@@ -223,11 +223,13 @@ class SyncManager:
"note": row["note"] or "",
})
# Playlister (kun lokalt oprettede — IKKE dem der kom fra serveren)
# Playlister — send alle (nye og eksisterende) til serveren.
# Brug api_project_id som local_id hvis den kendes — så serveren
# kan matche på ID og ikke oprette duplikater.
playlists = []
for pl in conn.execute(
"SELECT id, name, description, tags, api_project_id FROM playlists "
"WHERE name != '__aktiv__' AND (api_project_id IS NULL OR api_project_id = '')"
"WHERE name != '__aktiv__' AND is_deleted = 0"
).fetchall():
pl_songs = []
for ps in conn.execute("""
@@ -246,8 +248,11 @@ class SyncManager:
"is_workshop": bool(ps["is_workshop"]),
"dance_override": ps["dance_override"] or "",
})
# Brug api_project_id som local_id hvis den kendes —
# serveren bruger dette til at finde eksisterende liste
local_id = pl["api_project_id"] or str(pl["id"])
playlists.append({
"local_id": str(pl["id"]),
"local_id": local_id,
"name": pl["name"],
"description": pl["description"] or "",
"tags": pl["tags"] or "",