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})
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
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)]