From 20926e839bccc056828e9069fe539aef3020fdfe Mon Sep 17 00:00:00 2001 From: Rocky Duan Date: Sun, 5 Aug 2012 14:57:35 -0400 Subject: [PATCH] fixed ajax retrieved search bar in forum view --- .../django_comment_client/forum/views.py | 24 ++++++++++--------- .../coffee/src/discussion/discussion.coffee | 10 ++------ lms/templates/discussion/_forum.html | 2 +- lms/templates/discussion/_inline.html | 2 +- lms/templates/discussion/_paginator.html | 2 +- lms/templates/discussion/_sort.html | 2 +- 6 files changed, 19 insertions(+), 23 deletions(-) diff --git a/lms/djangoapps/django_comment_client/forum/views.py b/lms/djangoapps/django_comment_client/forum/views.py index 164ab77d1d..69f426055f 100644 --- a/lms/djangoapps/django_comment_client/forum/views.py +++ b/lms/djangoapps/django_comment_client/forum/views.py @@ -43,12 +43,10 @@ def render_discussion(request, course_id, threads, discussion_id=None, \ 'forum': 'discussion/_forum.html', }[discussion_type] - """base_url = { + base_url = { 'inline': (lambda: reverse('django_comment_client.forum.views.inline_discussion', args=[course_id, discussion_id])), 'forum': (lambda: reverse('django_comment_client.forum.views.forum_form_discussion', args=[course_id, discussion_id])), - }[discussion_type]()""" - - base_url = reverse('django_comment_client.forum.views.inline_discussion', args=[course_id, discussion_id]) + }[discussion_type]() annotated_content_info = {thread['id']: get_annotated_content_info(thread, request.user.id) for thread in threads} @@ -116,13 +114,17 @@ def forum_form_discussion(request, course_id, discussion_id): threads, query_params = get_threads(request, course_id, discussion_id) content = render_forum_discussion(request, course_id, threads, discussion_id=discussion_id, \ query_params=query_params) - context = { - 'csrf': csrf(request)['csrf_token'], - 'course': course, - 'content': content, - 'accordion': render_accordion(request, course, discussion_id), - } - return render_to_response('discussion/index.html', context) + + if request.is_ajax(): + return utils.HtmlResponse(content) + else: + context = { + 'csrf': csrf(request)['csrf_token'], + 'course': course, + 'content': content, + 'accordion': render_accordion(request, course, discussion_id), + } + return render_to_response('discussion/index.html', context) def get_annotated_content_info(content, user_id): diff --git a/lms/static/coffee/src/discussion/discussion.coffee b/lms/static/coffee/src/discussion/discussion.coffee index 4c757e12a6..5d93ca2ad9 100644 --- a/lms/static/coffee/src/discussion/discussion.coffee +++ b/lms/static/coffee/src/discussion/discussion.coffee @@ -122,13 +122,7 @@ initializeFollowDiscussion = (discussion) -> Discussion.bindLocalEvents $local, - "submit .search-wrapper-forum>.discussion-search-form": (event) -> - event.preventDefault() - text = $local(".search-input").val() - isSearchWithinBoard = $local(".discussion-search-within-board").is(":checked") - handleSearch(text, isSearchWithinBoard) - - "submit .search-wrapper-inline>.discussion-search-form": (event) -> + "submit .search-wrapper>.discussion-search-form": (event) -> event.preventDefault() handleAjaxSearch(this) @@ -138,7 +132,7 @@ initializeFollowDiscussion = (discussion) -> "click .discussion-search-link": -> handleAjaxSearch(this) - "click .discussion-inline-sort-link": -> + "click .discussion-sort-link": -> handleAjaxSort(this) $discussion.children(".discussion-paginator").find(".discussion-inline-page-link").click -> diff --git a/lms/templates/discussion/_forum.html b/lms/templates/discussion/_forum.html index 87609f92b9..ea30bb6f4f 100644 --- a/lms/templates/discussion/_forum.html +++ b/lms/templates/discussion/_forum.html @@ -5,7 +5,7 @@
Discussion
-
+
<%include file="_search_bar.html" />
diff --git a/lms/templates/discussion/_inline.html b/lms/templates/discussion/_inline.html index b5d1067bd9..66db888fe8 100644 --- a/lms/templates/discussion/_inline.html +++ b/lms/templates/discussion/_inline.html @@ -2,7 +2,7 @@
-
+
<%include file="_search_bar.html" />
New Post
diff --git a/lms/templates/discussion/_paginator.html b/lms/templates/discussion/_paginator.html index 82d593273e..25d2c06213 100644 --- a/lms/templates/discussion/_paginator.html +++ b/lms/templates/discussion/_paginator.html @@ -9,7 +9,7 @@ %> <%def name="link_to_page(_page, text)"> - ${text} + ${text} <%def name="div_page(_page)"> diff --git a/lms/templates/discussion/_sort.html b/lms/templates/discussion/_sort.html index 96f2bb93b9..f71fab2cc3 100644 --- a/lms/templates/discussion/_sort.html +++ b/lms/templates/discussion/_sort.html @@ -20,7 +20,7 @@ def url_for_sort(key, order): return base_url + '?' + urlencode(merge(query_params, {'page': 1, 'sort_key': key, 'sort_order': order})) %> - ${title} + ${title}