def _collections(request): """Handle the request for collections.""" form = SecondarySearchForm(request.GET) form.is_valid() query = form.cleaned_data.get('q', '') search_opts = {} search_opts['limit'] = form.cleaned_data.get('pp', DEFAULT_NUM_RESULTS) page = form.cleaned_data.get('page') or 1 search_opts['offset'] = (page - 1) * search_opts['limit'] search_opts['sort'] = form.cleaned_data.get('sortby') try: results = CollectionsClient().query(query, **search_opts) except SearchError: return jingo.render(request, 'search/down.html', {}, status=503) pager = amo.utils.paginate(request, results, search_opts['limit']) c = dict(pager=pager, form=form, query=query, opts=search_opts, filter=bandwagon.views.get_filter(request)) return jingo.render(request, 'search/collections.html', c)
def _collections(request): """Handle the request for collections.""" form = SecondarySearchForm(request.GET) form.is_valid() query = form.cleaned_data.get('q', '') search_opts = {} search_opts['limit'] = form.cleaned_data.get('pp', DEFAULT_NUM_RESULTS) page = form.cleaned_data.get('page') or 1 search_opts['offset'] = (page - 1) * search_opts['limit'] search_opts['sort'] = form.cleaned_data.get('sortby') client = CollectionsClient() try: results = client.query(query, **search_opts) except SearchError: return jingo.render(request, 'search/down.html', {}, status=503) pager = amo.utils.paginate(request, results, search_opts['limit']) c = { 'pager': pager, 'form': form, } return jingo.render(request, 'search/collections.html', c)
def _personas(request): """Handle the request for persona searches.""" form = SecondarySearchForm(request.GET) if not form.is_valid(): log.error(form.errors) query = form.data.get('q', '') search_opts = {} search_opts['limit'] = form.cleaned_data.get('pp', DEFAULT_NUM_RESULTS) page = form.cleaned_data.get('page') or 1 search_opts['offset'] = (page - 1) * search_opts['limit'] try: results = PersonasClient().query(query, **search_opts) except SearchError: return jingo.render(request, 'search/down.html', {}, status=503) pager = amo.utils.paginate(request, results, search_opts['limit']) categories, filter, _, _ = browse.views.personas_listing(request) c = dict(pager=pager, form=form, categories=categories, query=query, filter=filter) return jingo.render(request, 'search/personas.html', c)
def _personas(request): "Handle the request for persona searches." form = SecondarySearchForm(request.GET) form.is_valid() query = form.cleaned_data.get('q', '') search_opts = {} search_opts['limit'] = form.cleaned_data.get('pp', DEFAULT_NUM_RESULTS) page = form.cleaned_data.get('page') or 1 search_opts['offset'] = (page - 1) * search_opts['limit'] client = PersonasClient() q = Category.objects.filter(application=request.APP.id, type=amo.ADDON_PERSONA) categories = order_by_translation(q, 'name') try: results = client.query(query, **search_opts) except SearchError: return jingo.render(request, 'search/down.html', {}, status=503) pager = amo.utils.paginate(request, results, search_opts['limit']) c = { 'pager': pager, 'form': form, 'categories': categories, } return jingo.render(request, 'search/personas.html', c)