diff --git a/data/interfaces/default/artist.html b/data/interfaces/default/artist.html
index 49acbef7..31299d6e 100644
--- a/data/interfaces/default/artist.html
+++ b/data/interfaces/default/artist.html
@@ -210,7 +210,7 @@
null,
null,
null,
- null,
+ { "sType": "date" },
null,
null,
{ "sType": "title-numeric"},
diff --git a/headphones/mb.py b/headphones/mb.py
index 29b5bb8a..36eeeae8 100644
--- a/headphones/mb.py
+++ b/headphones/mb.py
@@ -326,8 +326,8 @@ def getRelease(releaseid, include_artist_info=True):
release['title'] = unicode(results['title'])
release['id'] = unicode(results['id'])
- release['asin'] = unicode(results['asin']) if 'asin' in results else u'None'
- release['date'] = unicode(results['date']) if 'date' in results else u'None'
+ release['asin'] = unicode(results['asin']) if 'asin' in results else None
+ release['date'] = unicode(results['date']) if 'date' in results else None
try:
release['format'] = unicode(results['medium-list'][0]['format'])
except:
diff --git a/headphones/webserve.py b/headphones/webserve.py
index 7e905a24..14f29a80 100644
--- a/headphones/webserve.py
+++ b/headphones/webserve.py
@@ -62,6 +62,21 @@ class WebInterface(object):
artist = myDB.action('SELECT * FROM artists WHERE ArtistID=?', [ArtistID]).fetchone()
albums = myDB.select('SELECT * from albums WHERE ArtistID=? order by ReleaseDate DESC', [ArtistID])
+ # Don't redirect to the artist page until it has the bare minimum info inserted
+ # Redirect to the home page if we still can't get it after 5 seconds
+ retry = 0
+
+ while retry < 5:
+ if not artist:
+ time.sleep(1)
+ artist = myDB.action('SELECT * FROM artists WHERE ArtistID=?', [ArtistID]).fetchone()
+ retry += 1
+ else:
+ break
+
+ if not artist:
+ raise cherrypy.HTTPRedirect("home")
+
# Serve the extras up as a dict to make things easier for new templates
extras_list = ["single", "ep", "compilation", "soundtrack", "live", "remix", "spokenword", "audiobook"]
extras_dict = {}
@@ -79,8 +94,6 @@ class WebInterface(object):
extras_dict[extra] = ""
i+=1
- if artist is None:
- raise cherrypy.HTTPRedirect("home")
return serve_template(templatename="artist.html", title=artist['ArtistName'], artist=artist, albums=albums, extras=extras_dict)
artistPage.exposed = True