mirror of
https://github.com/eitchtee/WYGIWYH.git
synced 2026-04-25 10:08:36 +02:00
feat: add option for muting sounds
This commit is contained in:
18
app/apps/users/migrations/0007_usersettings_mute_sounds.py
Normal file
18
app/apps/users/migrations/0007_usersettings_mute_sounds.py
Normal file
@@ -0,0 +1,18 @@
|
||||
# Generated by Django 5.1.1 on 2024-10-14 14:21
|
||||
|
||||
from django.db import migrations, models
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
dependencies = [
|
||||
("users", "0006_alter_usersettings_language"),
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.AddField(
|
||||
model_name="usersettings",
|
||||
name="mute_sounds",
|
||||
field=models.BooleanField(default=False),
|
||||
),
|
||||
]
|
||||
@@ -26,6 +26,7 @@ class UserSettings(models.Model):
|
||||
get_user_model(), on_delete=models.CASCADE, related_name="settings"
|
||||
)
|
||||
hide_amounts = models.BooleanField(default=False)
|
||||
mute_sounds = models.BooleanField(default=False)
|
||||
|
||||
language = models.CharField(
|
||||
max_length=10,
|
||||
|
||||
@@ -11,6 +11,11 @@ urlpatterns = [
|
||||
views.toggle_amount_visibility,
|
||||
name="toggle_amount_visibility",
|
||||
),
|
||||
path(
|
||||
"user/toggle-sound-playing/",
|
||||
views.toggle_sound_playing,
|
||||
name="toggle_sound_playing",
|
||||
),
|
||||
path(
|
||||
"user/settings/",
|
||||
views.update_settings,
|
||||
|
||||
@@ -49,6 +49,27 @@ def toggle_amount_visibility(request):
|
||||
return response
|
||||
|
||||
|
||||
@only_htmx
|
||||
@login_required
|
||||
def toggle_sound_playing(request):
|
||||
user_settings, created = UserSettings.objects.get_or_create(user=request.user)
|
||||
current_mute_sounds = user_settings.mute_sounds
|
||||
new_mute_sounds = not current_mute_sounds
|
||||
|
||||
user_settings.mute_sounds = new_mute_sounds
|
||||
user_settings.save()
|
||||
|
||||
if new_mute_sounds is True:
|
||||
messages.info(request, _("Sounds are now muted"))
|
||||
response = render(request, "users/generic/play_sounds.html")
|
||||
else:
|
||||
messages.info(request, _("Sounds will now play"))
|
||||
response = render(request, "users/generic/mute_sounds.html")
|
||||
|
||||
response.headers["HX-Trigger"] = "updated, toast"
|
||||
return response
|
||||
|
||||
|
||||
@only_htmx
|
||||
@login_required
|
||||
def update_settings(request):
|
||||
|
||||
Reference in New Issue
Block a user