diff --git a/src/calibre/library/server/browse.py b/src/calibre/library/server/browse.py
index 470eb0c1f3..cd0bfb2c48 100644
--- a/src/calibre/library/server/browse.py
+++ b/src/calibre/library/server/browse.py
@@ -836,7 +836,7 @@ class BrowseServer(object):
raw = json.dumps('\n'.join(summs), ensure_ascii=True)
return raw
- def browse_render_details(self, id_, add_random_button=False):
+ def browse_render_details(self, id_, add_random_button=False, add_title=False):
try:
mi = self.db.get_metadata(id_, index_is_id=True)
except:
@@ -894,6 +894,8 @@ class BrowseServer(object):
fields.append((m['name'], r))
fields.sort(key=lambda x: sort_key(x[0]))
+ if add_title:
+ fields.insert(0, ('Title', u'%s: %s' % (xml(_('Title')), xml(mi.title))))
fields = [u'
{0}
'.format(f[1]) for f in
fields]
fields = u'%s
'%('\n\n'.join(fields))
@@ -934,7 +936,7 @@ class BrowseServer(object):
book_id = random.choice(self.search_for_books(''))
except IndexError:
raise cherrypy.HTTPError(404, 'This library has no books')
- ans = self.browse_render_details(book_id, add_random_button=True)
+ ans = self.browse_render_details(book_id, add_random_button=True, add_title=True)
return self.browse_template('').format(
title='', script='book();', main=ans)
@@ -945,9 +947,9 @@ class BrowseServer(object):
except:
raise cherrypy.HTTPError(404, 'invalid id: %r'%id)
- ans = self.browse_render_details(id_)
+ ans = self.browse_render_details(id_, add_title=True)
return self.browse_template('').format(
- title='', script='book();', main=ans)
+ title=self.db.title(id_, index_is_id=True), script='book();', main=ans)
# }}}