Commit 2c4e08c6 by Ibrahim Awwal

Refactor discussion profile page a bit.

parent 252a21eb
...@@ -192,8 +192,6 @@ def single_thread(request, course_id, discussion_id, thread_id): ...@@ -192,8 +192,6 @@ def single_thread(request, course_id, discussion_id, thread_id):
add_courseware_context(thread, course) add_courseware_context(thread, course)
context = threads_context(request.user, threads, course_id, query_params['page'], query_params['num_pages']) context = threads_context(request.user, threads, course_id, query_params['page'], query_params['num_pages'])
context['discussion_id'] = discussion_id
# TODO: Escape in template (user_info, annconinfo, threads, roles)
context.update({ context.update({
'discussion_id': discussion_id, 'discussion_id': discussion_id,
'course': course, 'course': course,
...@@ -216,32 +214,25 @@ def user_profile(request, course_id, user_id): ...@@ -216,32 +214,25 @@ def user_profile(request, course_id, user_id):
} }
threads, page, num_pages = profiled_user.active_threads(query_params) threads, page, num_pages = profiled_user.active_threads(query_params)
query_params['page'] = page
query_params['num_pages'] = num_pages
user_info = cc.User.from_django_user(request.user).to_dict()
annotated_content_info = utils.get_metadata_for_threads(course_id, threads, request.user, user_info) context = threads_context(request.user, threads, course_id, page, num_pages)
if request.is_ajax(): if request.is_ajax():
return utils.JsonResponse({ return utils.JsonResponse({
'discussion_data': map(utils.safe_content, threads), 'discussion_data': context['threads'],
'page': query_params['page'], 'page': page,
'num_pages': query_params['num_pages'], 'num_pages': num_pages,
'annotated_content_info': saxutils.escape(json.dumps(annotated_content_info),escapedict), 'annotated_content_info': context['annotated_content_info'],
}) })
else: else:
context = { context.update({
'course': course, 'course': course,
'user': request.user, 'user': request.user,
'django_user': User.objects.get(id=user_id), 'django_user': User.objects.get(id=user_id),
'profiled_user': profiled_user.to_dict(), 'profiled_user': profiled_user.to_dict(),
'threads': saxutils.escape(json.dumps(threads), escapedict), })
'user_info': saxutils.escape(json.dumps(user_info),escapedict),
'annotated_content_info': saxutils.escape(json.dumps(annotated_content_info),escapedict),
# 'content': content,
}
return render_to_response('discussion/user_profile.html', context) return render_to_response('discussion/user_profile.html', context)
except (cc.utils.CommentClientError, cc.utils.CommentClientUnknownError) as err: except (cc.utils.CommentClientError, cc.utils.CommentClientUnknownError) as err:
......
<%! from django.template.defaultfilters import escapejs %> <%! from django.template.defaultfilters import escapejs %>
<%! import json %>
<%inherit file="../main.html" /> <%inherit file="../main.html" />
<%namespace name='static' file='../static_content.html'/> <%namespace name='static' file='../static_content.html'/>
...@@ -29,7 +30,7 @@ ...@@ -29,7 +30,7 @@
</nav> </nav>
</section> </section>
<section class="course-content container discussion-user-threads" data-user-id="${django_user.id | escapejs}" data-course-id="${course.id | escapejs}" data-threads="${threads}" data-user-info="${user_info}"> <section class="course-content container discussion-user-threads" data-user-id="${django_user.id | escapejs}" data-course-id="${course.id | escapejs}" data-threads="${json.dumps(threads) | entity}" data-user-info="${json.dumps(user_info) | entity}">
<h2>Active Threads</h2> <h2>Active Threads</h2>
</section> </section>
</div> </div>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment