diff options
Diffstat (limited to 'app/dispatch/views.py')
| -rw-r--r-- | app/dispatch/views.py | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/app/dispatch/views.py b/app/dispatch/views.py index f52c372..c80607e 100644 --- a/app/dispatch/views.py +++ b/app/dispatch/views.py @@ -437,8 +437,9 @@ def SetDefaultIdentity(request, user_id, pk): return redirect(reverse('driver_details', kwargs={'pk': user_id})) +# class IdentityCreate(CreateView, UserPassesTestMixin): class IdentityCreate(UserPassesTestMixin, CreateView): - template_name = "dispatch/identity/edit.html" + template_name = "dispatch/identity/create.html" model = Identity fields = [] @@ -459,6 +460,15 @@ class IdentityCreate(UserPassesTestMixin, CreateView): self.set_fields(request.user) return super(IdentityCreate, self).get(request) + def get_object(self): + user_id = self.kwargs.get('user_id') + u = User.objects.get(pk=user_id) + return Identity(user=u) + + def form_valid(self, form): + form.instance.user = self.request.user + return super(IdentityCreate, self).form_valid(form) + def test_func(self): return self.request.user.is_superuser or \ self.get_object().user.pk is self.request.user.pk |
