diff --git a/data/interfaces/brink/managenew.html b/data/interfaces/brink/managenew.html index 0f6dd919..cd75ddee 100644 --- a/data/interfaces/brink/managenew.html +++ b/data/interfaces/brink/managenew.html @@ -20,7 +20,7 @@ - %for artist in headphones.NEW_ARTISTS: + %for artist in newartists: ${artist} @@ -49,4 +49,4 @@ }); }); - \ No newline at end of file + diff --git a/data/interfaces/classic/managenew.html b/data/interfaces/classic/managenew.html index bea493b2..eefe2881 100644 --- a/data/interfaces/classic/managenew.html +++ b/data/interfaces/classic/managenew.html @@ -20,7 +20,7 @@ - %for artist in headphones.NEW_ARTISTS: + %for artist in newartists: ${artist} @@ -49,4 +49,4 @@ }); }); - \ No newline at end of file + diff --git a/data/interfaces/default/managenew.html b/data/interfaces/default/managenew.html index c261c52e..b77cbf76 100644 --- a/data/interfaces/default/managenew.html +++ b/data/interfaces/default/managenew.html @@ -31,7 +31,7 @@ - %for artist in headphones.NEW_ARTISTS: + %for artist in newartists: ${artist} @@ -64,4 +64,4 @@ initActions(); }); - \ No newline at end of file + diff --git a/data/interfaces/remix/managenew.html b/data/interfaces/remix/managenew.html index bea493b2..eefe2881 100644 --- a/data/interfaces/remix/managenew.html +++ b/data/interfaces/remix/managenew.html @@ -20,7 +20,7 @@ - %for artist in headphones.NEW_ARTISTS: + %for artist in newartists: ${artist} @@ -49,4 +49,4 @@ }); }); - \ No newline at end of file + diff --git a/headphones/__init__.py b/headphones/__init__.py index 3d81e2a7..bea13250 100644 --- a/headphones/__init__.py +++ b/headphones/__init__.py @@ -89,7 +89,6 @@ PREFERRED_QUALITY = None PREFERRED_BITRATE = None DETECT_BITRATE = False ADD_ARTISTS = False -NEW_ARTISTS = [] CORRECT_METADATA = False MOVE_FILES = False RENAME_FILES = False @@ -698,6 +697,7 @@ def dbcheck(): c.execute('CREATE TABLE IF NOT EXISTS lastfmcloud (ArtistName TEXT, ArtistID TEXT, Count INTEGER)') c.execute('CREATE TABLE IF NOT EXISTS descriptions (ArtistID TEXT, ReleaseGroupID TEXT, ReleaseID TEXT, Summary TEXT, Content TEXT, LastUpdated TEXT)') c.execute('CREATE TABLE IF NOT EXISTS blacklist (ArtistID TEXT UNIQUE)') + c.execute('CREATE TABLE IF NOT EXISTS newartists (ArtistName TEXT UNIQUE)') c.execute('CREATE TABLE IF NOT EXISTS releases (ReleaseID TEXT, ReleaseGroupID TEXT, UNIQUE(ReleaseID, ReleaseGroupID))') c.execute('CREATE INDEX IF NOT EXISTS tracks_albumid ON tracks(AlbumID ASC)') c.execute('CREATE INDEX IF NOT EXISTS album_artistid_reldate ON albums(ArtistID ASC, ReleaseDate DESC)') diff --git a/headphones/importer.py b/headphones/importer.py index 838d4e2f..9dea738b 100644 --- a/headphones/importer.py +++ b/headphones/importer.py @@ -245,6 +245,8 @@ def addArtisttoDB(artistid, extrasonly=False): myDB.upsert("artists", newValueDict, controlValueDict) + myDB.action('DELETE from newartists WHERE ArtistName=?', [artist['artist_name']]) + logger.debug(u"Updating cache for: " + artist['artist_name']) cache.getThumb(ArtistID=artistid) diff --git a/headphones/librarysync.py b/headphones/librarysync.py index fe9bfaa1..162f8e17 100644 --- a/headphones/librarysync.py +++ b/headphones/librarysync.py @@ -126,7 +126,9 @@ def libraryScan(dir=None): importer.artistlist_to_mbids(artist_list) else: logger.info('To add these artists, go to Manage->Manage New Artists') - headphones.NEW_ARTISTS = artist_list + myDB.action('DELETE * from newartists') + for artist in artist_list: + myDB.action('INSERT into newartists VALUES (?)', [artist]) if headphones.DETECT_BITRATE: headphones.PREFERRED_BITRATE = sum(bitrates)/len(bitrates)/1000 diff --git a/headphones/webserve.py b/headphones/webserve.py index bcced9eb..bd2c11e1 100644 --- a/headphones/webserve.py +++ b/headphones/webserve.py @@ -236,7 +236,9 @@ class WebInterface(object): manageAlbums.exposed = True def manageNew(self): - return serve_template(templatename="managenew.html", title="Manage New Artists") + myDB = db.DBConnection() + newartists = myDB.select('SELECT * from newartists') + return serve_template(templatename="managenew.html", title="Manage New Artists", newartists=newartists) manageNew.exposed = True def markArtists(self, action=None, **args):