def _get_events_and_planning(self, request): """Get list of event and planning based on the search criteria :param request: object representing the HTTP request """ filters, must, must_not = self._get_query(request) page = request.page or 1 max_results = self._get_page_size(request) req = ParsedRequest() req.args = MultiDict() req.args['source'] = json.dumps({ 'query': { 'bool': { 'must': must, 'must_not': must_not } }, 'filter': filters, 'size': int((5 * max_results) * math.ceil(page / 3)), 'sort': self._get_sort() }) req.args['projections'] = json.dumps(['_id', 'type', 'event_item']) req.exec_on_fetched_resource = False # don't call on_fetched_resource return get_resource_service('planning_search').get(req=req, lookup=None)
def _get_events_and_planning(self, request, query, search_filter): """Get list of event and planning based on the search criteria :param request: object representing the HTTP request """ # params = request.args or MultiDict() # query = construct_combined_search_query(params) page = request.page or 1 max_results = self._get_page_size(request, search_filter) req = ParsedRequest() req.args = MultiDict() req.args['source'] = json.dumps({ 'query': query['query'], 'sort': query['sort'] if query.get('sort') else self._get_sort(), 'size': int((5 * max_results) * math.ceil(page / 3)), }) req.args['projections'] = json.dumps(['_id', 'type', 'event_item']) req.page = page req.max_results = max_results req.exec_on_fetched_resource = False # don't call on_fetched_resource return get_resource_service('planning_search').get(req=req, lookup=None)