diff --git a/files/classes/user.py b/files/classes/user.py index 2402a32ec..74aac60c8 100644 --- a/files/classes/user.py +++ b/files/classes/user.py @@ -159,6 +159,7 @@ class User(Base): rainbow = Column(Integer, default=0) spider = Column(Integer, default=0) lifetimedonated = Column(Integer, default=0) + lifetimedonated_visible = Column(Boolean, default=False) blacklisted_by = Column(Integer, ForeignKey("users.id")) if IS_FISTMAS(): diff --git a/files/routes/settings.py b/files/routes/settings.py index 8e5bc36de..0e4c80695 100644 --- a/files/routes/settings.py +++ b/files/routes/settings.py @@ -164,6 +164,7 @@ def settings_personal_post(v): updated = updated or update_flag("sigs_disabled", "sigs_disabled") updated = updated or update_flag("over_18", "over_18") updated = updated or update_flag("is_private", "private") + updated = updated or update_flag("lifetimedonated_visible", "lifetimedonated_visible") if not updated and request.values.get("spider", v.spider) != v.spider and v.spider <= 1: updated = True diff --git a/files/templates/settings/personal.html b/files/templates/settings/personal.html index 319a57c00..7ba59227c 100644 --- a/files/templates/settings/personal.html +++ b/files/templates/settings/personal.html @@ -247,6 +247,8 @@ {{common.text_area_section('profile-signature', '/settings/personal', 'sig', 'Signature', v.sig, 'Limit of 200 characters', 'Enter a signature...', true, false, 200)}} {{common.toggle_section('Private Mode', 'privateswitch', 'private', v.is_private, 'This will hide your profile page from others.', false)}} + {{common.toggle_section('Lifetime donated visiblity', 'lifetimedonated_visible', 'lifetimedonated_visible', v.lifetimedonated_visible, 'Make the "lifetime donated" field in your profile visible to everyone instead of just you.', false)}} + {{common.toggle_section('Spider', 'spiderswitch', 'spider', v.spider, 'Have a spider friend accompany you during your journey on the site.', v.spider > 1)}} {{common.toggle_section('Marsify', 'marsify', 'marsify', v.marsify, 'Automatically insert relevant marseys into your future comments.', v.marsify > 1)}} diff --git a/files/templates/userpage/banner.html b/files/templates/userpage/banner.html index 6c1e9a4c1..8cf7be98d 100644 --- a/files/templates/userpage/banner.html +++ b/files/templates/userpage/banner.html @@ -233,7 +233,9 @@

Coins spent on awards: {{u.coins_spent}}

Coins spent on hats: {{u.coins_spent_on_hats}}

- {% if v and (v.id == u.id or v.admin_level >= PERMS['VIEW_PATRONS']) %} + {% if u.lifetimedonated_visible %} +

Lifetime donated: ${{u.lifetimedonated}} (shown to everyone)

+ {% elif v.id == u.id or v.admin_level >= PERMS['VIEW_PATRONS'] %}

Lifetime donated: ${{u.lifetimedonated}} (shown to you only)

{% endif %} @@ -511,7 +513,9 @@

Coins spent on awards: {{u.coins_spent}}

Coins spent on hats: {{u.coins_spent_on_hats}}

- {% if v and (v.id == u.id or v.admin_level >= PERMS['VIEW_PATRONS']) %} + {% if u.lifetimedonated_visible %} +

Lifetime donated: ${{u.lifetimedonated}} (shown to everyone)

+ {% elif v.id == u.id or v.admin_level >= PERMS['VIEW_PATRONS'] %}

Lifetime donated: ${{u.lifetimedonated}} (shown to you only)

{% endif %} diff --git a/migrations/20230803-add-lifetimedonated_visiblesql.sql b/migrations/20230803-add-lifetimedonated_visiblesql.sql new file mode 100644 index 000000000..7aa1da6bf --- /dev/null +++ b/migrations/20230803-add-lifetimedonated_visiblesql.sql @@ -0,0 +1,2 @@ +alter table users add column lifetimedonated_visible bool default false not null; +alter table users alter column lifetimedonated_visible drop default;