%endfor
diff --git a/data/interfaces/classic/managenew.html b/data/interfaces/classic/managenew.html
index eefe2881..ac329cda 100644
--- a/data/interfaces/classic/managenew.html
+++ b/data/interfaces/classic/managenew.html
@@ -22,8 +22,8 @@
%for artist in newartists:
-
-
${artist}
+
+
${artist['ArtistName']}
%endfor
diff --git a/data/interfaces/default/managenew.html b/data/interfaces/default/managenew.html
index b77cbf76..17d567f7 100644
--- a/data/interfaces/default/managenew.html
+++ b/data/interfaces/default/managenew.html
@@ -33,8 +33,8 @@
%for artist in newartists:
-
-
${artist}
+
+
${artist['ArtistName']}
%endfor
diff --git a/data/interfaces/remix/managenew.html b/data/interfaces/remix/managenew.html
index eefe2881..ac329cda 100644
--- a/data/interfaces/remix/managenew.html
+++ b/data/interfaces/remix/managenew.html
@@ -22,8 +22,8 @@
%for artist in newartists:
-
-
${artist}
+
+
${artist['ArtistName']}
%endfor
diff --git a/headphones/importer.py b/headphones/importer.py
index 9dea738b..5a5efa75 100644
--- a/headphones/importer.py
+++ b/headphones/importer.py
@@ -40,9 +40,6 @@ def is_exists(artistid):
def artistlist_to_mbids(artistlist, forced=False):
for artist in artistlist:
-
- if forced:
- artist = unicode(artist, 'utf-8')
results = mb.findArtist(artist, limit=1)
@@ -57,12 +54,15 @@ def artistlist_to_mbids(artistlist, forced=False):
logger.info('MusicBrainz query turned up no matches for: %s' % artist)
continue
- # Check if it's blacklisted/various artists
+ # Check if it's blacklisted/various artists (only check if it's not forced, e.g. through library scan auto-add.)
+ # Forced example = Adding an artist from Manage New Artists
myDB = db.DBConnection()
- bl_artist = myDB.action('SELECT * FROM blacklist WHERE ArtistID=?', [artistid]).fetchone()
- if bl_artist or artistid == various_artists_mbid:
- logger.info("Artist ID for '%s' is either blacklisted or Various Artists. To add artist, you must do it manually (Artist ID: %s)" % (artist, artistid))
- continue
+
+ if not forced:
+ bl_artist = myDB.action('SELECT * FROM blacklist WHERE ArtistID=?', [artistid]).fetchone()
+ if bl_artist or artistid == various_artists_mbid:
+ logger.info("Artist ID for '%s' is either blacklisted or Various Artists. To add artist, you must do it manually (Artist ID: %s)" % (artist, artistid))
+ continue
# Add to database if it doesn't exist
if not is_exists(artistid):
@@ -73,6 +73,10 @@ def artistlist_to_mbids(artistlist, forced=False):
havetracks = len(myDB.select('SELECT TrackTitle from tracks WHERE ArtistID=?', [artistid])) + len(myDB.select('SELECT TrackTitle from have WHERE ArtistName like ?', [artist]))
myDB.action('UPDATE artists SET HaveTracks=? WHERE ArtistID=?', [havetracks, artistid])
+ # Delete it from the New Artists if the request came from there
+ if forced:
+ myDB.action('DELETE from newartists WHERE ArtistName=?', [artist])
+
# Update the similar artist tag cloud:
logger.info('Updating artist information from Last.fm')
try:
@@ -245,8 +249,6 @@ 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 162f8e17..651ff7c8 100644
--- a/headphones/librarysync.py
+++ b/headphones/librarysync.py
@@ -126,7 +126,7 @@ def libraryScan(dir=None):
importer.artistlist_to_mbids(artist_list)
else:
logger.info('To add these artists, go to Manage->Manage New Artists')
- myDB.action('DELETE * from newartists')
+ myDB.action('DELETE from newartists')
for artist in artist_list:
myDB.action('INSERT into newartists VALUES (?)', [artist])