98 lines
3.1 KiB
HTML
98 lines
3.1 KiB
HTML
<%! from django.core.urlresolvers import reverse %>
|
|
<%! from datehelper import time_ago_in_words %>
|
|
<%! from dateutil.parser import parse %>
|
|
|
|
<%def name="render_thread(course_id, thread, edit_thread=False, show_comments=False)">
|
|
<%
|
|
if show_comments:
|
|
url_for_thread = ""
|
|
else:
|
|
thread_id = thread['id']
|
|
url_for_thread = reverse('django_comment_client.forum.views.single_thread', args=[course_id, thread_id])
|
|
%>
|
|
<div class="thread" _id="${thread['id']}">
|
|
<div class="discussion-content">
|
|
<div class="discussion-upper-wrapper clearfix">
|
|
${render_vote(thread)}
|
|
<div class="discussion-right-wrapper clearfix">
|
|
<a class="thread-title" name="${thread['id']}" href="${url_for_thread}">${thread['title']}</a>
|
|
<div class="discussion-content-view">
|
|
<div class="thread-body">${thread['body']}</div>
|
|
<div class="info">
|
|
${render_info(thread)}
|
|
% if edit_thread:
|
|
${render_reply()}
|
|
${render_edit()}
|
|
% endif
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
% if show_comments:
|
|
<div class="comments">
|
|
${render_comments(thread['children'])}
|
|
</div>
|
|
% endif
|
|
</div>
|
|
</%def>
|
|
|
|
<%def name="render_comments(comments)">
|
|
% for comment in comments:
|
|
<div class="comment" _id="${comment['id']}">
|
|
<div class="discussion-content">
|
|
<div class="discussion-upper-wrapper clearfix">
|
|
${render_vote(comment)}
|
|
<div class="discussion-right-wrapper">
|
|
<div class="discussion-content-view">
|
|
<a class="comment-body" name="${comment['id']}">${comment['body']}</a>
|
|
<div class="info">
|
|
${render_info(comment)}
|
|
${render_reply()}
|
|
${render_edit()}
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
</div>
|
|
<div class="comments">
|
|
${render_comments(comment['children'])}
|
|
</div>
|
|
</div>
|
|
% endfor
|
|
</%def>
|
|
|
|
<%def name="render_info(content)">
|
|
${time_ago_in_words(parse(content['updated_at']))} ago by
|
|
% if content.get('user_id', False):
|
|
user No.${content['user_id']}
|
|
% else:
|
|
anonymous
|
|
% endif
|
|
</%def>
|
|
|
|
<%def name="render_reply()">
|
|
<a class="discussion-link discussion-reply" href="javascript:void(0)">Reply</a>
|
|
</%def>
|
|
|
|
<%def name="render_edit()">
|
|
<a class="discussion-link discussion-edit" href="javascript:void(0)">Edit</a>
|
|
</%def>
|
|
|
|
<%def name="render_watch_thread()">
|
|
<a class="discussion-link discussion-watch-thread" href="javascript:void(0)">Watch</a>
|
|
</%def>
|
|
|
|
|
|
<%def name="render_vote(content)">
|
|
<%
|
|
upvote = "˄"
|
|
downvote = "˅"
|
|
%>
|
|
<div class="discussion-votes" title="Current votes: ${content['votes']['point']}">
|
|
<a class="discussion-vote discussion-vote-up" href="javascript:void(0)" title="Current votes: ${content['votes']['point']}">${upvote}</a>
|
|
<a class="discussion-vote discussion-vote-down" href="javascript:void(0)" title="Current votes: ${content['votes']['point']}">${downvote}</a>
|
|
</div>
|
|
</%def>
|