From 72da55fd611ad857f79e39a967fb825a3ed3ea91 Mon Sep 17 00:00:00 2001 From: justcool393 Date: Sun, 6 Nov 2022 04:27:44 -0600 Subject: [PATCH] settings: implement front end for perma-filters --- files/helpers/const.py | 2 ++ files/routes/settings.py | 1 - files/templates/settings_common.html | 6 ++-- files/templates/settings_personal.html | 49 ++++++++++++++++++++++++++ 4 files changed, 54 insertions(+), 4 deletions(-) diff --git a/files/helpers/const.py b/files/helpers/const.py index f20991ba6..817b63094 100644 --- a/files/helpers/const.py +++ b/files/helpers/const.py @@ -312,6 +312,7 @@ FEATURES = { 'USERS_PROFILE_BANNER': True, 'USERS_PROFILE_BODYTEXT': True, 'USERS_PROFILE_SONG': True, + 'USERS_PERMANENT_WORD_FILTERS': False, 'USERS_SUICIDE': True, 'MARKUP_COMMANDS': True, 'REPOST_DETECTION': True, @@ -473,6 +474,7 @@ HOUSE_SWITCH_COST = 2000 if SITE.startswith('rdrama.'): FEATURES['PRONOUNS'] = True FEATURES['HOUSES'] = True + FEATURES['USERS_PERMANENT_WORD_FILTERS'] = True PERMS['ADMIN_ADD'] = 4 SIDEBAR_THREAD = 37696 diff --git a/files/routes/settings.py b/files/routes/settings.py index 6142d4c10..e02474be6 100644 --- a/files/routes/settings.py +++ b/files/routes/settings.py @@ -21,7 +21,6 @@ import requests def settings(v): return redirect("/settings/personal") - @app.get("/settings/personal") @auth_required def settings_personal(v): diff --git a/files/templates/settings_common.html b/files/templates/settings_common.html index 1ddc1c6b6..52dac54af 100644 --- a/files/templates/settings_common.html +++ b/files/templates/settings_common.html @@ -1,15 +1,15 @@ -{% macro toggle_section(title, id, name, flag, below_text) %} +{% macro toggle_section(title, id, name, flag, below_text, disabled) %}
- +
{% if below_text %} - {{below_text}} + {{below_text|safe}} {% endif %}
diff --git a/files/templates/settings_personal.html b/files/templates/settings_personal.html index 6ed81e232..47a1fe766 100644 --- a/files/templates/settings_personal.html +++ b/files/templates/settings_personal.html @@ -211,6 +211,19 @@
Filters
+ {# toggle_section(title, id, name, flag, below_text, disabled) #} + {% if FEATURES['USERS_PERMANENT_WORD_FILTERS'] and v.slurreplacer %} + {% set slurtext = 'Enable if you would like to automatically replace slurs. Make filter permanent for a badge!' %} + {% else %} + {% set slurtext = 'Enable if you would like to automatically replace slurs.' %} + {% endif %} + {% if FEATURES['USERS_PERMANENT_WORD_FILTERS'] and v.profanityreplacer %} + {% set slurtext = 'Enable if you would like to automatically replace profanities. Make filter permanent for a badge!' %} + {% else %} + {% set profanitytext = 'Enable if you would like to automatically replace profanities.' %} + {% endif %} + {{toggle_section("Slur Replacer", "slurreplacer", v.slurreplacer, slurtext, FEATURES['USERS_PERMANENT_WORD_FILTERS'] and v.slurreplacer > 1)}} + {{toggle_section("Profanity Replacer", "profanityreplacer", v.slurreplacer, profanitytext, FEATURES['USERS_PERMANENT_WORD_FILTERS'] and v.profanityreplacer > 1)}} {# profanity filter toggle (and lock?) #} {# slur filter toggle (and lock?) #}
@@ -249,4 +262,40 @@ {% endif %} + +{% macro permanent_filter_modal(id, form_action, field, friendly_name, badge_name) %} +{% if FEATURES['USERS_PERMANENT_WORD_FILTERS'] -%} + +{%- endif %} +{% endmacro %} +{% if v.slurreplacer and v.slurreplacer == 1 %} +{{permanent_filter_modal('slurreplacer', '/settings/profile', 'slurreplacer', 'Slur Replacer', 'Social Justice Berserker')}} +{% endif %} +{% if v.profanityreplacer and v.profanityreplacer == 1 %} +{{permanent_filter_modal('profanityreplacer', '/settings/profile', 'profanityreplacer', 'Profanity Replacer', 'Soapy-Mouthed Angel')}} +{% endif %} {% endblock %}