add lifetime donated column
parent
b4ef8c53de
commit
e3f58e3e78
|
@ -4,7 +4,7 @@ from typing import Union
|
|||
import re
|
||||
|
||||
import pyotp
|
||||
from sqlalchemy import Column, ForeignKey
|
||||
from sqlalchemy import Column, ForeignKey, FetchedValue
|
||||
from sqlalchemy.orm import aliased, deferred, Query
|
||||
from sqlalchemy.sql import case, func, literal
|
||||
from sqlalchemy.sql.expression import not_, and_, or_
|
||||
|
@ -177,6 +177,8 @@ class User(Base):
|
|||
sub_mods = relationship("Mod", primaryjoin="User.id == Mod.user_id", lazy="raise")
|
||||
sub_exiles = relationship("Exile", primaryjoin="User.id == Exile.user_id", lazy="raise")
|
||||
|
||||
lifetime_donated = deferred(Column(Integer, server_default=FetchedValue()))
|
||||
|
||||
def __init__(self, **kwargs):
|
||||
|
||||
if "password" in kwargs:
|
||||
|
|
|
@ -7,6 +7,7 @@
|
|||
<th>#</th>
|
||||
<th>Name</th>
|
||||
<th>Tier</th>
|
||||
<th>Lifetime Donated</th>
|
||||
<th>Truescore</th>
|
||||
</tr>
|
||||
</thead>
|
||||
|
@ -19,6 +20,7 @@
|
|||
<img class="contain" alt="2{{user.patron}}" loading="lazy" width=29.33 height=32 src="{{SITE_FULL_IMAGES}}/i/{{SITE_NAME}}/badges/2{{user.patron}}.webp?b=8">
|
||||
{% endif %}
|
||||
</td>
|
||||
<td>{{user.lifetime_donated}}</td>
|
||||
<td>{{user.truescore}}</td>
|
||||
</tr>
|
||||
{% endfor %}
|
||||
|
|
|
@ -226,6 +226,11 @@
|
|||
{% if u.is_private %}
|
||||
<p id="profile--info--private">User has private mode enabled</p>
|
||||
{% endif %}
|
||||
|
||||
{% if v and v.admin_level > PERMS['VIEW_PATRONS'] %}
|
||||
<p id="profile--info--lifetime-donated">Lifetime Donated: ${{u.lifetime_donated}}</p>
|
||||
{% endif %}
|
||||
|
||||
{% if v and (v.admin_level >= PERMS['VIEW_ALTS'] or v.alt) %}
|
||||
{% if v.admin_level >= PERMS['USER_LINK'] %}
|
||||
<span id="profile--alts"><a href="/@{{u.username}}/alts">{{alts|length}} Alt{{macros.plural(alts|length)}}</a>:</span>
|
||||
|
@ -496,6 +501,11 @@
|
|||
{% if u.is_private %}
|
||||
<p id="profile-mobile--info--private">User has private mode enabled</p>
|
||||
{% endif %}
|
||||
|
||||
{% if v and v.admin_level > PERMS['VIEW_PATRONS'] %}
|
||||
<p id="profile-mobile--info--lifetime-donated">Lifetime Donated: ${{u.lifetime_donated}}</p>
|
||||
{% endif %}
|
||||
|
||||
{% if v and (v.admin_level >= PERMS['VIEW_ALTS'] or v.alt) %}
|
||||
{% if v.admin_level >= PERMS['USER_LINK'] %}
|
||||
<span id="profile-mobile--alts"><a href="/@{{u.username}}/alts">{{alts|length}} Alt{{macros.plural(alts|length)}}</a>:</span>
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
create function public.lifetime_donated(public.users) returns integer
|
||||
language sql immutable strict
|
||||
as $_$
|
||||
select sum(amount)
|
||||
from transactions
|
||||
where transactions.email = $1.email
|
||||
$_$;
|
Loading…
Reference in New Issue