Implement custom notification settings

This commit is contained in:
2022-12-18 17:21:52 +00:00
parent 4c463e88f2
commit 7ee698f457
9 changed files with 141 additions and 8 deletions

View File

@@ -0,0 +1,26 @@
from django.contrib.auth.mixins import LoginRequiredMixin
from core.forms import NotificationSettingsForm
from core.models import NotificationSettings
from core.views import ObjectUpdate
# Notifications - we create a new notification settings object if there isn't one
# Hence, there is only an update view, not a create view.
class NotificationsUpdate(LoginRequiredMixin, ObjectUpdate):
model = NotificationSettings
form_class = NotificationSettingsForm
# list_url_name = "notifications"
# list_url_args = ["type"]
submit_url_name = "notifications_update"
submit_url_args = ["type"]
pk_required = False
def get_object(self, **kwargs):
notification_settings, _ = NotificationSettings.objects.get_or_create(
user=self.request.user
)
return notification_settings