def ajax(): q = request.args.get("q") page = int(request.args.get("page", 1)) filters = request.args.getlist("filters[]") index_service = indexing.get_service() if not filters: results = index_service.search(q, File, limit=page*PAGE_SIZE) hit_count = results.estimated_length() else: fieldname, text = filters[0].split(":", 1) filter = Term(fieldname, text) print filter results = index_service.search(q, File, limit=page*PAGE_SIZE, filter=filter) hit_count = results.estimated_length() pagination = Pagination(page, PAGE_SIZE, hit_count) hits = results[(page-1)*PAGE_SIZE:page*PAGE_SIZE] return render_template('search/search-ajax.html', query=q, hits=hits, hit_count=hit_count, pagination=pagination)
def search_docs(): """Alternative route for document search.""" q = request.args.get("q") page = int(request.args.get("page", 1)) breadcrumbs = [ dict(path="/", label="Home"), dict(path="", label="Search for '%s'" % q), ] index_service = indexing.get_service() results = index_service.search(q, File, page*PAGE_SIZE) hit_count = results.estimated_length() pagination = Pagination(page, PAGE_SIZE, hit_count) facets = [] facets.append(make_facet(results, "Language", "language")) facets.append(make_facet(results, "File format", "mime_type")) facets.append(make_facet(results, "Creator", "creator")) facets.append(make_facet(results, "Owner", "owner")) # ('Created since', []), # ('Modified since', []), hits = results[(page-1)*PAGE_SIZE:page*PAGE_SIZE] return render_template('search/search-docs.html', query=q, hits=hits, hit_count=hit_count, pagination=pagination, facets=facets, breadcrumbs=breadcrumbs)
def setUp(self): self.index = indexing.get_service() self.index.start() IntegrationTestCase.setUp(self)
def register_services(self): # Initiate services self.extensions['indexing'] = indexing.get_service(self) self.extensions['audit'] = audit.get_service(self) self.extensions['activity'] = activity.get_service(self)