def process_select_search_haystack(request, select_key): try: data = get_select_data(request, select_key) except KeyError: return _cant_get_key(request) form = FacetedSearchForm(request.GET) if not form.is_valid(): # do not think this can happen raise ValueError cd = form.cleaned_data if cd['q']: context = {'select_key': select_key} allowed_selects = [] for select in ['publisher', 'series', 'issue', 'story']: if data.get(select, False): allowed_selects.append(select) context['allowed_selects'] = allowed_selects sqs = GcdSearchQuerySet().facet('facet_model_name') return PaginatedFacetedSearchView(searchqueryset=sqs)(request, context=context) else: return HttpResponseRedirect( urlresolvers.reverse('select_object', kwargs={'select_key': select_key}) + '?' + request.META['QUERY_STRING'])
def mycomics_search(request): sqs = GcdSearchQuerySet().facet('facet_model_name') allowed_selects = ['issue', 'story'] data = {'issue': True, 'story': True, 'allowed_selects': allowed_selects, 'return': add_selected_issues_to_collection, 'cancel': HttpResponseRedirect(urlresolvers\ .reverse('collections_list'))} select_key = store_select_data(request, None, data) context = {'select_key': select_key, 'multiple_selects': True, 'allowed_selects': allowed_selects} return PaginatedFacetedSearchView(searchqueryset=sqs)(request, context=context)
# redirects of old lasso pages url(r'^publisher_details.lasso/$', gcd_views.redirect.publisher), url(r'^series.lasso/$', gcd_views.redirect.series), url(r'^indexstatus.lasso/$', gcd_views.redirect.series_status), url(r'^scans.lasso/$', gcd_views.redirect.series_scans), url(r'^covers.lasso/$', gcd_views.redirect.series_covers), url(r'^details.lasso/$', gcd_views.redirect.issue), url(r'^coverview.lasso/$', gcd_views.redirect.issue_cover), url(r'^daily_covers.lasso/$', gcd_views.redirect.daily_covers), url(r'^search.lasso/$', gcd_views.redirect.search), ] # haystack search sqs = GcdSearchQuerySet().facet('facet_model_name').facet('country') \ .facet('language').facet('publisher').facet('feature')\ .date_facet('date', start_date=date(1000, 1, 1), end_date=date(3000, 1, 1), gap_by='year') urlpatterns += [ url(r'^searchNew/', search_view_factory(view_class=PaginatedFacetedSearchView, form_class=FacetedSearchForm, searchqueryset=sqs), name='haystack_search'), ] urlpatterns += [ url( r'^international_stats/$', bv.RedirectView.as_view(url='/international_stats_language/', permanent=True)),
(r'^countries/$', 'apps.gcd.views.details.countries_in_use'), # redirects of old lasso pages (r'^publisher_details.lasso/$', 'apps.gcd.views.redirect.publisher'), (r'^series.lasso/$', 'apps.gcd.views.redirect.series'), (r'^indexstatus.lasso/$', 'apps.gcd.views.redirect.series_status'), (r'^scans.lasso/$', 'apps.gcd.views.redirect.series_scans'), (r'^covers.lasso/$', 'apps.gcd.views.redirect.series_covers'), (r'^details.lasso/$', 'apps.gcd.views.redirect.issue'), (r'^coverview.lasso/$', 'apps.gcd.views.redirect.issue_cover'), (r'^daily_covers.lasso/$', 'apps.gcd.views.redirect.daily_covers'), (r'^search.lasso/$', 'apps.gcd.views.redirect.search'), ) # haystack search sqs = GcdSearchQuerySet().facet('facet_model_name').facet('country') \ .facet('language').facet('publisher') urlpatterns += patterns( 'haystack.views', url(r'^searchNew/', search_view_factory(view_class=PaginatedFacetedSearchView, form_class=FacetedSearchForm, searchqueryset=sqs), name='haystack_search'), ) urlpatterns += patterns( '', (r'^international_stats/$', bv.RedirectView.as_view(url='/international_stats_language/')), ('^covers_for_replacement.lasso/$', bv.RedirectView.as_view(url='/covers_to_replace/')),
(r'^countries/$', 'apps.gcd.views.details.countries_in_use'), # redirects of old lasso pages (r'^publisher_details.lasso/$', 'apps.gcd.views.redirect.publisher'), (r'^series.lasso/$', 'apps.gcd.views.redirect.series'), (r'^indexstatus.lasso/$', 'apps.gcd.views.redirect.series_status'), (r'^scans.lasso/$', 'apps.gcd.views.redirect.series_scans'), (r'^covers.lasso/$', 'apps.gcd.views.redirect.series_covers'), (r'^details.lasso/$', 'apps.gcd.views.redirect.issue'), (r'^coverview.lasso/$', 'apps.gcd.views.redirect.issue_cover'), (r'^daily_covers.lasso/$', 'apps.gcd.views.redirect.daily_covers'), (r'^search.lasso/$', 'apps.gcd.views.redirect.search'), ) # haystack search sqs = GcdSearchQuerySet().facet('facet_model_name') urlpatterns += patterns( 'haystack.views', url(r'^searchNew/', search_view_factory(view_class=PaginatedFacetedSearchView, form_class=FacetedSearchForm, searchqueryset=sqs), name='haystack_search'), ) urlpatterns += patterns( '', (r'^international_stats/$', bv.RedirectView.as_view(url='/international_stats_language/')), ('^covers_for_replacement.lasso/$', bv.RedirectView.as_view(url='/covers_to_replace/')),