add pride award

pull/211/head
Aevann 2023-10-05 22:40:44 +03:00
parent c09134422f
commit 00d28a6120
9 changed files with 81 additions and 6 deletions

View File

@ -214,6 +214,7 @@
.fa-ankh:before{content:"\f644"}
.fa-quotes:before{content:"\e234"}
.fa-tv:before{content:"\f26c"}
.fa-heart:before{content:"\f004"}
/* do not remove - fixes hand, talking, marsey-love components
from breaking out of the comment box
@ -7630,3 +7631,58 @@ ul {
from {background-position: 0px;}
to {background-position: 1000px;}
}
@-webkit-keyframes lgbt {
0% {
color: violet;
}
20% {
color: red;
}
40% {
color: orange;
}
60% {
color: yellow;
}
80% {
color: blue;
}
100% {
color: violet;
}
}
@-webkit-keyframes lgbt-patron {
0% {
background-color: violet;
}
20% {
background-color: red;
}
40% {
background-color: orange;
}
60% {
background-color: yellow;
}
80% {
background-color: blue;
}
100% {
background-color: violet;
}
}
[pride_username] {
-webkit-animation: 3s ease-in-out 0s normal none infinite lgbt;
animation: 3s ease-in-out 0s normal none infinite lgbt;
}
[pride_username].patron {
-webkit-animation: 3s ease-in-out 0s normal none infinite lgbt-patron;
animation: 3s ease-in-out 0s normal none infinite lgbt-patron;
}

View File

@ -1265,6 +1265,10 @@ class User(Base):
def offsitementions(self):
return self.has_badge(140)
@lazy
def pride_username(self, v):
return not (v and v.poor) and self.has_badge(303)
@property
@lazy
def shadowbanner(self):

View File

@ -879,6 +879,19 @@ AWARDS = {
"enabled": True,
"positive": True,
},
"pride": {
"kind": "pride",
"title": "Pride",
"description": "Glams up the recipient's name, showing lifelong support for the LGBTQIA+ community.",
"icon": "fas fa-heart",
"color": "text-purple",
"price": 200000,
"deflectable": True,
"cosmetic": False,
"ghost": False,
"enabled": True,
"positive": True,
},
}
AWARDS_ENABLED = {}

View File

@ -473,6 +473,8 @@ def award_thing(v, thing_type, id):
elif kind == "checkmark":
author.verified = "Verified"
badge_grant(user=author, badge_id=150)
elif kind == "pride":
badge_grant(user=author, badge_id=303)
elif kind == 'marsify':
if author.chud:
abort(409, f"{safe_username} under the effect of a conflicting award: Chud award!")

View File

@ -171,7 +171,7 @@
<img class="profile-pic-30-hat hat" loading="lazy" src="{{c.author.hat_active(v)[0]}}?x=6" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{c.author.hat_active(v)[1]}}" alt="@{{c.author.username}}'s hat">
{%- endif %}
</div>
<span {% if c.author.patron and not c.distinguish_level %}class="patron" style="background-color:#{{c.author.name_color}}"{% elif c.distinguish_level %}class="mod {% if SITE_NAME == 'rDrama' %}mod-rdrama{% endif %}"{% endif %}>{{c.author_name}}</span>
<span {% if c.author.patron and not c.distinguish_level %}class="patron" style="background-color:#{{c.author.name_color}}"{% elif c.distinguish_level %}class="mod {% if SITE_NAME == 'rDrama' %}mod-rdrama{% endif %}"{% endif %} {% if c.author.pride_username(v) %}pride_username{% endif %}>{{c.author_name}}</span>
</a>
{% if FEATURES['PRONOUNS'] %}
<span class="pronouns" style="color:#{{c.author.titlecolor}};border-color:#{{c.author.titlecolor}}">{{c.author.pronouns_display}}</span>

View File

@ -301,7 +301,7 @@
{%- endif %}
</div>
<div class="text-left pl-2" id="header--username--outerdiv">
<div style="color: #{{v.name_color}}" class="text-small font-weight-bold"><span id="header--username" {% if v.patron %}class="patron" style="background-color:#{{v.name_color}}"{% endif %}>{{v.user_name}}</span></div>
<div style="color: #{{v.name_color}}" class="text-small font-weight-bold"><span id="header--username" {% if v.patron %}class="patron" style="background-color:#{{v.name_color}}"{% endif %} {% if v.pride_username(v) %}pride_username{% endif %}>{{v.user_name}}</span></div>
<div class="header--currency"><img loading="lazy" alt="coins" class="mr-1 ml-1" data-bs-toggle="tooltip" data-bs-placement="bottom" src="{{'coins.webp' | asset_siteimg}}" title="Coins"><span id="user-coins-amount">{{v.coins}}</span>{% if not FEATURES['MARSEYBUX'] %} Coin{{macros.plural(v.coins)}}{% endif %}</div>
{% if FEATURES['MARSEYBUX'] %}
<div class="header--currency"><img loading="lazy" alt="marseybux" class="mr-1 ml-1" data-bs-toggle="tooltip" data-bs-placement="bottom" src="{{SITE_FULL_IMAGES}}/i/marseybux.webp?x=6" title="Marseybux"><span id="user-bux-amount">{{v.marseybux}}</span></div>

View File

@ -7,6 +7,6 @@
<img class="profile-pic-20-hat hat" loading="lazy" src="{{user.hat_active(v)[0]}}?x=6" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{user.hat_active(v)[1]}}">
{%- endif %}
</div>
<span {% if user.patron %}class="patron" style="background-color:#{{user.name_color}}"{% endif %}>{{user.user_name}}</span>
<span {% if user.patron %}class="patron" style="background-color:#{{user.name_color}}"{% endif %} {% if user.pride_username(v) %}pride_username{% endif %}>{{user.user_name}}</span>
</a>
{% endif %}

View File

@ -27,7 +27,7 @@
<div id="profilestuff" class="ml-3 w-100">
{{userpage_admintools.userBanBlock('desktop')}}
<div class="d-flex align-items-center mt-1 mb-2">
<h3 class="font-weight-bolder 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.user_name}}</span></h3>
<h3 class="font-weight-bolder 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 %} {% if u.pride_username(v) %}pride_username{% endif %}>{{u.user_name}}</span></h3>
{% if can_see(v, u) and u.username != u.original_username %}
{% set ns.og_usernames = 'Original Usernames:<br>@' ~ u.original_username %}
@ -317,7 +317,7 @@
</div>
<div class="mt-n3 py-3">
{{userpage_admintools.userBanBlock('mobile')}}
<h5 class=" 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.user_name}}</span></h5>
<h5 class=" 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 %} {% if u.pride_username(v) %}pride_username{% endif %}>{{u.user_name}}</span></h5>
{% if can_see(v, u) and u.username != u.original_username %}
<span id="profile-mobile--origname">

View File

@ -80,7 +80,7 @@
<img class="profile-pic-30-hat hat" loading="lazy" src="{{p.author.hat_active(v)[0]}}?x=6" data-bs-toggle="tooltip" data-bs-placement="bottom" title="{{p.author.hat_active(v)[1]}}" alt="@{{p.author.username}}'s hat">
{%- endif %}
</div>
<span {% if p.author.patron and not p.distinguish_level %}class="patron" style="background-color:#{{p.author.name_color}}"{% elif p.distinguish_level %}class="mod {% if SITE_NAME == 'rDrama' %}mod-rdrama{% endif %}"{% endif %}>{{p.author_name}}</span>
<span {% if p.author.patron and not p.distinguish_level %}class="patron" style="background-color:#{{p.author.name_color}}"{% elif p.distinguish_level %}class="mod {% if SITE_NAME == 'rDrama' %}mod-rdrama{% endif %}"{% endif %} {% if p.author.pride_username(v) %}pride_username{% endif %}>{{p.author_name}}</span>
</a>
{% if FEATURES['PRONOUNS'] %}
<span class="pronouns" style="color:#{{p.author.titlecolor}};border-color:#{{p.author.titlecolor}}">{{p.author.pronouns_display}}</span>