mirror of
https://github.com/Dvorinka/swingmusic-extended.git
synced 2026-06-05 04:53:01 +00:00
[server] fix playlist methods
- deepcopy playlists in get_all_playlists
This commit is contained in:
@@ -1,10 +1,13 @@
|
||||
"""
|
||||
This library contains all the functions related to playlists.
|
||||
"""
|
||||
from progress.bar import Bar
|
||||
from app import api, instances, models, exceptions, helpers
|
||||
|
||||
from app import api, instances, models
|
||||
from app.lib import trackslib
|
||||
|
||||
TrackExistsInPlaylist = exceptions.TrackExistsInPlaylist
|
||||
|
||||
|
||||
def add_track(playlistid: str, trackid: str):
|
||||
"""
|
||||
@@ -13,14 +16,23 @@ def add_track(playlistid: str, trackid: str):
|
||||
for playlist in api.PLAYLISTS:
|
||||
if playlist.playlistid == playlistid:
|
||||
track = trackslib.get_track_by_id(trackid)
|
||||
playlist.tracks.append(track)
|
||||
|
||||
instances.playlist_instance.add_track_to_playlist(playlistid, track)
|
||||
if track not in playlist.tracks:
|
||||
playlist.tracks.append(track)
|
||||
instances.playlist_instance.add_track_to_playlist(playlistid, track)
|
||||
return
|
||||
else:
|
||||
raise TrackExistsInPlaylist("Track already in playlist.")
|
||||
|
||||
|
||||
def create_all_playlists():
|
||||
"""
|
||||
Gets all playlists from the database.
|
||||
"""
|
||||
for playlist in instances.playlist_instance.get_all_playlists():
|
||||
playlists = instances.playlist_instance.get_all_playlists()
|
||||
|
||||
_bar = Bar("Creating playlists", max=len(playlists))
|
||||
for playlist in playlists:
|
||||
api.PLAYLISTS.append(models.Playlist(playlist))
|
||||
_bar.next()
|
||||
_bar.finish()
|
||||
|
||||
Reference in New Issue
Block a user