From e5c785c29f2af0f9978814f7a34132388c44045d Mon Sep 17 00:00:00 2001 From: Aurélien Bompard Date: Tue, 11 Jun 2013 15:40:30 +0200 Subject: Add a select box to change the search results ordering --- hyperkitty/views/search.py | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) (limited to 'hyperkitty/views/search.py') diff --git a/hyperkitty/views/search.py b/hyperkitty/views/search.py index 9ea224a..f143876 100644 --- a/hyperkitty/views/search.py +++ b/hyperkitty/views/search.py @@ -70,15 +70,27 @@ def search_tag(request, mlist_fqdn, tag): def search(request, page=1): """ Returns messages corresponding to a query """ + results_per_page = 10 store = get_store(request) query = request.GET.get("query") mlist_fqdn = request.GET.get("list") + try: page_num = int(request.GET.get('page', "1")) except ValueError: page_num = 1 - results_per_page = 10 - query_result = store.search(query, mlist_fqdn, page_num, results_per_page) + + sort_mode = request.GET.get('sort') + sortedby = None + reverse = False + if sort_mode == "date-asc": + sortedby = "date" + elif sort_mode == "date-desc": + sortedby = "date" + reverse = True + + query_result = store.search(query, mlist_fqdn, page_num, results_per_page, + sortedby=sortedby, reverse=reverse) total = query_result["total"] messages = query_result["results"] for message in messages: @@ -98,6 +110,7 @@ def search(request, page=1): "query": query, 'messages': messages, 'total': total, + 'sort_mode': sort_mode, } return render(request, "search_results.html", context) -- cgit