diff --git a/src/calibre/srv/legacy.py b/src/calibre/srv/legacy.py
index d3470258bc..b64fba4158 100644
--- a/src/calibre/srv/legacy.py
+++ b/src/calibre/srv/legacy.py
@@ -251,8 +251,19 @@ def mobile(ctx, rd):
@endpoint('/browse/{+rest=""}')
-def browse(ctx, rd, rest):
- raise HTTPRedirect(ctx.url_for(None))
+def browse(ctx, rd, rest): # implementation of https://bugs.launchpad.net/calibre/+bug/1698411
+ if rest.find('book/') == 0:
+ redirect = ctx.url_for(None) + '#book_id=' + rest[5:] + "&panel=book_details"
+ from lxml import etree as ET
+ return html(ctx, rd, endpoint,
+ E.html(E.head(
+ ET.XML(''),
+ ET.XML(''
+ ))))
+ else:
+ raise HTTPRedirect(ctx.url_for(None))
@endpoint('/stanza/{+rest=""}')