예제 #1
0
def search_filter(request, query, filter=None, page=1):
    results = get_search_results(query, filter, page)

    result_types = [subclass.__name__ for subclass in Displayable.__subclasses__() if "pari" in subclass.__module__]

    return render_dajax_response('article/includes/search_result_list.html', {'results': results,
                                                                              'query': query,
                                                                              'filter': filter,
                                                                              'result_types': result_types,
                                                                              'request': request})
예제 #2
0
 def get_context_data(self, **kwargs):
     context = super(SearchList, self).get_context_data(**kwargs)
     context['result_types'] = [subclass.__name__ for subclass in Displayable.__subclasses__() if "pari" in subclass.__module__]
     context['filter'] = self.request.GET.get('filter')
     context['query'] = self.request.GET.get('query')
     return context
예제 #3
0
def get_result_types(filter, display_count=4):
    return [subclass.__name__ for subclass in
            sorted([subclass for subclass in Displayable.__subclasses__()
                    if "pari" in subclass.__module__ and is_searchable(subclass)],
            key=lambda x: type_sort_order(x, filter, display_count), reverse=True)]