Files
centurion_erp/app/settings/views/user_settings.py
2024-05-25 10:44:49 +09:30

50 lines
971 B
Python

from django.core.exceptions import PermissionDenied
from django.urls import reverse
from django.views import generic
from access.mixin import OrganizationPermission
from settings.models.user_settings import UserSettings
class View(generic.UpdateView):
context_object_name = "settings"
fields = [
'default_organization',
]
model = UserSettings
template_name = 'form.html.j2'
def form_valid(self, form):
if self.object.is_owner(self.request.user):
return super().form_valid(form)
raise PermissionDenied()
def get_success_url(self, **kwargs):
return reverse('_settings_user', args=(self.kwargs['pk'],))
def get_context_data(self, **kwargs):
if self.object.is_owner(self.request.user):
context = super().get_context_data(**kwargs)
context['content_title'] = 'User Settings'
return context
raise PermissionDenied()