Files
ops-Gazelle/templates/user/sidebar.twig

105 lines
4.2 KiB
Twig

<div class="box box_info box_userinfo_personal">
<div class="head colhead_dark">Personal</div>
<ul class="stats nobullet">
<li>Class: <strong>{{ user.userclassName }}</strong></li>
{% for id, name in user.privilege.secondaryClassList %}
{% if loop.first %}
<li>
<ul class="stats">
{% endif %}
{% if id != constant('DONOR') or user.propertyVisible(viewer, 'hide_donor_heart') %}
<li>{{ name }}</li>
{% endif %}
{% if loop.last %}
</ul>
</li>
{% endif %}
{% endfor %}
{%- set own_profile = user.id == viewer.id %}
<li>Paranoia level: {{ user.paranoiaLabel }}</li>
{% if own_profile or viewer.permitted('users_view_email') %}
<li>Email: <a href="mailto:{{ user.email }}">{{ user.email }}</a>
{% if viewer.permitted('users_view_email') %}
<a href="user.php?action=search&amp;email_history=on&amp;email={{ user.email }}" title="Search" class="brackets tooltip">S</a>
{% endif %}
</li>
{% endif %}
{%- if viewer.permitted('users_view_ips') %}
{% include 'user/ip.twig' with {'user': user} %}
{% endif %}
{%- if own_profile or viewer.permitted('users_view_keys') %}
<li>Passkey: <a href="#" id="passkey" data-key="{{ user.announceKey }}" class="brackets">View</a></li>
{% endif %}
{%- if viewer.permitted('users_view_invites') %}
<li>Invited by:
{% if user.referral %}
self from {{ user.referral }}.
{% elseif not user.inviterId %}
<i>Nobody</i>
{% else %}
{% set current = user %}
{% for parent in ancestry %}
{% if not loop.first %}&nbsp;&nbsp;↳ {% endif %}
{{ parent.id|user_url }}
{% if parent.isDisabled %}<span title="disabled"> ⛔️<span>{% endif %}
{% if parent.disableInvites %}<span title="invites revoked"> 🚫</span>{% endif %}
{% set source = invite_source.findSourceNameByUser(current) %}
{% if not source and (inviter.isInterviewer or inviter.isRecruiter) %} (unconfirmed){% endif %}
{% if source %} from {{ source }}{% endif %}
{% set current = parent %}
<br />
{% endfor %}
{% endif %}
</li>
{% endif %}
{%- if viewer.permitted('users_view_invites') or (own_profile and user.canPurchaseInvite) %}
<li>Invites: {% if user.disableInvites %}<span title="Invites are disabled">X</span>{% else %}{{ user.unusedInviteTotal|number_format }}{% endif %}
({{ user.invite.pendingTotal|number_format }} in use)</li>
{% set total = user.stats.invitedTotal %}
<li>Invited: {{ total|number_format }}
{% if total %} <a class="brackets" href="user.php?id={{ user.id }}&amp;action=invite">View</a>{% endif -%}
</li>
{% endif %}
{%- if own_profile or viewer.permitted('users_override_paranoia') %}
<li>IRC Key: {{ user.IRCKey ? 'Yes' : 'Not set' }}</li>
{% endif %}
{%- if applicant.userIsApplicant(user) and (own_profile or viewer.permitted('admin_manage_applicants')) %}
<li>Roles applied for: <a href="/apply.php?action=view" class="brackets">View</a></li>
{% endif %}
{%- if own_profile or viewer.permitted('users_mod') or viewer.isFLS %}
<li{% if not own_profile %} class="paranoia_override"{% endif %} id="torrent-client">Torrent clients:
{% for u in user.stats.historyUseragentTracker %}
{{ u.useragent -}}
{% if viewer.permitted('users_mod') or (own_profile and user.hasAttr('seedbox-viewer')) %} ({{ u.total|number_format }}){% endif %}
{% if not loop.last %}; {% endif %}
{% else %}
None
{% endfor -%}
</li>
<li{% if not own_profile %} class="paranoia_override"{% endif %}>Password age: {{ user.history.passwordAge|time_interval }}</li>
{% endif %}
</ul>
</div>
{%- if (own_profile or viewer.permitted('users_mod')) and next_class %}
<div class="box box_info box_userinfo_nextclass">
<div class="head colhead_dark"><a href="wiki.php?action=article&amp;name=userclasses">Next Class</a></div>
<ul class="stats nobullet">
<li>Class: {{ next_class.class }}</li>
{% for label, require in next_class.goal %}
<li>{{ label }}: {% if label == 'Time' %}{{ require.current|time_diff }}{% else %}{{ require.current }}{% endif
%} / {{ require.target }} ({{ require.percent|raw }})</li>
{% endfor %}
</ul>
</div>
{% endif %}