548 lines
29 KiB
HTML
548 lines
29 KiB
HTML
{% extends "default.html" %}
|
||
|
||
{% if u and u.profilecss %}
|
||
{% block stylesheets %}
|
||
{% if v %}
|
||
<link rel="stylesheet" href="/assets/style/{{v.theme}}_{{v.themecolor}}.css">
|
||
{% else %}
|
||
<link rel="stylesheet" href="/assets/style/dark_ff66ac.css">
|
||
{% endif %}
|
||
{% if u and u.profilecss %}
|
||
<link rel="stylesheet" href="/@{{u.username}}/profilecss">
|
||
{% endif %}
|
||
{% endblock %}
|
||
{% endif %}
|
||
|
||
{% block pagetype %}userpage{% endblock %}
|
||
|
||
{% block title %}
|
||
<title>{{u.username}}'s profile - Drama</title>
|
||
{% if u.is_private %}
|
||
<meta name="robots" content="noindex">
|
||
{% endif %}
|
||
<meta property="og:article:author" content="@{{u.username}}" />
|
||
<meta property="article:section" content="{{u.username}}'s profile - Drama" />
|
||
<meta property="article:published_time" content="{{u.created_date}}" />
|
||
<meta property="og:description" name="description" content="{{u.dramacoins}} Dramacoins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers - {% endif %}{% if not u.is_private %}{{u.post_count}} Posts - {{u.comment_count}} Comments - {% endif %}{{u.bio}}" />
|
||
<meta property="og:author" name="author" content="@{{u.username}}" />
|
||
<meta property="og:title" content="{{u.username}}" />
|
||
<meta property="og:image" content="{% if u.bannerurl %}{{u.banner_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||
<meta property="og:url" content="{{u.permalink | full_link}}" />
|
||
<meta property="og:site_name" content="rdrama.net" />
|
||
|
||
<meta name="twitter:card" content="summary_large_image"/>
|
||
<meta name="twitter:site" content="@drama">
|
||
<meta name="twitter:title" content="{{u.username}}'s profile - Drama" />
|
||
<meta name="twitter:creator" content="@{{u.username}}">
|
||
<meta name="twitter:description" content="{{u.dramacoins}} Dramacoins - Joined {{u.created_date}} - {% if u.stored_subscriber_count >=1 and not u.is_private and not u.is_nofollow %}{{u.stored_subscriber_count}} Followers -{% endif %} {% if not u.is_private %} {{u.post_count}} Posts - {{u.comment_count}} Comments -{% endif %} {{u.bio}}" />
|
||
<meta name="twitter:image" content="{% if u.bannerurl %}{{u.banner_url}}{% else %}{{'/assets/images/preview.png' | full_link}}{% endif %}" />
|
||
<meta name="twitter:url" content="{{u.permalink | full_link}}" />
|
||
{% endblock %}
|
||
|
||
{% block desktopUserBanner %}
|
||
<!-- Desktop -->
|
||
<script>
|
||
var userid = document.getElementById("userid").value;
|
||
if (userid != "nosong")
|
||
{
|
||
var audio = new Audio(`/songs/${userid}`);
|
||
audio.loop=true;
|
||
audio.play();
|
||
document.getElementById('userpage').addEventListener('click', () => {
|
||
if (audio.paused) audio.play();
|
||
}, {once : true});
|
||
}
|
||
</script>
|
||
<textarea id="userid" style="display: none;">{% if u.song %}{{u.id}}{% else %}nosong{% endif %}</textarea>
|
||
<div class="row d-none d-md-block">
|
||
<div class="col px-0">
|
||
<div class="jumbotron jumbotron-fluid jumbotron-guild d-none d-md-block" style="background-image: url({{u.banner_url}})">
|
||
<div class="jumbotron-overlay"></div>
|
||
<div class="w-100 my-3">
|
||
<div class="container-fluid">
|
||
<div class="d-md-flex text-center text-md-left">
|
||
<div>
|
||
<a href="{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}"><img src="{{u.profile_url}}" class="profile-pic profile-pic-100 mb-5"></a>
|
||
</div>
|
||
<div class="ml-3 w-100">
|
||
{% if u.is_suspended %}
|
||
<h5 style="color:#ff66ac;">BANNED USER{% if u.ban_reason %}: {{u.ban_reason}}{% endif %}</h5>
|
||
{% if unban %} <h5 style="color:#ff66ac;">{{unban}}</h5>{% endif %}
|
||
{% endif %}
|
||
|
||
<div class="d-flex align-items-center mt-1 mb-2">
|
||
<h1 class="font-weight-bolder h3 mb-0" style="color: #{{u.namecolor}}">{{u.username}}</h1>
|
||
{% if u.username != u.original_username %}
|
||
<span>
|
||
<i class="fad fa-user-tag text-info align-middle ml-2" data-toggle="tooltip" data-placement="bottom" title="Original Username: @{{u.original_username}}"></i>
|
||
</span>
|
||
{% endif %}
|
||
{% if u.admin_level > 1 or (u.admin_level == 1 and (not v or v.admin_level < 2)) %}
|
||
<span>
|
||
<i class="fas fa-broom text-admin align-middle ml-2" data-toggle="tooltip" data-placement="bottom" title="Badmin"></i>
|
||
</span>
|
||
{% elif u.admin_level == 1 %}
|
||
<span>
|
||
<i class="fas fa-broom align-middle ml-2" data-toggle="tooltip" data-placement="bottom" title="Fake Admin"></i>
|
||
</span>
|
||
{% endif %}
|
||
{% if v and v.has_follower(u) %}
|
||
<span class="text-primary badge badge-secondary text-small align-middle ml-2">Follows you</span>
|
||
{% endif %}
|
||
<div class="profile-actions align-middle d-none ml-2">
|
||
{% if v and v.id != u.id %}
|
||
<div class="dropdown show d-none">
|
||
<a href="#" role="button" data-toggle="dropdown"
|
||
aria-haspopup="true" aria-expanded="false">
|
||
<i class="far fa-ellipsis-h text-lg align-middle text-gray-600"></i>
|
||
</a>
|
||
</div>
|
||
{% endif %}
|
||
{% if v and v.id == u.id %}
|
||
<div class="dropdown show d-none">
|
||
<a href="#" role="button" id="dropdownProfileActionsLink" data-toggle="dropdown"
|
||
aria-haspopup="true" aria-expanded="false">
|
||
<i class="far fa-ellipsis-h text-lg align-middle text-gray-600"></i>
|
||
</a>
|
||
|
||
<div class="dropdown-menu dropdown-menu-right border-0 shadow" aria-labelledby="dropdownMoreLink">
|
||
<a class="dropdown-item" href="/settings/profile#bio"><i class="fas fa-edit"></i>Edit profile</a>
|
||
<a class="dropdown-item" href="/settings/security"><i class="fas fa-cog"></i>Account details</a>
|
||
</div>
|
||
</div>
|
||
{% endif %}
|
||
</div>
|
||
</div>
|
||
|
||
{% if u.customtitle %}<p class="font-weight-bolder" style="color: #{{u.titlecolor}}">{{u.customtitle | safe}}</p>{% endif %}
|
||
|
||
<div class="font-weight-bolder">
|
||
<span>{{u.dramacoins}}</span> Dramacoins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}">{{u.created_date}}</span>
|
||
</div>
|
||
{% if u.bio_html %}
|
||
<pre></pre>
|
||
<div class="text-muted font-weight-bolder">{{u.bio_html | safe}}</div>
|
||
{% else %}
|
||
<p class="text-muted">No bio...</p>
|
||
{% endif %}
|
||
{% if u.bio_html and v %}
|
||
{% endif %}
|
||
|
||
<div class="d-flex justify-content-between align-items-center">
|
||
<div>
|
||
{% if v and v.id != u.id %}
|
||
<a id="button-unsub" class="btn btn-secondary {% if not is_following %}d-none{% endif %}" href="javascript:void(0)" onclick="post('/api/unfollow/{{u.username}}', callback=function(){document.getElementById('button-unsub').classList.toggle('d-none');document.getElementById('button-sub').classList.toggle('d-none');})">Unfollow</a>
|
||
<a id="button-sub" class="btn btn-primary {% if is_following or u.is_nofollow or u.is_blocked %}d-none{% endif %}" href="javascript:void(0)" onclick="post('/api/follow/{{u.username}}', callback=function(){document.getElementById('button-sub').classList.toggle('d-none');document.getElementById('button-unsub').classList.toggle('d-none');})">Follow</a>
|
||
|
||
<a class="btn btn-primary" href="javascript:void(0)" onclick="document.getElementById('message').classList.toggle('d-none')">Message</a>
|
||
<a class="btn btn-primary" href="javascript:void(0)" onclick="post('/@{{u.username}}/suicide', function(){window.location.reload(true);})">Get them help</a>
|
||
<form class="d-none" id="message" action="/@{{u.username}}/message" method="post">
|
||
<pre></pre>
|
||
<textarea id="input-message" form="message" name="message" rows="3" class="form-control" required></textarea>
|
||
<pre></pre>
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-bold" aria-hidden="true" onclick="makeBold('input-message')" data-toggle="tooltip" data-placement="bottom" title="Bold"></pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-italic" aria-hidden="true" onclick="makeItalics('input-message')" data-toggle="tooltip" data-placement="bottom" title="Italicize"></pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-quote-right" aria-hidden="true" onclick="makeQuote('input-message')" data-toggle="tooltip" data-placement="bottom" title="Quote"></pre>
|
||
|
||
<pre style="line-height:1;" class="btn btn-secondary format d-inline-block m-0 font-weight-bolder text-uppercase" onclick="commentForm('input-message');getGif()" aria-hidden="true" data-toggle="modal" data-target="#gifModal" data-toggle="tooltip" data-placement="bottom" title="Add GIF">GIF</pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-smile-beam" onclick="loadEmojis('input-message')" aria-hidden="true" data-toggle="modal" data-target="#emojiModal" data-toggle="tooltip" data-placement="bottom" title="Add Emoji"></pre>
|
||
|
||
<input type="submit" value="Submit" class="btn btn-primary mt-3">
|
||
</form>
|
||
|
||
{% elif v and v.id == u.id %}
|
||
<a href="/settings/profile" class="btn btn-secondary">Edit profile</a>
|
||
<a href="/views" class="btn btn-secondary">Profile views</a>
|
||
{% endif %}
|
||
{% if v and v.id != u.id and v.admin_level > 1 and u.admin_level <= 1 %}
|
||
<br><br>
|
||
<div class="body d-lg-flex border-bottom">
|
||
<div class="w-lg-100">
|
||
|
||
<form action="/admin/title_change/{{u.id}}" method="post">
|
||
<input type="hidden" name="formkey" value="{{v.formkey}}">
|
||
<input id="customtitlebody" type="text" name="title" class="form-control" placeholder='Enter a flair here' value="{% if u.customtitleplain %}{{u.customtitleplain}}{% endif %}">
|
||
<div class="d-flex mt-2">
|
||
<small class="format"><i class="btn btn-secondary format d-inline-block m-0 fas fa-smile-beam" onclick="loadEmojis('customtitlebody')" aria-hidden="true" data-toggle="modal" data-target="#emojiModal" data-toggle="tooltip" data-placement="bottom" title="Add Emoji"></i></small>
|
||
|
||
<div class="custom-control custom-checkbox">
|
||
<input type="checkbox" class="custom-control-input" id="locked" name="locked" {% if u.flairchanged %}checked{% endif %}>
|
||
<label class="custom-control-label" for="locked">locked</label>
|
||
</div>
|
||
|
||
<input class="btn btn-primary ml-auto" type="submit" value="Change Flair">
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
</div>
|
||
<pre></pre>
|
||
{% if u.is_banned %}
|
||
<form action="/api/unban_user/{{u.id}}/?notoast=1" method="post" action="">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="submit" class="btn btn-success" value="Unban user">
|
||
</form>
|
||
{% else %}
|
||
<form action="/api/ban_user/{{u.id}}?notoast=1" method="post" action="">
|
||
<input type="hidden" name="formkey" value="{{v.formkey}}">
|
||
<input style="font-size:11px;" type="text" class="form-control" name="reason" placeholder="Ban Reason" onchange="document.getElementById('user-ban-submit').disabled=false">
|
||
<input style="font-size:11px;" type="number" class="form-control" name="days" placeholder="Days (blank = permanent)">
|
||
<input id="user-ban-submit" type="submit" class="btn btn-danger" value="Ban user" disabled>
|
||
</form>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
|
||
{% if u.agendaposter %}
|
||
<a class="btn btn-success" href="javascript:void(0)" onclick="post('/agendaposter/{{u.id}}?toast', function(){window.location.reload(true);})">Disable Agendaposter Theme</a>
|
||
{% else %}
|
||
<form action="/agendaposter/{{u.id}}" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="number" name="days" class="form-control" placeholder="Days (0 or blank = permanent)" />
|
||
<input type="submit" class="btn btn-danger" value="Lock Agendaposter Theme" />
|
||
</form>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
|
||
{% if u.shadowbanned %}
|
||
<a class="btn btn-success" href="javascript:void(0)" onclick="post('/unshadowban/{{u.id}}', function(){window.location.reload(true);})">Unshadowban</a>
|
||
{% else %}
|
||
<a class="btn btn-danger" href="javascript:void(0)" onclick="post('/shadowban/{{u.id}}', function(){window.location.reload(true);})">Shadowban</a>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
<form action="/admin/unnuke_user" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="hidden" name="user" value="{{u.username}}">
|
||
<input type="submit" class="btn btn-success" value="Approve User's Content">
|
||
</form>
|
||
<pre></pre>
|
||
<form action="/admin/nuke_user" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="hidden" name="user" value="{{u.username}}">
|
||
<input type="submit" class="btn btn-danger" value="Remove User's Content">
|
||
</form>
|
||
{% endif %}
|
||
{% if v and v.admin_level >=4 %}
|
||
<pre></pre>
|
||
<p>User ID: {{u.id}}</p>
|
||
{% if u.is_private %}
|
||
<p>User has private mode enabled.</p>
|
||
{% endif %}
|
||
{% if u.is_suspended %}
|
||
<p>Banned by: <a href="{{u.banned_by.permalink}}">@{{u.banned_by.username}}</a></p>
|
||
{% endif %}
|
||
<p>Alts:</p>
|
||
<ul>
|
||
{% for account in u.alts %}
|
||
<li><a href="{{account.url}}">@{{account.username}}</a>{% if account._is_manual %} [m]{% endif %}</li>
|
||
{% endfor %}
|
||
</ul>
|
||
{% endif %}
|
||
</div>
|
||
|
||
<div>
|
||
{% for b in u.badges %}
|
||
{% if b.url %}
|
||
<a href="{{b.url}}"><img style="width: 60px; height: 60px" src="{{b.path}}" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{b.name}} - {{b.text}}"></a>
|
||
{% else %}
|
||
<img style="width: 60px; height: 60px" src="{{b.path}}" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{b.name}} - {{b.text}}">
|
||
{% endif %}
|
||
{% endfor %}
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{% endblock %}
|
||
|
||
{% block mobileUserBanner %}
|
||
<!-- Mobile -->
|
||
<div class="container-fluid text-center bg-white d-md-none">
|
||
<div class="row">
|
||
<div class="col px-0">
|
||
<img src="{{u.banner_url}}" style="width: 100%; height: 65px; object-fit: cover;">
|
||
</div>
|
||
</div>
|
||
<div class="row border-bottom">
|
||
<div class="col">
|
||
<div style="margin-top: -34px;">
|
||
<a href="{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}"><img src="{{u.profile_url}}" class="profile-pic-65 bg-white border-2 border-white mb-2"></a>
|
||
</div>
|
||
<div class="mt-n3 py-3">
|
||
{% if u.is_suspended %}
|
||
<h5 style="color:#ff66ac;">BANNED USER{% if u.ban_reason %}: {{u.ban_reason}}{% endif %}</h5>
|
||
{% if unban %} <h5 style="color:#ff66ac;">{{unban}}</h5>{% endif %}
|
||
{% endif %}
|
||
<a class="text-black"><h1 class="h5 d-inline-block" style="color: #{{u.namecolor}}">{{u.username}}</h1></a>
|
||
|
||
{% if u.username != u.original_username %}
|
||
<span>
|
||
<i class="fad fa-user-tag text-info align-middle ml-2" data-toggle="tooltip" data-placement="bottom" title="Original Username: @{{u.original_username}}"></i>
|
||
</span>
|
||
{% endif %}
|
||
{% if v and v.has_follower(u) and not v.is_nofollow %}
|
||
<span class="text-primary badge badge-secondary text-small align-middle mx-1">Follows you</span>
|
||
{% endif %}
|
||
{% if u.customtitle %}<p style="color: #{{u.titlecolor}}">{{u.customtitle | safe}}</p>{% endif %}
|
||
<div class="font-weight-normal">
|
||
<span class="font-weight-bold">{{u.dramacoins}}</span> Dramacoins {% if u.stored_subscriber_count >=1 and not u.is_nofollow %}<a href="/@{{u.username}}/followers" class="font-weight-bold">{{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}</a> {% endif %}<br>joined <span data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{u.created_datetime}}" class="font-weight-bold">{{u.created_date}}</span>
|
||
</div>
|
||
{% if u.bio_html %}
|
||
<p class="text-muted text-break">{{u.bio_html | safe}}</p>
|
||
{% endif %}
|
||
<div class="mb-3">
|
||
{% for b in u.badges %}
|
||
{% if b.url %}
|
||
<a href="{{b.url}}"><img style="width: 32px; height: 32px" src="{{b.path}}" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{b.name}} - {{b.text}}"></a>
|
||
{% else %}
|
||
<img style="width: 32px; height: 32px" src="{{b.path}}" data-toggle="tooltip" data-placement="bottom" title="" data-original-title="{{b.name}} - {{b.text}}">
|
||
{% endif %}
|
||
{% endfor %}
|
||
</div>
|
||
{% if v and v.id == u.id %}
|
||
<a href="/settings/profile" class="btn btn-secondary btn-sm">Edit profile</a>
|
||
<a href="/views" class="btn btn-secondary btn-sm">Profile views</a>
|
||
{% endif %}
|
||
{% if v and v.id != u.id %}
|
||
<a id="button-unsub2" class="btn btn-secondary {% if not is_following %}d-none{% endif %}" href="javascript:void(0)" onclick="post('/api/unfollow/{{u.username}}', callback=function(){document.getElementById('button-unsub2').classList.toggle('d-none');document.getElementById('button-sub2').classList.toggle('d-none');})">Unfollow</a>
|
||
<a id="button-sub2" class="btn btn-primary {% if is_following or u.is_nofollow or u.is_blocked %}d-none{% endif %}" href="javascript:void(0)" onclick="post('/api/follow/{{u.username}}', callback=function(){document.getElementById('button-sub2').classList.toggle('d-none');document.getElementById('button-unsub2').classList.toggle('d-none');})">Follow</a>
|
||
|
||
<a class="btn btn-primary" href="javascript:void(0)" onclick="document.getElementById('message-mobile').classList.toggle('d-none')">Message</a>
|
||
<a class="btn btn-primary" href="javascript:void(0)" onclick="post('/@{{u.username}}/suicide', function(){window.location.reload(true);})">Get them help</a>
|
||
<form class="d-none" id='message-mobile' action="/@{{u.username}}/message" method="post">
|
||
<pre></pre>
|
||
<textarea id="input-message-mobile" form="message-mobile" name="message" rows="3" class="form-control" required></textarea>
|
||
<pre></pre>
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-bold" aria-hidden="true" onclick="makeBold('input-message-mobile')" data-toggle="tooltip" data-placement="bottom" title="Bold"></pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-italic" aria-hidden="true" onclick="makeItalics('input-message-mobile')" data-toggle="tooltip" data-placement="bottom" title="Italicize"></pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-quote-right" aria-hidden="true" onclick="makeQuote('input-message-mobile')" data-toggle="tooltip" data-placement="bottom" title="Quote"></pre>
|
||
|
||
<pre style="line-height:1;" class="btn btn-secondary format d-inline-block m-0 font-weight-bolder text-uppercase" onclick="commentForm('input-message-mobile');getGif()" aria-hidden="true" data-toggle="modal" data-target="#gifModal" data-toggle="tooltip" data-placement="bottom" title="Add GIF">GIF</pre>
|
||
|
||
<pre class="btn btn-secondary format d-inline-block m-0 fas fa-smile-beam" onclick="loadEmojis('input-message-mobile')" aria-hidden="true" data-toggle="modal" data-target="#emojiModal" data-toggle="tooltip" data-placement="bottom" title="Add Emoji"></pre>
|
||
|
||
<input type="submit" value="Submit" class="btn btn-primary mt-3">
|
||
</form>
|
||
|
||
{% if v.admin_level > 1 and u.admin_level <= 1 %}
|
||
<br><br>
|
||
<div class="body d-lg-flex border-bottom">
|
||
|
||
<div class="w-lg-100">
|
||
|
||
<form action="/admin/title_change/{{u.id}}" method="post">
|
||
<input type="hidden" name="formkey" value="{{v.formkey}}">
|
||
<input id="customtitlebody-mobile" type="text" name="title" class="form-control" placeholder='Enter a flair here' value="{% if u.customtitle %}{{u.customtitle}}{% endif %}">
|
||
<div class="d-flex mt-2">
|
||
<small class="format"><i class="btn btn-secondary format d-inline-block m-0 fas fa-smile-beam" onclick="loadEmojis('customtitlebody-mobile')" aria-hidden="true" data-toggle="modal" data-target="#emojiModal" data-toggle="tooltip" data-placement="bottom" title="Add Emoji"></i></small>
|
||
|
||
<div class="custom-control custom-checkbox">
|
||
<input type="checkbox" class="custom-control-input" id="locked-mobile" name="locked">
|
||
<label class="custom-control-label" for="locked-mobile">locked</label>
|
||
</div>
|
||
|
||
<input class="btn btn-primary ml-auto" type="submit" value="Change Flair">
|
||
</div>
|
||
</form>
|
||
</div>
|
||
|
||
</div>
|
||
<pre></pre>
|
||
{% if u.is_banned %}
|
||
<form action="/api/unban_user/{{u.id}}/?notoast=1" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="submit" class="btn btn-success" value="Unban user">
|
||
</form>
|
||
{% else %}
|
||
<form action="/api/ban_user/{{u.id}}/?notoast=1" method="post">
|
||
<input type="hidden" name="formkey" value="{{v.formkey}}">
|
||
<input style="font-size:11px;" type="text" class="form-control" name="reason" placeholder="Ban Reason" onchange="document.getElementById('user-ban-submit2').disabled=false">
|
||
<input style="font-size:11px;" type="number" class="form-control" name="days" placeholder="Days (blank = permanent)">
|
||
<input id="user-ban-submit2" type="submit" class="btn btn-danger" value="Ban user" disabled>
|
||
</form>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
|
||
{% if u.agendaposter %}
|
||
<a class="btn btn-success" href="javascript:void(0)" onclick="post('/agendaposter/{{u.id}}?toast', function(){window.location.reload(true);})">Disable Agendaposter Theme</a>
|
||
{% else %}
|
||
<form action="/agendaposter/{{u.id}}" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="number" name="days" class="form-control" placeholder="Days (0 or blank = permanent)" />
|
||
<input type="submit" class="btn btn-danger" value="Lock Agendaposter Theme" />
|
||
</form>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
|
||
{% if u.shadowbanned %}
|
||
<a class="btn btn-success" href="javascript:void(0)" onclick="post('/unshadowban/{{u.id}}', function(){window.location.reload(true);})">Unshadowban</a>
|
||
{% else %}
|
||
<a class="btn btn-danger" href="javascript:void(0)" onclick="post('/shadowban/{{u.id}}', function(){window.location.reload(true);})">Shadowban</a>
|
||
{% endif %}
|
||
|
||
<pre></pre>
|
||
<form action="/admin/unnuke_user" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="hidden" name="user" value="{{u.username}}">
|
||
<input type="submit" class="btn btn-success" value="Approve User's Content">
|
||
</form>
|
||
<pre></pre>
|
||
<form action="/admin/nuke_user" method="post">
|
||
<input type="hidden" name="formkey", value="{{v.formkey}}">
|
||
<input type="hidden" name="user" value="{{u.username}}">
|
||
<input type="submit" class="btn btn-danger" value="Remove User's Content">
|
||
</form>
|
||
<pre></pre>
|
||
<p>User ID: {{u.id}}</p>
|
||
{% if u.is_private %}
|
||
<p>User has private mode enabled.</p>
|
||
{% endif %}
|
||
{% if u.is_suspended %}
|
||
<p>Banned by: <a href="{{u.banned_by.permalink}}">@{{u.banned_by.username}}</a></p>
|
||
{% endif %}
|
||
<p>Alts:</p>
|
||
<ul>
|
||
{% for account in u.alts %}
|
||
<li><a href="{{account.url}}">@{{account.username}}</a>{% if account._is_manual %} [m]{% endif %}</li>
|
||
{% endfor %}
|
||
</ul>
|
||
{% endif %}
|
||
{% endif %}
|
||
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{% endblock %}
|
||
|
||
{% block content %}
|
||
<div id="profilecontent" class="row no-gutters">
|
||
<div class="col">
|
||
<div class="flex-row box-shadow-bottom d-flex justify-content-center justify-content-md-between align-items-center">
|
||
<ul class="nav settings-nav">
|
||
<li class="nav-item">
|
||
<a class="nav-link {% if not 'saved' in request.path %}active{% endif %}" href="/@{{u.username}}">Posts</a>
|
||
</li>
|
||
<li class="nav-item">
|
||
<a class="nav-link" href="/@{{u.username}}/comments">Comments</a>
|
||
</li>
|
||
{% if u.id == v.id %}
|
||
<li class="nav-item">
|
||
<a class="nav-link {% if 'saved' in request.path %}active{% endif %}" href="/@{{u.username}}/saved/posts">Saved Posts</a>
|
||
</li>
|
||
<li class="nav-item">
|
||
<a class="nav-link" href="/@{{u.username}}/saved/comments">Saved Comments</a>
|
||
</li>
|
||
{% endif %}
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
{% if not "saved" in request.full_path %}
|
||
<div class="d-flex justify-content-between align-items-center" style="padding-top:10px">
|
||
|
||
<div class="d-flex align-items-center sortingbarmargin">
|
||
<div class="text-small font-weight-bold mr-2"></div>
|
||
<div class="dropdown dropdown-actions">
|
||
<button class="btn btn-secondary dropdown-toggle" type="button" id="dropdownMenuButton" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||
{% if t=="day" %}<i class="fas fa-calendar-day mr-1"></i>{% endif %}
|
||
{% if t=="week" %}<i class="fas fa-calendar-week mr-1"></i>{% endif %}
|
||
{% if t=="month" %}<i class="fas fa-calendar-alt mr-1"></i>{% endif %}
|
||
{% if t=="year" %}<i class="fas fa-calendar mr-1"></i>{% endif %}
|
||
{% if t=="all" %}<i class="fas fa-infinity mr-1"></i>{% endif %}
|
||
{{t | capitalize}}
|
||
</button>
|
||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" x-placement="bottom-start" style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, 31px, 0px);">
|
||
{% if not t=="hour" %}<a class="dropdown-item" href="?sort={{sort}}&t=hour"><i class="fas fa-calendar-day mr-2"></i>Hour</a>{% endif %}
|
||
{% if not t=="day" %}<a class="dropdown-item" href="?sort={{sort}}&t=day"><i class="fas fa-calendar-day mr-2"></i>Day</a>{% endif %}
|
||
{% if not t=="week" %}<a class="dropdown-item" href="?sort={{sort}}&t=week"><i class="fas fa-calendar-week mr-2"></i>Week</a>{% endif %}
|
||
{% if not t=="month" %}<a class="dropdown-item" href="?sort={{sort}}&t=month"><i class="fas fa-calendar-alt mr-2"></i>Month</a>{% endif %}
|
||
{% if not t=="year" %}<a class="dropdown-item" href="?sort={{sort}}&t=year"><i class="fas fa-calendar mr-2"></i>Year</a>{% endif %}
|
||
{% if not t=="all" %}<a class="dropdown-item" href="?sort={{sort}}&t=all"><i class="fas fa-infinity mr-2"></i>All</a>{% endif %}
|
||
</div>
|
||
</div>
|
||
|
||
<div class="text-small font-weight-bold ml-3 mr-2"></div>
|
||
<div class="dropdown dropdown-actions">
|
||
<button class="btn btn-secondary dropdown-toggle" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
|
||
{% if sort=="top" %}<i class="fas fa-arrow-alt-circle-up mr-1"></i>{% endif %}
|
||
{% if sort=="bottom" %}<i class="fas fa-arrow-alt-circle-down mr-1"></i>{% endif %}
|
||
{% if sort=="new" %}<i class="fas fa-sparkles mr-1"></i>{% endif %}
|
||
{% if sort=="old" %}<i class="fas fa-book mr-1"></i>{% endif %}
|
||
{% if sort=="controversial" %}<i class="fas fa-bullhorn mr-1"></i>{% endif %}
|
||
{% if sort=="comments" %}<i class="fas fa-comments mr-1"></i>{% endif %}
|
||
{{sort | capitalize}}
|
||
</button>
|
||
<div class="dropdown-menu" aria-labelledby="dropdownMenuButton" x-placement="bottom-start" style="position: absolute; will-change: transform; top: 0px; left: 0px; transform: translate3d(0px, 31px, 0px);">
|
||
{% if sort != "top" %}<a class="dropdown-item" href="?sort=top&t={{t}}"><i class="fas fa-arrow-alt-circle-up mr-2"></i>Top</a>{% endif %}
|
||
{% if sort != "bottom" %}<a class="dropdown-item" href="?sort=bottom&t={{t}}"><i class="fas fa-arrow-alt-circle-down mr-2"></i>Bottom</a>{% endif %}
|
||
{% if sort != "new" %}<a class="dropdown-item" href="?sort=new&t={{t}}"><i class="fas fa-sparkles mr-2"></i>New</a>{% endif %}
|
||
{% if sort != "old" %}<a class="dropdown-item" href="?sort=old&t={{t}}"><i class="fas fa-book mr-2"></i>Old</a>{% endif %}
|
||
{% if sort != "controversial" %}<a class="dropdown-item" href="?sort=controversial&t={{t}}"><i class="fas fa-bullhorn mr-2"></i>Controversial</a>{% endif %}
|
||
{% if sort != "comments" %}<a class="dropdown-item" href="?sort=comments&t={{t}}"><i class="fas fa-comments mr-2"></i>Comments</a>{% endif %}
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
{% endif %}
|
||
|
||
<div class="row no-gutters {% if listing %}mt-md-3{% elif not listing %}my-md-3{% endif %}" style="margin-top: 10px;">
|
||
|
||
<div class="col">
|
||
|
||
<div class="posts">
|
||
{% include "submission_listing.html" %}
|
||
</div>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
{% endblock %}
|
||
|
||
{% block pagenav %}
|
||
{% if listing %}
|
||
<nav aria-label="Page navigation">
|
||
<ul class="pagination pagination-sm mb-0">
|
||
{% if page>1 %}
|
||
<li class="page-item">
|
||
<small><a class="page-link" href="?page={{page-1}}&sort={{sort}}&t={{t}}" tabindex="-1">Prev</a></small>
|
||
</li>
|
||
{% else %}
|
||
<li class="page-item disabled"><span class="page-link">Prev</span></li>
|
||
{% endif %}
|
||
{% if next_exists %}
|
||
<li class="page-item">
|
||
<small><a class="page-link" href="?page={{page+1}}&sort={{sort}}&t={{t}}">Next</a></small>
|
||
</li>
|
||
{% else %}
|
||
<li class="page-item disabled"><span class="page-link">Next</span></li>
|
||
{% endif %}
|
||
</ul>
|
||
</nav>
|
||
{% endif %}
|
||
{% endblock %}
|
||
|
||
{% block GIFpicker %}
|
||
{% if v %}
|
||
{% include "emoji_modal.html" %}
|
||
{% include "gif_modal.html" %}
|
||
{% endif %}
|
||
{% endblock %} |