Deploy folkugat web

This commit is contained in:
marc
2025-03-30 20:52:47 +02:00
parent d596861a2e
commit 6962d70468
20 changed files with 182 additions and 1101 deletions

View File

@@ -1,27 +1,31 @@
from typing import Optional
from folkugat_web.dal.sql import Connection
from folkugat_web.dal.sql._connection import get_connection
from folkugat_web.dal.sql.playlists import query, write
from folkugat_web.log import logger
from folkugat_web.model import playlists
from folkugat_web.services.temes import links as links_service
from folkugat_web.services.temes import query as temes_query
def add_temes_to_playlist(playlist: playlists.Playlist) -> playlists.Playlist:
for set_ in playlist.sets:
add_temes_to_set(set_)
_ = add_temes_to_set(set_)
return playlist
def add_temes_to_set(set_: playlists.Set) -> playlists.Set:
for tema_in_set in set_.temes:
add_tema_to_tema_in_set(tema_in_set)
_ = add_tema_to_tema_in_set(tema_in_set)
return set_
def add_tema_to_tema_in_set(tema_in_set: playlists.TemaInSet) -> playlists.TemaInSet:
if tema_in_set.tema_id is not None:
tema_in_set.tema = temes_query.get_tema_by_id(tema_in_set.tema_id)
if not tema_in_set.tema:
logger.error("fCould not load tune in set: {tema_in_set}")
else:
_ = links_service.add_links_to_tema(tema_in_set.tema)
return tema_in_set