diff --git a/src/calibre/library/server/browse.py b/src/calibre/library/server/browse.py index b682e3d66f..e8fdb5dfbb 100644 --- a/src/calibre/library/server/browse.py +++ b/src/calibre/library/server/browse.py @@ -26,6 +26,7 @@ class BrowseServer(object): connect('browse_json', base_href+'/json/{query}', self.browse_json) def browse_template(self, category=True): + def generate(): if category: sort_opts = [('rating', _('Average rating')), ('name', diff --git a/src/calibre/library/server/cache.py b/src/calibre/library/server/cache.py index 94e4a1c041..87bd9ed0c5 100644 --- a/src/calibre/library/server/cache.py +++ b/src/calibre/library/server/cache.py @@ -29,6 +29,8 @@ class Cache(object): def categories_cache(self, restrict_to=frozenset([])): + base_restriction = self.search_cache('') + restrict_to = frozenset(restrict_to).intersection(base_restriction) old = self._category_cache.pop(frozenset(restrict_to), None) if old is None or old[0] <= self.db.last_modified(): categories = self.db.get_categories(ids=restrict_to)