49
app/settings/views/user_settings.py
Normal file
49
app/settings/views/user_settings.py
Normal file
@ -0,0 +1,49 @@
|
||||
|
||||
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()
|
Reference in New Issue
Block a user