X-Git-Url: https://git.kaliko.me/?a=blobdiff_plain;f=sima%2Flib%2Fsimadb.py;h=5646a498f4632f4f11f01b346af6beeaa1ed0a3c;hb=dd6211f6f921c693774e17e894094637303575d0;hp=07794dc6d24f079ea6cc5b11e234e6e02e15f4b4;hpb=6e0cb104973681f2344de9c5ae4f04c62686401b;p=mpd-sima.git diff --git a/sima/lib/simadb.py b/sima/lib/simadb.py index 07794dc..5646a49 100644 --- a/sima/lib/simadb.py +++ b/sima/lib/simadb.py @@ -604,7 +604,7 @@ class SimaDB: connection = with_connection else: connection = self.get_database_connection() - track_id = self.get_track(track, with_connection=connection, add=True) + track_id = self.get_track(track, with_connection=connection, add=add) rows = connection.execute( "SELECT id FROM blocklist WHERE track = ?", (track_id,)) if not rows.fetchone(): @@ -629,7 +629,7 @@ class SimaDB: connection = with_connection else: connection = self.get_database_connection() - album_id = self.get_album(album, with_connection=connection, add=True) + album_id = self.get_album(album, with_connection=connection, add=add) rows = connection.execute( "SELECT id FROM blocklist WHERE album = ?", (album_id,)) if not rows.fetchone(): @@ -654,7 +654,7 @@ class SimaDB: connection = with_connection else: connection = self.get_database_connection() - artist_id = self.get_artist(artist, with_connection=connection, add=True) + artist_id = self.get_artist(artist, with_connection=connection, add=add) rows = connection.execute( "SELECT id FROM blocklist WHERE artist = ?", (artist_id,)) if not rows.fetchone(): @@ -670,6 +670,24 @@ class SimaDB: connection.close() return bl + def view_bl(self): + connection = self.get_database_connection() + connection.row_factory = sqlite3.Row + rows = connection.execute("""SELECT artists.name AS artist, + artists.mbid AS musicbrainz_artist, + albums.name AS album, + albums.mbid AS musicbrainz_album, + tracks.title AS title, + tracks.mbid AS musicbrainz_title, + blocklist.id + FROM blocklist + LEFT OUTER JOIN artists ON blocklist.artist = artists.id + LEFT OUTER JOIN albums ON blocklist.album = albums.id + LEFT OUTER JOIN tracks ON blocklist.track = tracks.id""") + res = [dict(row) for row in rows.fetchall()] + connection.close() + return res + def delete_bl(self, track=None, album=None, artist=None): if not (track or album or artist): return