You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Hydro/templates/discussion_detail.html

126 lines
5.1 KiB
HTML

{% set page_name = "discussion_detail" %}
{% extends "layout/basic.html" %}
{% import "components/comments_discussion.html" as comments with context %}
{% block content %}
<div class="row">
<div class="medium-9 columns">
<div class="section">
<div class="section__body">
<ul class="supplementary list">
<li>
<a class="discussion-node-tag" href="/discuss/{{ ddoc.parentType }}/{{ ddoc.parentId }}">
{% if ddoc.parentType == 'node' %}
<span class="v-center icon icon-tag"></span>
{% elif ddoc.parentType == 'contest' %}
<span class="v-center icon icon-award"></span>
{% else %}
<span class="v-center icon icon-flag"></span>
{% endif %}
{{ vnode['title'] }}
</a>
</li>
<li>
{{ user.render_inline(udict[ddoc.owner]) }}
@
{{ datetime_span(ddoc['_id'].generationTime)|safe }}
</li>
</ul>
<div class="typo topic__content" data-emoji-enabled data-raw-url="/discuss/{{ ddoc._id }}/raw">
{{ ddoc['content']|markdown|safe }}
</div>
</div>
<ul class="section__footer supplementary dot list">
{% if ddoc.owner == handler.user._id or handler.hasPerm(perm.PERM_EDIT_DISCUSSION) %}
<li>
<a href="/discuss/{{ ddoc._id }}/edit"><span class="icon icon-edit"></span> {{ _('Edit') }}</a>
</li>
{% endif %}
<li>
{{ _('{0} views').format(ddoc['views']) }}
</li>
{% if handler.hasPerm(perm.PERM_LOGGEDIN) %}
<li><form class="form--inline" method="post">
<input type="hidden" name="operation" value="{% if not dsdoc['star'] %}star{% else %}unstar{% endif %}">
<input type="hidden" name="csrfToken" value="{{ handler.csrfToken }}">
<button class="star{% if dsdoc['star'] %} activated{% endif %}" type="submit">
<span class="starred--hide"><span class="icon icon-star--outline"></span> {{ _('Star Topic') }}</span>
<span class="starred--show"><span class="icon icon-star"></span> {{ _('Unstar Topic') }}</span>
</button>
</form></li>
{% endif %}
<li>
<a href="/wiki/about#contact"><span class="icon icon-warning"></span> {{ _('Report') }}</a>
</li>
</ul>
</div>
<div class="section">
<div class="section__header">
<h1 class="section__title">{{ _('{0} comments').format(drcount) }}</h1>
</div>
<div class="section__body">
{{ comments.render(
view = 'discussion',
docs = drdocs,
udict = udict,
comment_ref = 'drid',
reply_ref = 'drrid',
comment_post_perm = perm.PERM_REPLY_DISCUSSION,
comment_edit_perm = perm.PERM_LOGGEDIN if ddoc.owner == handler.user._id else perm.PERM_EDIT_DISCUSSION_REPLY,
comment_delete_perm = perm.PERM_LOGGEDIN if ddoc.owner == handler.user._id else perm.PERM_DELETE_DISCUSSION_REPLY,
reply_post_perm = perm.PERM_REPLY_DISCUSSION,
reply_edit_perm = perm.PERM_LOGGEDIN if ddoc.owner == handler.user._id else perm.PERM_EDIT_DISCUSSION_REPLY,
reply_delete_perm = perm.PERM_LOGGEDIN if ddoc.owner == handler.user._id else perm.PERM_DELETE_DISCUSSION_REPLY
) }}
{{ paginator.render(page, pcount) }}
{% if drcount == 0 %}
{{ nothing.render('No comments so far...') }}
{% endif %}
</div>
</div>
</div>
<div class="medium-3 columns">
{% set udoc = udict[ddoc['owner']] %}
<div class="section side">
<div class="profile__bg user-profile-bg--1"></div>
<div class="section__body">
<div class="media sidebar-user-profile">
<div class="media__left">
<img src="{{ gravatar(udoc['gravatar']) }}" width="80" height="80" class="medium user-profile-avatar">
</div>
<div class="media__body">
<p>
{{ user.render_inline(udoc, avatar=false, modbadge=false) }}
</p>
</div>
</div>
</div>
<div class="section__body">
<div class="balancer sidebar-user-stat">
<div class="balancer__body">
<div class="numbox">
<div class="numbox__num medium">{{ udict[ddoc['owner']].nAccept or 0 }}</div>
<div class="numbox__text">{{ _('Accepted') }}</div>
</div>
</div>
<div class="balancer__body">
<div class="numbox">
<div class="numbox__num medium">{{ udict[ddoc['owner']].nLike or 0 }}</div>
<div class="numbox__text">{{ _('Solutions Liked') }}</div>
</div>
</div>
<div class="balancer__body">
<div class="numbox">
<div class="numbox__num medium">{{ udict[ddoc['owner']].nProblems or 0 }}</div>
<div class="numbox__text">{{ _('Upload Problem') }}</div>
</div>
</div>
</div>
</div>
</div>
{% set pdoc=vnode %}
{% set owner_udoc=udict[vnode['owner']] %}
{% include "partials/problem_sidebar.html" %}
</div>
</div>
{% endblock %}