2022-05-04 23:09:46 +00:00
{% extends "default.html" %}
{% block pagetype %}userpage{% endblock %}
{% block title %}
{% if u and u.profilecss and not request.values.get('nocss') %}
2022-06-26 05:26:45 +00:00
< link rel = "stylesheet" href = "/{{u.id}}/profilecss" >
2022-05-04 23:09:46 +00:00
{% endif %}
< title > {{u.username}}'s profile - {{SITE_NAME}}< / title >
< meta property = "og:article:author" content = "@{{u.username}}" >
< meta property = "article:section" content = "{{u.username}}'s profile - {{SITE_NAME}}" >
< meta property = "article:published_time" content = "{{u.created_date}}" >
< meta property = "og:description" name = "description" content = "{{u.coins}} coins - 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 %} {{0 if u.shadowbanned else u.post_count}} Posts - {{0 if u.shadowbanned else 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 = "{{u.banner_url}}" >
< meta property = "og:url" content = "{{u.url}}" >
2022-07-13 18:14:37 +00:00
< meta property = "og:site_name" content = "{{SITE}}" >
2022-05-04 23:09:46 +00:00
< meta name = "twitter:card" content = "summary_large_image" >
< meta name = "twitter:site" content = "{{SITE_FULL}}" >
< meta name = "twitter:title" content = "{{u.username}}'s profile - {{SITE_NAME}}" >
< meta name = "twitter:creator" content = "@{{u.username}}" >
< meta name = "twitter:description" content = "{{u.coins}} coins - 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 %} {{0 if u.shadowbanned else u.post_count}} Posts - {{0 if u.shadowbanned else u.comment_count}} Comments - {% endif %}{{u.bio}}" >
< meta name = "twitter:image" content = "{{u.banner_url}}" >
< meta name = "twitter:url" content = "{{u.url}}" >
{% endblock %}
{% block desktopUserBanner %}
< div class = "row d-none d-md-block" >
< div class = "col px-0" >
2022-07-20 01:16:59 +00:00
< div class = "jumbotron jumbotron-fluid jumbotron-guild d-none d-md-block" { % if FEATURES [ ' USERS_PROFILE_BANNER ' ] % } style = "background-image: url({{u.banner_url}})" { % endif % } >
2022-05-04 23:09:46 +00:00
< div class = "jumbotron-overlay" > < / div >
< div class = "w-100 my-3" >
< div class = "container-fluid nobackground" >
< div class = "d-md-flex text-center text-md-left" >
2022-08-11 07:27:08 +00:00
< div id = "profile--pfp" { % if u . hat_active % } class = "profile--pfp--hat" { % endif % } >
< a rel = "nofollow noopener noreferrer" href = "{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}" class = "profile-pic-100-wrapper" >
2022-08-23 18:55:24 +00:00
< img onclick = "expandDesktopImage('{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}')" loading = "lazy" src = "{{u.profile_url}}" class = "profile-pic profile-pic-100 mb-5" >
2022-08-11 07:27:08 +00:00
{% if u.hat_active -%}
2022-08-23 18:55:24 +00:00
< img onclick = "expandDesktopImage('{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}')" class = "profile-pic-100-hat" loading = "lazy" src = "/i/hats/{{u.hat_active}}.webp" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.hat_tooltip}}" >
2022-08-11 07:27:08 +00:00
{%- endif %}
< / a >
2022-05-04 23:09:46 +00:00
< / div >
< div id = "profilestuff" class = "ml-3 w-100" >
{% if u.is_suspended %}
2022-05-30 02:55:51 +00:00
< h5 class = "text-primary" id = "profile--banned" > BANNED USER
{% if u.ban_reason %}:
2022-05-04 23:09:46 +00:00
{{u.ban_reason | safe}}
2022-05-30 02:55:51 +00:00
{% endif %}
< / h5 >
{% if u.unban_utc %}
< h5 class = "text-primary" id = "profile--unban" > {{u.unban_string}}< / h5 >
{% endif %}
2022-05-04 23:09:46 +00:00
{% endif %}
< div class = "d-flex align-items-center mt-1 mb-2" >
2022-08-27 02:57:19 +00:00
< h1 class = "font-weight-bolder h3 my-0 mr-2" id = "profile--name" style = "color: #{{u.name_color}}" > < span { % if u . patron % } class = "patron" style = "background-color:#{{u.name_color}}" { % endif % } > {{u.username}}< / span > < / h1 >
2022-05-04 23:09:46 +00:00
{% if u.username != u.original_username %}
2022-05-25 07:18:42 +00:00
< span id = "profile--origname" >
2022-05-04 23:09:46 +00:00
< i class = "fas fa-user-tag text-info align-middle ml-2" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Original Username: @{{u.original_username}}" > < / i >
< / span >
{% endif %}
2022-08-25 20:34:05 +00:00
{% if FEATURES['PATRON_ICONS'] and u.patron %}
< img loading = "lazy" class = "ml-3" src = "/i/{{SITE_NAME}}/patron_badges/2{{u.patron}}.webp?v=1" height = "20" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.patron_tooltip}}" alt = "{{u.patron_tooltip}}" >
{% endif %}
2022-07-18 06:43:20 +00:00
{% if FEATURES['HOUSES'] and u.house %}
2022-06-22 15:59:47 +00:00
< img loading = "lazy" class = "ml-3" id = "profile--house" src = "/i/{{SITE_NAME}}/houses/{{u.house}}.webp?v=2000" height = "20" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "House {{u.house}}" alt = "House {{u.house}}" >
2022-05-04 23:09:46 +00:00
{% endif %}
{% if u.verified %}
2022-05-25 07:18:42 +00:00
< span id = "profile--verified" > < i class = "fas fa-badge-check align-middle ml-2 {% if u.verified=='Glowiefied' %}glow{% endif %}" style = "color:{% if u.verifiedcolor %}#{{u.verifiedcolor}}{% else %}#1DA1F2{% endif %}" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.verified}}" > < / i > < / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-05-30 03:40:39 +00:00
{% if u.admin_level > 1 %}
2022-05-28 17:50:48 +00:00
< span id = "profile--mop" >
< i class = "fas fa-broom text-admin align-middle ml-2" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Admin" > < / i >
< / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-03 11:56:40 +00:00
{% if v and v.id != u.id and v.has_follower(u) %}
2022-05-25 07:18:42 +00:00
< span class = "followsyou badge badge-secondary text-small align-middle ml-2" id = "profile--follows-you" > Follows you< / span >
2022-05-04 23:09:46 +00:00
{% 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 role = "button" data-bs-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 role = "button" id = "dropdownProfileActionsLink" data-bs-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 >
2022-07-18 06:43:20 +00:00
{% if FEATURES['PRONOUNS'] %}
2022-07-11 21:23:20 +00:00
< p class = "font-weight-bolder" id = "profile--pronouns" style = "color: #{{u.titlecolor}}" > {{u.pronouns}}< / p >
{% endif %}
2022-07-11 18:04:24 +00:00
{% if u.customtitle %}
< p class = "font-weight-bolder" id = "profile--flair" style = "color: #{{u.titlecolor}}" > {{u.customtitle | safe}}< / p >
{% else %}
< pre > < / pre >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-18 07:17:45 +00:00
{% if v and (v.id == u.id or v.admin_level >= PERMS['USER_VOTERS_VISIBLE']) -%}
2022-05-25 07:18:42 +00:00
< div class = "font-weight-bolder mb-2" id = "profile--simphate" > < a class = "mr-1" href = "/@{{u.username}}/upvoters" > Simps< / a > | < a class = "mx-1" href = "/@{{u.username}}/downvoters" > Haters< / a > | < a class = "mx-1" href = "/@{{u.username}}/upvoting" > Simps for< / a > | < a class = "ml-1" href = "/@{{u.username}}/downvoting" > Hates< / a > < / div >
2022-07-18 07:17:45 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
< div class = "font-weight-bolder" >
< span id = "profile-coins-amount" > {{u.coins}}< / span >
2022-07-01 05:55:53 +00:00
< img alt = "coins" class = "ml-1 mb-1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "coins" height = "20" src = "{{asset_siteimg('coins.webp')}}" >
2022-05-04 23:09:46 +00:00
2022-07-18 05:10:01 +00:00
{% if FEATURES['PROCOINS'] %}
2022-05-09 12:13:38 +00:00
< span id = "profile-bux-amount" > {{u.procoins}}< / span >
2022-06-22 15:59:47 +00:00
< img alt = "marseybux" class = "ml-1 mb-1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Marseybux" height = "20" width = "46" src = "/i/marseybux.webp?v=2000" >
2022-05-09 12:13:38 +00:00
{% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 02:29:45 +00:00
{% if PERMS['USER_FOLLOWS_VISIBLE'] == 0 or (v and v.admin_level >= PERMS['USER_FOLLOWS_VISIBLE']) -%}
< a href = "/@{{u.username}}/followers" id = "profile--followers" > {{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}< / a >
2022-05-04 23:09:46 +00:00
2022-07-20 02:29:45 +00:00
< a href = "/@{{u.username}}/following" id = "profile--following" > follows {{u.follow_count}} user{{'s' if u.follow_count != 1 else ''}}< / a >
{%- endif %}
2022-05-04 23:09:46 +00:00
2022-07-03 08:19:49 +00:00
< span id = "profile--joined" > joined < span id = "profile--joined--time" data-bs-toggle = "tooltip" data-bs-placement = "bottom" onmouseover = "timestamp('profile--joined--time','{{u.created_utc}}')" > {{u.created_date}}< / span > < / span >
2022-06-20 20:25:03 +00:00
{% if v and v.admin_level >= 2 -%}
2022-07-03 08:19:49 +00:00
< span id = "profile--lastactive" class = "ml-2" > last active < span id = "profile--lastactive--time" data-bs-toggle = "tooltip" data-bs-placement = "bottom" onmouseover = "timestamp('profile--lastactive--time','{{u.last_active}}')" > {{u.last_active_date}}< / span > < / span >
2022-06-20 20:25:03 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
< / div >
2022-05-25 07:18:42 +00:00
{% if u.basedcount %}< p class = "text-muted" id = "profile--based" > Based Count: {{u.basedcount}}< / p > {% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 01:16:59 +00:00
{% if FEATURES['USERS_PROFILE_BODYTEXT'] -%}
{% if u.bio_html %}
< pre > < / pre >
< div class = "text-muted font-weight-bolder" id = "profile--bio" > {{u.bio_html | safe}}< / div >
{% else %}
< p class = "text-muted" id = "profile--bio" > No bio...< / p >
{% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 01:16:59 +00:00
{% if u.friends_html %}
< p class = "text-muted font-weight-bold" > Friends:< / p >
< div id = "profile--friends" > {{u.friends_html | safe}}< / div >
{% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 01:16:59 +00:00
{% if u.enemies_html %}
< p class = "text-muted font-weight-bold" > Enemies:< / p >
< div id = "profile--enemies" > {{u.enemies_html | safe}}< / div >
{% endif %}
{%- endif %}
2022-05-04 23:09:46 +00:00
2022-07-19 23:59:39 +00:00
{% if u.received_awards and FEATURES['AWARDS'] %}
2022-05-25 07:18:42 +00:00
< div class = "text-white rounded p-2 mb-3" id = "profile--awards" style = "background-color: rgba(50, 50, 50, 0.6); width: 30%;" >
2022-05-04 23:09:46 +00:00
< p class = "text-uppercase my-0" style = "font-weight: bold; font-size: 12px;" > Awards received< / p >
{% for a in u.received_awards %}
2022-05-25 07:18:42 +00:00
< span class = "d-inline-block mx-1 profile--awards--award" >
2022-05-04 23:09:46 +00:00
< i class = "{{a['icon']}} {{a['color']}} fa-fw" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{a['title']}} Awards received" > < / i >
x{{a['count']}}
< / span >
{% endfor %}
< / div >
{% endif %}
{% if u.moderated_subs %}
2022-05-25 07:18:42 +00:00
< div class = "text-white rounded p-2 mb-3" id = "profile--holes" style = "background-color: rgba(50, 50, 50, 0.6); width: 30%;" >
2022-05-04 23:09:46 +00:00
< p class = "text-uppercase my-0 pb-1" style = "font-weight: bold; font-size: 12px;" > Moderator of< / p >
{% for a in u.moderated_subs %}
< span class = "d-inline-block mx-1" >
< a href = "/h/{{a['sub']}}" > /h/{{a['sub']}}< / a >
< / span >
{% endfor %}
< / div >
{% endif %}
< div class = "d-flex justify-content-between align-items-center" >
< div >
{% if v and v.id != u.id %}
2022-05-25 07:18:42 +00:00
< div id = "profile--actionbtns" >
2022-06-23 23:07:47 +00:00
< a id = "button-unsub" class = "btn btn-secondary {% if not is_following %}d-none{% endif %}" role = "button" onclick = "post_toast(this,'/unfollow/{{u.username}}','button-unsub','button-sub','d-none')" > Unfollow< / a >
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "button-sub" class = "btn btn-primary {% if is_following or u.is_nofollow or u.is_blocked %}d-none{% endif %}" role = "button" onclick = "post_toast(this,'/follow/{{u.username}}','button-unsub','button-sub','d-none')" > Follow< / a >
2022-05-04 23:09:46 +00:00
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('message', 'input-message')" > Message< / a >
2022-07-18 06:43:20 +00:00
{% if FEATURES['USERS_SUICIDE'] -%}
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/@{{u.username}}/suicide')" > Get Them Help< / a >
{%- endif %}
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('coin-transfer', 'coin-transfer-amount')" > Gift Coins< / a >
{% if FEATURES['PROCOINS'] -%}
2022-05-09 12:13:38 +00:00
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('bux-transfer', 'bux-transfer-amount')" > Gift Marseybux< / a >
2022-07-18 06:43:20 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
2022-07-18 00:18:54 +00:00
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/settings/block?username={{u.username}}',true)" > Block< / a >
2022-05-04 23:09:46 +00:00
{% if v.admin_level > 2 %}
2022-05-29 18:36:51 +00:00
{% if SITE != 'rdrama.net' %}
2022-06-23 23:07:47 +00:00
< a id = "admin" class = "{% if u.admin_level > 1 %}d-none{% endif %} btn btn-primary" href = "javascript:void(0)" onclick = "post_toast(this,'/@{{u.username}}/make_admin','admin','unadmin','d-none')" > Make admin< / a >
2022-05-29 18:36:51 +00:00
{% endif %}
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "unadmin" class = "{% if u.admin_level < 2 %}d-none{% endif %} btn btn-primary" href = "javascript:void(0)" onclick = "post_toast(this,'/@{{u.username}}/remove_admin','admin','unadmin','d-none')" > Remove admin< / a >
2022-05-04 23:09:46 +00:00
{% if u.admin_level > 1 %}
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/@{{u.username}}/revert_actions')" > Revert admin actions< / a >
{% endif %}
{% endif %}
2022-05-25 07:18:42 +00:00
< / div >
2022-05-04 23:09:46 +00:00
< form class = "d-none toggleable" id = "message" action = "/@{{u.username}}/message" onsubmit = "submitFormAjax(event)" >
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
< pre > < / pre >
2022-08-11 11:39:38 +00:00
< textarea autocomplete = "off" id = "input-message" form = "message" name = "message" rows = "3" minlength = "1" maxlength = "10000" class = "form-control b2" data-preview = "message-preview" oninput = "markdown(this)" required > < / textarea >
2022-05-04 23:09:46 +00:00
< pre > < / pre >
< pre class = "btn btn-secondary format d-inline-block m-0 fas fa-bold" aria-hidden = "true" onclick = "makeBold('input-message')" data-bs-toggle = "tooltip" data-bs-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-bs-toggle = "tooltip" data-bs-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-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Quote" > < / pre >
2022-08-27 02:57:19 +00:00
< pre class = "btn btn-secondary format d-inline-block m-0 fas fa-kiss-wink-heart" onclick = "loadEmojis('input-message')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < / pre >
2022-05-04 23:09:46 +00:00
2022-06-24 22:58:15 +00:00
< input type = "submit" onclick = "disable(this);remove_dialog()" value = "Submit" class = "btn btn-primary" >
2022-05-04 23:09:46 +00:00
< / form >
< div id = "message-preview" class = "preview mt-2" > < / div >
2022-06-27 05:58:54 +00:00
2022-05-04 23:09:46 +00:00
< div class = "d-none mt-3 toggleable" id = "coin-transfer" >
2022-06-27 05:58:54 +00:00
< input autocomplete = "off" id = "coin-transfer-amount" class = "form-control" name = "amount" type = "number" oninput = "updateTax()" >
< input autocomplete = "off" id = "coin-transfer-reason" maxlength = 200 type = "text" class = "form-control" name = "reason" placeholder = "Gift message! (optional)" >
< div > {{u.username}} will receive < span id = "coins-transfer-taxed" > 0< / span > coins< / div >
< button class = "btn btn-primary mt-3" onclick = "transferCoins()" > Gift< / button >
2022-05-04 23:09:46 +00:00
< / div >
< div class = "d-none mt-3 toggleable" id = "bux-transfer" >
2022-06-27 05:58:54 +00:00
< input autocomplete = "off" id = "bux-transfer-amount" class = "form-control" name = "amount" type = "number" oninput = "updateBux()" >
< input autocomplete = "off" id = "bux-transfer-reason" type = "text" class = "form-control" name = "reason" placeholder = "Gift message! (optional)" >
< div > {{u.username}} will receive < span id = "bux-transfer-taxed" > 0< / span > marseybux< / div >
< button class = "btn btn-primary mt-3" onclick = "transferBux()" > Gift< / button >
2022-05-04 23:09:46 +00:00
< / div >
{% elif v and v.id == u.id %}
< a href = "/settings/profile" class = "btn btn-secondary" > Edit profile< / a >
2022-05-26 00:51:42 +00:00
< a href = "/views" class = "btn btn-secondary" > Profile views< / a >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-20 01:16:59 +00:00
{% if FEATURES['USERS_PROFILE_SONG'] and u.song and v and (v.id == u.id or v.mute and not u.unmutable) %}
2022-05-04 23:09:46 +00:00
< a class = "btn btn-secondary" role = "button" onclick = "toggle()" > Toggle anthem< / a >
{% endif %}
{% if v and v.id != u.id and v.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 maxlength = 100 autocomplete = "off" 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" >
2022-08-27 02:57:19 +00:00
< a class = "format" role = "button" > < i class = "btn btn-secondary format d-inline-block m-0 fas fa-kiss-wink-heart" onclick = "loadEmojis('customtitlebody')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < / i > < / a >
2022-05-04 23:09:46 +00:00
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" 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 >
2022-06-24 02:53:31 +00:00
< input autocomplete = "off" class = "btn btn-primary ml-auto" type = "submit" onclick = "disable(this)" value = "Change Flair" >
2022-05-04 23:09:46 +00:00
< / div >
< / form >
< / div >
< / div >
< pre > < / pre >
{% if u.is_suspended %}
2022-08-13 07:42:19 +00:00
< form action = "/unban_user/{{u.id}}" method = "post" action = "" >
2022-05-04 23:09:46 +00:00
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
< input type = "hidden" name = "redir" value = "true" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-success" value = "Unban user" >
2022-05-04 23:09:46 +00:00
< / form >
{% else %}
< form action = "/ban_user/{{u.id}}" method = "post" action = "" >
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
< input type = "hidden" name = "redir" value = "true" >
2022-07-29 22:43:25 +00:00
< input autocomplete = "off" style = "font-size:11px" type = "text" class = "form-control" maxlength = "256" name = "reason" placeholder = "Ban Reason" oninput = "document.getElementById('user-ban-submit').disabled=false" >
2022-05-04 23:09:46 +00:00
< input autocomplete = "off" style = "font-size:11px" type = "number" step = "any" class = "form-control" name = "days" placeholder = "Days (blank = permanent)" >
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" type = "checkbox" id = "alts-2-desktop" class = "custom-control-input" name = "alts" value = "1" >
< label class = "custom-control-label" for = "alts-2-desktop" > Include alts< / label >
< / div >
2022-06-24 02:53:31 +00:00
< input autocomplete = "off" id = "user-ban-submit" type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Ban user" disabled >
2022-05-04 23:09:46 +00:00
< / form >
{% endif %}
< pre > < / pre >
< form id = "agendaposter1" class = "{% if u.agendaposter %}d-none{% endif %}" action = "/agendaposter/{{u.id}}" method = "post" >
< input type = "hidden" name = "formkey" , value = "{{v.formkey}}" >
< input autocomplete = "off" type = "number" step = "any" name = "days" class = "form-control" placeholder = "Days (0 or blank = permanent)" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Lock Chud Theme" >
2022-05-04 23:09:46 +00:00
< / form >
2022-06-23 23:07:47 +00:00
< a id = "unagendaposter" class = "{% if not u.agendaposter %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/unagendaposter/{{u.id}}','agendaposter1','unagendaposter','d-none')" > Disable Chud Theme< / a >
2022-05-04 23:09:46 +00:00
< pre > < / pre >
2022-06-23 23:07:47 +00:00
< a id = "shadowban" class = "{% if u.shadowbanned %}d-none{% endif %} btn btn-danger" role = "button" onclick = "post_toast(this,'/shadowban/{{u.id}}','shadowban','unshadowban','d-none')" > Shadowban< / a >
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "unshadowban" class = "{% if not u.shadowbanned %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/unshadowban/{{u.id}}','shadowban','unshadowban','d-none')" > Unshadowban< / a >
2022-05-04 23:09:46 +00:00
2022-09-01 21:29:27 +00:00
< a id = "mute-user" class = "{% if u.is_muted %}d-none{% endif %} btn btn-danger" role = "button" onclick = "post_toast(this,'/mute_user/{{u.id}}/1','mute-user','unmute-user','d-none')" > Mute< / a >
< a id = "unmute-user" class = "{% if not u.is_muted %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/mute_user/{{u.id}}/0','mute-user','unmute-user','d-none')" > Unmute< / a >
2022-05-04 23:09:46 +00:00
< pre > < / pre >
< 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}}" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-success" value = "Approve User's Content" >
2022-05-04 23:09:46 +00:00
< / 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}}" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Remove User's Content" >
2022-05-04 23:09:46 +00:00
< / form >
< pre > < / pre >
2022-07-20 01:50:08 +00:00
{% if FEATURES['COUNTRY_CLUB'] -%}
2022-06-23 23:07:47 +00:00
< button id = "grant2" class = "{% if u.paid_dues %}d-none{% endif %} btn btn-success" onclick = "post_toast(this,'/@{{u.username}}/club_allow','grant2','bar2','d-none')" > Grant club access< / button >
< button id = "bar2" class = "{% if u.club_allowed == False %}d-none{% endif %} btn btn-danger" onclick = "post_toast(this,'/@{{u.username}}/club_ban','grant2','bar2','d-none')" > Bar from club< / button >
2022-07-20 01:50:08 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
{% endif %}
< pre > < / pre >
2022-05-25 07:18:42 +00:00
< div id = "profile--info" >
< p id = "profile--info--id" > User ID: {{u.id}}< / p >
< p id = "profile--info--spent" > Coins spent: {{u.coins_spent}}< / p >
< p id = "profile--info--truescore" > True score: {{u.truecoins}}< / p >
< p id = "profile--info--winnings" > Winnings: {{u.winnings}}< / p >
{% if u.is_private %}
< p id = "profile--info--private" > User has private mode enabled.< / p >
{% endif %}
{% if v and (v.admin_level > 1 or v.alt) %}
< span id = "profile--alts" > Alts:< / span >
< ul id = "profile--alts-list" >
{% for account in u.alts_unique %}
< li > < a href = "{{account.url}}" > @{{account.username}}< / a > {% if account._is_manual %} [m]{% endif %}< / li >
{% endfor %}
< / ul >
{% endif %}
{% if u.is_suspended %}
< p id = "profile--info--bannedby" > Banned by: < a href = "{{u.banned_by.url}}" > @{{u.banned_by.username}}< / a > < / p >
{% endif %}
< / div >
2022-05-04 23:09:46 +00:00
< / div >
< / div >
2022-07-19 23:59:39 +00:00
{% if FEATURES['BADGES'] -%}
< div id = "profile--badges" >
{% for b in u.badges %}
{% if b.url %}
2022-08-25 17:50:18 +00:00
< a class = "contain" rel = "nofollow noopener noreferrer" href = "{{b.url}}" >
2022-08-25 20:34:05 +00:00
< img alt = "{{b.name}}" width = 55 height = 60 loading = "lazy" src = "{{b.path}}?v=1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{b.text}}" { % if b . until % } data-until = "{{b.until}}" onmouseover = "badge_timestamp(this)" { % endif % } >
2022-08-25 17:50:18 +00:00
< / a >
2022-07-19 23:59:39 +00:00
{% else %}
2022-08-25 20:34:05 +00:00
< img class = "contain" alt = "{{b.name}}" width = 55 height = 60 loading = "lazy" src = "{{b.path}}?v=1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{b.text}}" { % if b . until % } data-until = "{{b.until}}" onmouseover = "badge_timestamp(this)" { % endif % } >
2022-07-19 23:59:39 +00:00
{% endif %}
{% endfor %}
< / div >
{%- endif %}
2022-05-04 23:09:46 +00:00
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
< / div >
{% endblock %}
{% block mobileUserBanner %}
< div class = "container-fluid pb-0 text-center bg-white d-md-none" style = "margin-top:-6px;border-radius:0!important;" >
< div class = "row" >
< div class = "col px-0" >
2022-06-27 01:00:45 +00:00
< a href = "{{u.banner_url}}" >
2022-08-24 16:43:08 +00:00
< img alt = "@{{u.username}}'s banner" onclick = "expandDesktopImage()" loading = "lazy" src = "{{u.banner_url}}" width = 100% style = "object-fit:cover;max-height:30vh!important" >
2022-06-27 01:00:45 +00:00
< / a >
2022-05-04 23:09:46 +00:00
< / div >
< / div >
< div class = "row border-bottom" >
< div class = "col" >
2022-07-13 09:19:36 +00:00
< div style = "margin-top: -34px;" id = "profile-mobile--pfp" >
2022-08-11 07:27:08 +00:00
< a rel = "nofollow noopener noreferrer" href = "{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}" class = "profile-pic-65-wrapper" >
2022-08-23 18:55:24 +00:00
< img onclick = "expandDesktopImage('{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}')" loading = "lazy" src = "{{u.profile_url}}" class = "profile-pic-65 bg-white border-2 border-white mb-2" >
2022-08-11 07:27:08 +00:00
{% if u.hat_active -%}
2022-08-23 18:55:24 +00:00
< img onclick = "expandDesktopImage('{% if u.highres %}{{u.highres}}{% else %}{{u.profile_url}}{% endif %}')" class = "profile-pic-65-hat" loading = "lazy" src = "/i/hats/{{u.hat_active}}.webp" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.hat_tooltip}}" >
2022-08-11 07:27:08 +00:00
{%- endif %}
< / a >
2022-05-04 23:09:46 +00:00
< / div >
< div class = "mt-n3 py-3" >
{% if u.is_suspended %}
2022-07-13 09:19:36 +00:00
< h5 class = "text-primary" id = "profile-mobile--banned" > BANNED USER{% if u.ban_reason %}: {{u.ban_reason | safe}}{% endif %}< / h5 >
{% if u.unban_utc %}< h5 class = "text-primary" id = "profile-mobile--unban" > {{u.unban_string}}< / h5 > {% endif %}
2022-05-04 23:09:46 +00:00
{% endif %}
2022-08-27 02:57:19 +00:00
< h1 class = "h5 d-inline-block" id = "profile-mobile--name" style = "color: #{{u.name_color}}" > < span { % if u . patron % } class = "patron" style = "background-color:#{{u.name_color}}" { % endif % } > {{u.username}}< / span > < / h1 >
2022-05-04 23:09:46 +00:00
{% if u.username != u.original_username %}
2022-07-13 09:19:36 +00:00
< span id = "profile-mobile--origname" >
2022-05-04 23:09:46 +00:00
< i class = "fas fa-user-tag text-info align-middle ml-2" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Original Username: @{{u.original_username}}" > < / i >
< / span >
{% endif %}
2022-08-25 20:34:05 +00:00
{% if FEATURES['PATRON_ICONS'] and u.patron %}
< img loading = "lazy" class = "ml-2" src = "/i/{{SITE_NAME}}/patron_badges/2{{u.patron}}.webp?v=1" height = "20" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.patron_tooltip}}" alt = "{{u.patron_tooltip}}" >
{% endif %}
2022-07-18 06:43:20 +00:00
{% if FEATURES['HOUSES'] and u.house %}
2022-07-13 09:19:36 +00:00
< img loading = "lazy" class = "ml-2" id = "profile-mobile--house" src = "/i/{{SITE_NAME}}/houses/{{u.house}}.webp?v=2000" height = "20" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "House {{u.house}}" alt = "House {{u.house}}" >
2022-05-04 23:09:46 +00:00
{% endif %}
{% if u.verified %}
2022-07-13 09:19:36 +00:00
< span id = "profile-mobile--verified" > < i class = "fas fa-badge-check align-middle ml-2 {% if u.verified=='Glowiefied' %}glow{% endif %}" style = "color:{% if u.verifiedcolor %}#{{u.verifiedcolor}}{% else %}#1DA1F2{% endif %}" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{u.verified}}" > < / i > < / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-05-30 03:40:39 +00:00
{% if u.admin_level > 1 %}
2022-07-13 09:19:36 +00:00
< span id = "profile-mobile--mop" >
2022-05-28 17:50:48 +00:00
< i class = "fas fa-broom text-admin align-middle ml-1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Admin" > < / i >
< / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-03 11:56:40 +00:00
{% if v and v.id != u.id and v.has_follower(u) and not v.is_nofollow %}
2022-07-13 09:19:36 +00:00
< span class = "followsyou badge badge-secondary text-small align-middle mx-1" id = "profile-mobile--follows-you" > Follows you< / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-11 18:04:24 +00:00
2022-07-18 06:43:20 +00:00
{% if FEATURES['PRONOUNS'] %}
2022-07-13 09:19:36 +00:00
< p style = "color: #{{u.titlecolor}}" id = "profile-mobile--pronouns" > {{u.pronouns}}< / p >
2022-07-11 21:23:20 +00:00
{% endif %}
2022-07-11 18:04:24 +00:00
{% if u.customtitle %}
2022-07-13 09:19:36 +00:00
< p style = "color: #{{u.titlecolor}}" id = "profile-mobile--flair" > {{u.customtitle | safe}}< / p >
2022-05-04 23:09:46 +00:00
{% else %}
< pre > < / pre >
{% endif %}
2022-07-18 07:17:45 +00:00
{% if v and (v.id == u.id or v.admin_level >= PERMS['USER_VOTERS_VISIBLE']) -%}
2022-07-13 09:19:36 +00:00
< div class = "font-weight-bolder mb-2" id = "profile-mobile--simphate" > < a class = "mr-1" href = "/@{{u.username}}/upvoters" > Simps< / a > | < a class = "mx-1" href = "/@{{u.username}}/downvoters" > Haters< / a > | < a class = "mx-1" href = "/@{{u.username}}/upvoting" > Simps for< / a > | < a class = "ml-1" href = "/@{{u.username}}/downvoting" > Hates< / a > < / div >
2022-07-18 07:17:45 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
< div class = "font-weight-normal" >
< span id = "profile-coins-amount-mobile" class = "font-weight-bold" > {{u.coins}}< / span >
2022-07-01 05:55:53 +00:00
< img alt = "coins" class = "ml-1 mb-1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "coins" height = "15" src = "{{asset_siteimg('coins.webp')}}" >
2022-05-04 23:09:46 +00:00
2022-07-18 05:10:01 +00:00
{% if FEATURES['PROCOINS'] %}
2022-05-09 12:13:38 +00:00
< span id = "profile-bux-amount-mobile" class = "font-weight-bold" > {{u.procoins}}< / span >
2022-06-22 15:59:47 +00:00
< img alt = "marseybux" class = "ml-1 mb-1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Marseybux" height = "15" width = "35" src = "/i/marseybux.webp?v=2000" >
2022-05-09 12:13:38 +00:00
{% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 02:29:45 +00:00
{% if PERMS['USER_FOLLOWS_VISIBLE'] == 0 or (v and v.admin_level >= PERMS['USER_FOLLOWS_VISIBLE']) -%}
< a href = "/@{{u.username}}/followers" class = "font-weight-bold" id = "profile-mobile--followers" > {{u.stored_subscriber_count}} follower{{'s' if u.stored_subscriber_count != 1 else ''}}< / a >
2022-05-04 23:09:46 +00:00
2022-07-20 02:29:45 +00:00
< a href = "/@{{u.username}}/following" class = "font-weight-bold" id = "profile-mobile--following" style = "display:block" > follows {{u.follow_count}} user{{'s' if u.follow_count != 1 else ''}}< / a >
{%- endif %}
2022-05-04 23:09:46 +00:00
{% if u.basedcount %}
2022-07-13 09:19:36 +00:00
< br > < span id = "profile-mobile--based" > Based count: {{u.basedcount}}< / span >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-13 09:19:36 +00:00
< br > < span id = "profile-mobile--joined" > joined < span id = "profile-mobile--joined--time" data-bs-toggle = "tooltip" data-bs-placement = "bottom" onmouseover = "timestamp('profile-mobile--joined--time','{{u.created_utc}}')" class = "font-weight-bold" > {{u.created_date}}< / span > < / span >
2022-06-20 20:25:03 +00:00
{% if v and v.admin_level >= 2 -%}
2022-07-13 09:19:36 +00:00
< br > < span id = "profile-mobile--lastactive" > last active < span id = "profile-mobile--lastactive--time" data-bs-toggle = "tooltip" data-bs-placement = "bottom" onmouseover = "timestamp('profile-mobile--lastactive--time','{{u.last_active}}')" class = "font-weight-bold" > {{u.last_active_date}}< / span > < / span >
2022-06-20 20:25:03 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
< / div >
2022-07-20 01:16:59 +00:00
{% if FEATURES['USERS_PROFILE_BODYTEXT'] -%}
{% if u.bio_html %}
< div class = "text-muted text-break" id = "profile-mobile--bio" > {{u.bio_html | safe}}< / div >
{% endif %}
2022-05-04 23:09:46 +00:00
2022-07-20 01:16:59 +00:00
{% if u.friends_html %}
< p class = "text-muted font-weight-bold mt-3" > Friends:< / p >
< div id = "profile-mobile--friends" > {{u.friends_html | safe}}< / div >
{% endif %}
{% if u.enemies_html %}
< p class = "text-muted font-weight-bold mt-3" > Enemies:< / p >
< div id = "profile-mobile--enemies" > {{u.enemies_html | safe}}< / div >
{% endif %}
{%- endif %}
2022-05-04 23:09:46 +00:00
2022-07-19 23:59:39 +00:00
{% if u.received_awards and FEATURES['AWARDS'] %}
2022-07-13 09:19:36 +00:00
< div class = "text-white rounded p-2 my-3 text-center" id = "profile-mobile--awards" style = "background-color: rgba(50, 50, 50, 0.6);" >
2022-05-04 23:09:46 +00:00
< p class = "text-uppercase my-0" style = "font-weight: bold; font-size: 12px;" > Awards received< / p >
{% for a in u.received_awards %}
2022-07-13 09:19:36 +00:00
< span class = "d-inline-block mx-1 profile-mobile--awards--award" >
2022-05-04 23:09:46 +00:00
< i class = "{{a['icon']}} {{a['color']}} fa-fw" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{a['title']}} Awards received" > < / i >
x{{a['count']}}
< / span >
{% endfor %}
< / div >
{% endif %}
{% if u.moderated_subs %}
2022-07-13 09:19:36 +00:00
< div class = "text-white rounded p-2 mb-3" id = "profile-mobile--holes" style = "background-color: rgba(50, 50, 50, 0.6);" >
2022-05-04 23:09:46 +00:00
< p class = "text-uppercase my-0 pb-1" style = "font-weight: bold; font-size: 12px;" > Moderator of< / p >
{% for a in u.moderated_subs %}
< span class = "d-inline-block mx-1" >
< a href = "/h/{{a['sub']}}" > /h/{{a['sub']}}< / a >
< / span >
{% endfor %}
< / div >
{% endif %}
2022-07-13 09:19:36 +00:00
< div class = "mb-3" id = "profile-mobile--badges" >
2022-05-04 23:09:46 +00:00
{% for b in u.badges %}
{% if b.url %}
2022-08-25 17:50:18 +00:00
< a rel = "nofollow noopener noreferrer" href = "{{b.url}}" >
2022-08-25 20:34:05 +00:00
< img class = "contain" alt = "{{b.name}}" width = 29.33 height = 32 loading = "lazy" src = "{{b.path}}?v=1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{b.text}}" { % if b . until % } data-until = "{{b.until}}" onmouseover = "badge_timestamp(this)" { % endif % } >
2022-08-25 17:50:18 +00:00
< / a >
2022-05-04 23:09:46 +00:00
{% else %}
2022-08-25 20:34:05 +00:00
< img class = "contain" alt = "{{b.name}}" width = 29.33 height = 32 loading = "lazy" src = "{{b.path}}?v=1" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "{{b.text}}" { % if b . until % } data-until = "{{b.until}}" onmouseover = "badge_timestamp(this)" { % endif % } >
2022-05-04 23:09:46 +00:00
{% endif %}
{% endfor %}
< / div >
{% if v and v.id == u.id %}
< a href = "/settings/profile" class = "btn btn-secondary " > Edit profile< / a >
2022-05-26 00:51:42 +00:00
< a href = "/views" class = "btn btn-secondary" > Profile views< / a >
2022-05-04 23:09:46 +00:00
{% endif %}
2022-07-20 01:16:59 +00:00
{% if FEATURES['USERS_PROFILE_SONG'] and u.song and v and (v.id == u.id or v.mute and not u.unmutable) %}
2022-05-04 23:09:46 +00:00
< a class = "btn btn-secondary" role = "button" onclick = "toggle()" > Toggle anthem< / a >
{% endif %}
{% if v and v.id != u.id %}
2022-06-23 23:07:47 +00:00
< a id = "button-unsub2" class = "btn btn-secondary {% if not is_following %}d-none{% endif %}" role = "button" onclick = "post_toast(this,'/unfollow/{{u.username}}','button-unsub2','button-sub2','d-none')" > Unfollow< / a >
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "button-sub2" class = "btn btn-primary {% if is_following or u.is_nofollow or u.is_blocked %}d-none{% endif %}" role = "button" onclick = "post_toast(this,'/follow/{{u.username}}','button-unsub2','button-sub2','d-none')" > Follow< / a >
2022-05-04 23:09:46 +00:00
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('message-mobile', 'input-message-mobile')" > Message< / a >
2022-07-18 06:43:20 +00:00
{% if FEATURES['USERS_SUICIDE'] -%}
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/@{{u.username}}/suicide')" > Get Them Help< / a >
{%- endif %}
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('coin-transfer-mobile', 'coin-transfer-amount-mobile')" > Gift Coins< / a >
{% if FEATURES['PROCOINS'] -%}
2022-05-09 12:13:38 +00:00
< a class = "btn btn-primary" role = "button" onclick = "toggleElement('bux-transfer-mobile', 'bux-transfer-amount-mobile')" > Gift Marseybux< / a >
2022-07-18 06:43:20 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
2022-07-18 00:18:54 +00:00
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/settings/block?username={{u.username}}',true)" > Block< / a >
2022-05-29 18:36:51 +00:00
{% if v.admin_level > 2 %}
{% if SITE != 'rdrama.net' %}
2022-06-23 23:07:47 +00:00
< a id = "admin2" class = "{% if u.admin_level > 1 %}d-none{% endif %} btn btn-primary" href = "javascript:void(0)" onclick = "post_toast(this,'/@{{u.username}}/make_admin','admin2','unadmin2','d-none')" > Make admin< / a >
2022-05-29 18:36:51 +00:00
{% endif %}
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "unadmin2" class = "{% if u.admin_level < 2 %}d-none{% endif %} btn btn-primary" href = "javascript:void(0)" onclick = "post_toast(this,'/@{{u.username}}/remove_admin','admin2','unadmin2','d-none')" > Remove admin< / a >
2022-05-04 23:09:46 +00:00
{% if u.admin_level > 1 %}
< a class = "btn btn-primary" role = "button" onclick = "post_toast(this,'/@{{u.username}}/revert_actions')" > Revert admin actions< / a >
{% endif %}
{% endif %}
< form class = "d-none toggleable" id = 'message-mobile' action = "/@{{u.username}}/message" onsubmit = "submitFormAjax(event)" >
< pre > < / pre >
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
2022-08-11 11:39:38 +00:00
< textarea autocomplete = "off" id = "input-message-mobile" form = "message-mobile" name = "message" rows = "3" minlength = "1" maxlength = "10000" class = "form-control" data-preview = "message-preview-mobile" oninput = "markdown(this)" required > < / textarea >
2022-05-04 23:09:46 +00:00
< 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-bs-toggle = "tooltip" data-bs-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-bs-toggle = "tooltip" data-bs-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-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Quote" > < / pre >
2022-08-27 02:57:19 +00:00
< pre class = "btn btn-secondary format d-inline-block m-0 fas fa-kiss-wink-heart" onclick = "loadEmojis('input-message-mobile')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < / pre >
2022-05-04 23:09:46 +00:00
2022-06-24 22:58:15 +00:00
< input type = "submit" onclick = "disable(this);remove_dialog()" value = "Submit" class = "btn btn-primary" >
2022-05-04 23:09:46 +00:00
< / form >
< div id = "message-preview-mobile" class = "preview my-3" > < / div >
< div class = "d-none mt-3 toggleable" id = "coin-transfer-mobile" >
< input autocomplete = "off" id = "coin-transfer-amount-mobile" class = "form-control" name = "amount" type = "number" oninput = "updateTax(true)" >
2022-06-07 10:03:51 +00:00
< input autocomplete = "off" id = "coin-transfer-reason-mobile" maxlength = 200 type = "text" class = "form-control" name = "reason" placeholder = "Gift message! (optional)" >
2022-06-01 04:05:14 +00:00
< div > {{u.username}} will receive < span id = "coins-transfer-taxed-mobile" > 0< / span > coins< / div >
2022-05-04 23:09:46 +00:00
< button class = "btn btn-primary mt-2 mb-3" onclick = "transferCoins(true)" > Gift< / button >
< / div >
< div class = "d-none mt-3 toggleable" id = "bux-transfer-mobile" >
< input autocomplete = "off" id = "bux-transfer-amount-mobile" class = "form-control" name = "amount" type = "number" oninput = "updateBux(true)" >
2022-06-01 02:56:34 +00:00
< input autocomplete = "off" id = "bux-transfer-reason-mobile" type = "text" class = "form-control" name = "reason" placeholder = "Gift message! (optional)" >
2022-06-01 04:05:14 +00:00
< div > {{u.username}} will receive < span id = "bux-transfer-taxed-mobile" > 0< / span > marseybux< / div >
2022-05-04 23:09:46 +00:00
< button class = "btn btn-primary mt-2 mb-3" onclick = "transferBux(true)" > Gift< / button >
< / div >
{% if v.admin_level > 1 %}
2022-07-20 01:50:08 +00:00
{% if FEATURES['COUNTRY_CLUB'] -%}
2022-06-23 23:07:47 +00:00
< button id = "grant" class = "{% if u.paid_dues %}d-none{% endif %} btn btn-success" onclick = "post_toast(this,'/@{{u.username}}/club_allow','grant','bar','d-none')" > Grant club access< / button >
< button id = "bar" class = "{% if u.club_allowed == False %}d-none{% endif %} btn btn-danger" onclick = "post_toast(this,'/@{{u.username}}/club_ban','grant','bar','d-none')" > Bar from club< / button >
2022-07-20 01:50:08 +00:00
{%- endif %}
2022-05-04 23:09:46 +00:00
< 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 maxlength = 100 autocomplete = "off" id = "customtitlebody-mobile" 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" >
2022-08-27 02:57:19 +00:00
< a class = "format" role = "button" > < i class = "btn btn-secondary format d-inline-block m-0 fas fa-kiss-wink-heart" onclick = "loadEmojis('customtitlebody-mobile')" aria-hidden = "true" data-bs-toggle = "modal" data-bs-target = "#emojiModal" data-bs-toggle = "tooltip" data-bs-placement = "bottom" title = "Add Emoji" > < / i > < / a >
2022-05-04 23:09:46 +00:00
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" type = "checkbox" class = "custom-control-input" id = "locked-mobile" name = "locked" { % if u . flairchanged % } checked { % endif % } >
< label class = "custom-control-label" for = "locked-mobile" > locked< / label >
< / div >
2022-06-24 02:53:31 +00:00
< input autocomplete = "off" class = "btn btn-primary ml-auto" type = "submit" onclick = "disable(this)" value = "Change Flair" >
2022-05-04 23:09:46 +00:00
< / div >
< / form >
< / div >
< / div >
< pre > < / pre >
{% if u.is_suspended %}
< form action = "/unban_user/{{u.id}}" method = "post" >
< input type = "hidden" name = "formkey" , value = "{{v.formkey}}" >
< input type = "hidden" name = "redir" value = "true" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-success" value = "Unban user" >
2022-05-04 23:09:46 +00:00
< / form >
{% else %}
2022-08-13 07:42:19 +00:00
< form action = "/ban_user/{{u.id}}" method = "post" >
2022-05-04 23:09:46 +00:00
< input type = "hidden" name = "formkey" value = "{{v.formkey}}" >
< input type = "hidden" name = "redir" value = "true" >
2022-07-29 22:43:25 +00:00
< input autocomplete = "off" style = "font-size:11px" type = "text" class = "form-control" maxlength = "256" name = "reason" placeholder = "Ban Reason" oninput = "document.getElementById('user-ban-submit2').disabled=false" >
2022-05-04 23:09:46 +00:00
< input autocomplete = "off" style = "font-size:11px" type = "number" step = "any" class = "form-control" name = "days" placeholder = "Days (blank = permanent)" >
< br >
< div class = "custom-control custom-checkbox" >
< input autocomplete = "off" type = "checkbox" id = "alts-2-mobile" class = "custom-control-input" name = "alts" value = "1" >
< label class = "custom-control-label" for = "alts-2-mobile" > Include alts< / label >
< / div >
< br >
2022-06-24 02:53:31 +00:00
< input autocomplete = "off" id = "user-ban-submit2" type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Ban user" disabled >
2022-05-04 23:09:46 +00:00
< / form >
{% endif %}
< pre > < / pre >
< form id = "agendaposter2" class = "{% if u.agendaposter %}d-none{% endif %}" action = "/agendaposter/{{u.id}}" method = "post" >
< input type = "hidden" name = "formkey" , value = "{{v.formkey}}" >
< input autocomplete = "off" type = "number" step = "any" name = "days" class = "form-control" placeholder = "Days (0 or blank = permanent)" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Lock Chud Theme" >
2022-05-04 23:09:46 +00:00
< / form >
2022-06-23 23:07:47 +00:00
< a id = "unagendaposter2" class = "{% if not u.agendaposter %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/unagendaposter/{{u.id}}','agendaposter2','unagendaposter2','d-none')" > Disable Chud Theme< / a >
2022-05-04 23:09:46 +00:00
< pre > < / pre >
2022-06-23 23:07:47 +00:00
< a id = "shadowban2" class = "{% if u.shadowbanned %}d-none{% endif %} btn btn-danger" role = "button" onclick = "post_toast(this,'/shadowban/{{u.id}}','shadowban2','unshadowban2','d-none')" > Shadowban< / a >
2022-05-04 23:09:46 +00:00
2022-06-23 23:07:47 +00:00
< a id = "unshadowban2" class = "{% if not u.shadowbanned %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/unshadowban/{{u.id}}','shadowban2','unshadowban2','d-none')" > Unshadowban< / a >
2022-05-04 23:09:46 +00:00
2022-09-01 21:29:27 +00:00
< a id = "mute-user2" class = "{% if u.is_muted %}d-none{% endif %} btn btn-danger" role = "button" onclick = "post_toast(this,'/mute_user/{{u.id}}/1','mute-user2','unmute-user2','d-none')" > Mute< / a >
< a id = "unmute-user2" class = "{% if not u.is_muted %}d-none{% endif %} btn btn-success" role = "button" onclick = "post_toast(this,'/mute_user/{{u.id}}/0','mute-user2','unmute-user2','d-none')" > Unmute< / a >
2022-05-04 23:09:46 +00:00
< pre > < / pre >
< 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}}" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-success" value = "Approve User's Content" >
2022-05-04 23:09:46 +00:00
< / 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}}" >
2022-06-24 02:53:31 +00:00
< input type = "submit" onclick = "disable(this)" class = "btn btn-danger" value = "Remove User's Content" >
2022-05-04 23:09:46 +00:00
< / form >
{% endif %}
{% endif %}
< pre > < / pre >
2022-07-13 09:19:36 +00:00
< div id = "profile-mobile--info" >
< p id = "profile-mobile--info--id" > User ID: {{u.id}}< / p >
< p id = "profile-mobile--info--spent" > Coins spent: {{u.coins_spent}}< / p >
< p id = "profile-mobile--info--truescore" > True score: {{u.truecoins}}< / p >
< p id = "profile-mobile--info--winnings" > Winnings: {{u.winnings}}< / p >
2022-05-25 07:18:42 +00:00
{% if u.is_private %}
2022-07-13 09:19:36 +00:00
< p id = "profile-mobile--info--private" > User has private mode enabled.< / p >
2022-05-25 07:18:42 +00:00
{% endif %}
{% if v and (v.admin_level > 1 or v.alt) %}
2022-07-13 09:19:36 +00:00
< span id = "profile-mobile--alts" > Alts:< / span >
< ul id = "profile-mobile--alts-list" >
2022-05-25 07:18:42 +00:00
{% for account in u.alts_unique %}
< li > < a href = "{{account.url}}" > @{{account.username}}< / a > {% if account._is_manual %} [m]{% endif %}< / li >
{% endfor %}
< / ul >
{% endif %}
{% if u.is_suspended %}
2022-07-13 09:19:36 +00:00
< p id = "profile-mobile--info--bannedby" > Banned by: < a href = "{{u.banned_by.url}}" > @{{u.banned_by.username}}< / a > < / p >
2022-05-25 07:18:42 +00:00
{% endif %}
< / div >
2022-05-04 23:09:46 +00:00
< / 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" >
2022-07-03 03:40:45 +00:00
< ul class = "nav settings-nav" id = "profile-content--nav" >
2022-05-04 23:09:46 +00:00
< li class = "nav-item" >
2022-07-03 03:40:45 +00:00
< a class = "nav-link {% if not 'saved' in request.path %}active{% endif %}" href = "/@{{u.username}}" > Posts < span class = "count" > ({{u.post_count}})< / span > < / a >
2022-05-04 23:09:46 +00:00
< / li >
< li class = "nav-item" >
2022-07-03 03:40:45 +00:00
< a class = "nav-link" href = "/@{{u.username}}/comments" > Comments < span class = "count" > ({{u.comment_count}})< / span > < / a >
2022-05-04 23:09:46 +00:00
< / li >
{% if u.id == v.id %}
2022-07-03 02:43:49 +00:00
< li class = "nav-item" >
2022-07-03 03:40:45 +00:00
< a class = "nav-link {% if '/saved/' in request.path %}active{% endif %}" href = "/@{{u.username}}/saved/posts" > Saved Posts < span class = "count" > ({{u.saved_count}})< / span > < / a >
2022-07-03 02:43:49 +00:00
< / li >
< li class = "nav-item" >
2022-07-03 03:40:45 +00:00
< a class = "nav-link" href = "/@{{u.username}}/saved/comments" > Saved Comments < span class = "count" > ({{u.saved_comment_count}})< / span > < / a >
2022-07-03 02:43:49 +00:00
< / li >
< li class = "nav-item" >
2022-07-03 03:40:45 +00:00
< a class = "nav-link {% if '/subscribed/' in request.path %}active{% endif %}" href = "/@{{u.username}}/subscribed/posts" > Subscribed < span class = "count" > ({{u.subscribed_count}})< / span > < / a >
2022-07-03 02:43:49 +00:00
< / li >
2022-05-04 23:09:46 +00:00
{% endif %}
< / ul >
< / div >
< / div >
< / div >
2022-07-03 02:43:49 +00:00
{% if "/saved/" not in request.path and '/subscribed/' not in request.path %}
2022-05-04 23:09:46 +00:00
< div class = "d-flex justify-content-between align-items-center" style = "padding-top:10px" >
< div class = "d-flex align-items-center" >
< div class = "text-small font-weight-bold mr-2" > ‎ < / div >
< div class = "dropdown dropdown-actions" >
< button class = "btn btn-secondary dropdown-toggle" role = "button" id = "dropdownMenuButton" data-bs-toggle = "dropdown" aria-haspopup = "true" aria-expanded = "false" >
{% if t=="hour" %}< i class = "fas fa-clock mr-1" > < / i >
{% elif t=="day" %}< i class = "fas fa-calendar-day mr-1" > < / i >
{% elif t=="week" %}< i class = "fas fa-calendar-week mr-1" > < / i >
{% elif t=="month" %}< i class = "fas fa-calendar-alt mr-1" > < / i >
{% elif t=="year" %}< i class = "fas fa-calendar mr-1" > < / i >
{% elif 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 t != "hour" %}< a class = "dropdown-item" href = "?sort={{sort}}&t=hour" > < i class = "fas fa-clock mr-2" > < / i > Hour< / a > {% endif %}
{% if t != "day" %}< a class = "dropdown-item" href = "?sort={{sort}}&t=day" > < i class = "fas fa-calendar-day mr-2" > < / i > Day< / a > {% endif %}
{% if t != "week" %}< a class = "dropdown-item" href = "?sort={{sort}}&t=week" > < i class = "fas fa-calendar-week mr-2" > < / i > Week< / a > {% endif %}
{% if t != "month" %}< a class = "dropdown-item" href = "?sort={{sort}}&t=month" > < i class = "fas fa-calendar-alt mr-2" > < / i > Month< / a > {% endif %}
{% if t != "year" %}< a class = "dropdown-item" href = "?sort={{sort}}&t=year" > < i class = "fas fa-calendar mr-2" > < / i > Year< / a > {% endif %}
{% if 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" role = "button" id = "dropdownMenuButton2" data-bs-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 = "dropdownMenuButton2" 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 >
2022-07-20 01:16:59 +00:00
{% if FEATURES['USERS_PROFILE_SONG'] and u.song %}
2022-05-04 23:09:46 +00:00
{% if v and v.id == u.id %}
< div id = "v_username" class = "d-none" > {{v.username}}< / div >
{% else %}
< div id = "u_username" class = "d-none" > {{u.username}}< / div >
{% endif %}
{% endif %}
{% if v %}
< div id = 'tax' class = "d-none" > {% if v.patron or u.patron or v.alts_patron or u.alts_patron %}0{% else %}0.03{% endif %}< / div >
2022-07-03 10:10:04 +00:00
< script src = "{{asset('js/userpage_v.js')}}" > < / script >
2022-05-04 23:09:46 +00:00
< div id = "username" class = "d-none" > {{u.username}}< / div >
{% endif %}
2022-07-03 10:10:04 +00:00
< script src = "{{asset('js/userpage.js')}}" > < / script >
2022-05-04 23:09:46 +00:00
{% 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 %}
2022-07-09 08:35:47 +00:00
{% if not request.path.endswith('/comments') %}
< script src = "{{asset('js/marked.js')}}" > < / script >
{% endif %}
2022-05-04 23:09:46 +00:00
{% if v and v.id != u.id and '/comments' not in request.path %}
{% include "emoji_modal.html" %}
{% endif %}
{% endblock %}
{% block GIFpicker %}
2022-06-13 16:57:44 +00:00
{% endblock %}