# HG changeset patch # User cavaliet # Date 1360856441 -3600 # Node ID 599b9b82c75092b32a56cc511706edfbe44e3081 # Parent cd7f14beffcf994e9c54c1d91c3ae6fc082034a3 enhance search results display diff -r cd7f14beffcf -r 599b9b82c750 src/egonomy/config.py.tmpl --- a/src/egonomy/config.py.tmpl Thu Feb 14 16:13:58 2013 +0100 +++ b/src/egonomy/config.py.tmpl Thu Feb 14 16:40:41 2013 +0100 @@ -125,10 +125,4 @@ } } -HAYSTACK_CONNECTIONS = { - 'default': { - 'ENGINE': 'haystack.backends.simple_backend.SimpleEngine', - }, -} - IMAGES_PER_PAGE = 32 diff -r cd7f14beffcf -r 599b9b82c750 src/egonomy/templates/egonomy_all_pictures.html --- a/src/egonomy/templates/egonomy_all_pictures.html Thu Feb 14 16:13:58 2013 +0100 +++ b/src/egonomy/templates/egonomy_all_pictures.html Thu Feb 14 16:40:41 2013 +0100 @@ -9,8 +9,17 @@ {% block content %}
{% build_pagination nb_pages cur_page_nb "all_pictures" "contents_page clickable" %}
{% endif %} + {% if search %} + {% ifequal nb_results 0 %} +{% build_pagination nb_pages cur_page_nb "all_pictures" "contents_page clickable" %}
{% endif %}{% trans "Annotated by" %} {{ img.metadata.auteur }}
+{% trans "Author" %} : {% if img.metadata.auteur %}{{ img.metadata.auteur }}{% else %}({% trans "Not documented" %}){% endif %}
{% endfor %} - {% if nb_pages %}{% build_pagination nb_pages cur_page_nb "all_pictures" "contents_page clickable" %}
{% endif %} + {% if nb_pages > 1 %}{% build_pagination nb_pages cur_page_nb "all_pictures" "contents_page clickable" %}
{% endif %}{% trans "Annotated by" %} {{ img.metadata.auteur }}
+{% trans "Author" %} : {% if img.metadata.auteur %}{{ img.metadata.auteur }}{% else %}({% trans "Not documented" %}){% endif %}
{% endfor %}{% trans "Annotated by" %} {{ frg.author }}
{% endfor %} diff -r cd7f14beffcf -r 599b9b82c750 src/egonomy/views.py --- a/src/egonomy/views.py Thu Feb 14 16:13:58 2013 +0100 +++ b/src/egonomy/views.py Thu Feb 14 16:40:41 2013 +0100 @@ -16,15 +16,6 @@ def home(request): - # if the request has a "search" get parameter, we search this term - search = None - nb_results = 1 - if "search" in request.GET: - search = request.GET["search"] - field = "all" - if "field" in request.GET: - field = request.GET["field"] - # We force list() because if not, img_id_list is a valuelistqueryset and not a list of values. # We separate image requests and make requests with select_related to optimize database hits. img_id_list = list(Image.objects.values_list('id', flat=True).annotate(date_modif=Max('fragment__date_saved')).exclude(date_modif=None).order_by('-date_modif')[:12]) @@ -32,7 +23,7 @@ frg_list = Fragment.objects.all().order_by('-date_saved').select_related('image', 'image__info', 'image__metadata','author')[:12] return render_to_response("egonomy_home.html", - {'img_list':img_list, 'fragment_list':frg_list, "search":search, "nb_results":nb_results}, + {'img_list':img_list, 'fragment_list':frg_list}, context_instance=RequestContext(request)) @@ -100,6 +91,7 @@ cur_page_nb = int(cur_page_nb) search = None + nb_results = 1 if "search" in request.GET: search = request.GET["search"] field = "all" @@ -110,8 +102,8 @@ nb = getattr(settings,"IMAGES_PER_PAGE", 32) if search: if not field or field == 'all': - field = 'text' - qp = QueryParser(field) + field = 'text' + qp = QueryParser(field) res = ModelRelatedSearchQuerySet(model=Image).filter(qp.parse(search)).models(ImageMetadata).load_all_queryset(Image, img_list).load_all() paginator = SearchPaginator(res, nb) else: @@ -124,7 +116,7 @@ results = paginator.page(paginator.num_pages) return render_to_response("egonomy_all_pictures.html", - {'results':results, 'nb_pages':paginator.num_pages, 'cur_page_nb':cur_page_nb}, + {'results':results, 'nb_pages':paginator.num_pages, 'cur_page_nb':cur_page_nb, "search":search, "nb_results":nb_results}, context_instance=RequestContext(request))