--- a/src/hp/views.py Sat Nov 24 15:21:04 2012 +0100
+++ b/src/hp/views.py Mon Nov 26 17:01:05 2012 +0100
@@ -20,10 +20,18 @@
def all_videos(request):
- url = settings.LDT_API_URL + "contents/?limit=" + str(settings.LDT_MAX_FETCH)
+ url = "%scontents/" % (settings.LDT_API_URL)
+
+ request_params = {'limit' : settings.LDT_MAX_FETCH, 'order_by': 'title'}
+
+ search = request.REQUEST.get("search", None)
+ if search:
+ search = search.strip()
+ request_params['title__icontains'] = search
#pagination TODO : implement a lazy loader
- contents = get_all_objects(url, 'front_project')
+ contents = get_all_objects(url, request_params, 'front_project')
+
for content in contents:
url_parts = urlparse.urlparse(content.get('image',''))
if not url_parts.netloc:
@@ -42,8 +50,15 @@
except EmptyPage:
# If page is out of range (e.g. 9999), deliver last page of results.
results = paginator.page(paginator.num_pages)
-
- return render_to_response('hp/all_videos.html',{'results':results}, context_instance=RequestContext(request))
+
+ if search:
+ search_param = "&search=%s" % search
+ search_param_first = "?search=%s" % search
+ else:
+ search_param = ""
+ search_param_first = ""
+
+ return render_to_response('hp/all_videos.html',{'results':results, 'search': search, 'search_param': search_param, 'search_param_first': search_param_first}, context_instance=RequestContext(request))
def show_video_details(request, content_id):