diff options
Diffstat (limited to 'app/dispatch/views.py')
| -rw-r--r-- | app/dispatch/views.py | 59 |
1 files changed, 46 insertions, 13 deletions
diff --git a/app/dispatch/views.py b/app/dispatch/views.py index 087091a..9eb1de4 100644 --- a/app/dispatch/views.py +++ b/app/dispatch/views.py @@ -142,13 +142,18 @@ class DriverUpdate(UserPassesTestMixin, UpdateView): model = User success_url = reverse_lazy('driver_list') # fields = ['username', 'first_name','last_name','email','groups'] - fields = ['username', 'first_name','last_name','email'] + fields = [] + + default_fields = ['username', 'first_name','last_name','email'] + superuser_fields = ['username', 'first_name','last_name','email', + 'is_active', 'is_superuser' ] def get(self,request, *args, **kwargs): if request.user.is_superuser: - self.fields.append('is_active') - self.fields.append('is_superuser') + self.fields = self.superuser_fields + else: + self.fields = self.default_fields return super(DriverUpdate, self).get(request) def get_context_data(self, **kwargs): @@ -222,11 +227,16 @@ class LoadList(FilteredListView): class LoadCreate(CreateView): template_name = "dispatch/loads/create.html" model = Load - fields = ['date', 'customer', 'description', 'delivered_to', 'amount'] + fields = [] + + defualt_fields = ['date', 'customer', 'description', 'delivered_to', 'amount'] + superuser_fields = ['user', 'date', 'customer', 'description', 'delivered_to', 'amount'] def get(self,request): if request.user.is_superuser: - self.fields.insert(1,'user') + self.fields = self.superuser_fields + else: + self.fields = self.default_fields return super(LoadCreate, self).get(request) def form_valid(self, form): @@ -249,11 +259,16 @@ class LoadDetail(DetailView): class LoadUpdate(FilteredUpdateView): template_name = "dispatch/loads/edit.html" model = Load - fields = ['date', 'customer', 'description', 'delivered_to', 'amount'] + fields = [] + + default_fields = ['date', 'customer', 'description', 'delivered_to', 'amount'] + superuser_fields = ['user', 'date', 'customer', 'description', 'delivered_to', 'amount'] def get(self,request,pk): if request.user.is_superuser: - self.fields.insert(1,'user') + self.fields = self.superuser_fields + else: + self.fields = self.default_fields return super(LoadUpdate, self).get(request) def form_valid(self, form): @@ -331,11 +346,19 @@ def PaperworkDownload(request, load_id, pk): class UserInvoiceNumberUpdate(UserPassesTestMixin, UpdateView): template_name = "dispatch/userinvoicenumber/edit.html" model = UserInvoiceNumber - fields = ['number'] + fields = [] + + default_fields = ['number'] + superuser_fields = ['number', 'user'] def get(self,request, *args, **kwargs): if request.user.is_superuser: - self.fields.insert(1,'user') + # self.fields.insert(1,'user') + self.fields = self.superuser_fields + # print('Is superuser\nFields: {}'.format(self.fields)) + else: + self.fields = self.default_fields + # print('Is not superuser\nFields: {}'.format(self.fields)) return super(UserInvoiceNumberUpdate, self).get(request) def test_func(self): @@ -358,11 +381,16 @@ def SetDefaultIdentity(request, user_id, pk): class IdentityCreate(UserPassesTestMixin, CreateView): template_name = "dispatch/identity/edit.html" model = Identity - fields = ['name', 'address', 'city', 'state', 'zip_code'] + fields = [] + + default_fields = ['name', 'address', 'city', 'state', 'zip_code'] + superuser_fields = ['user', 'name', 'address', 'city', 'state', 'zip_code'] def get(self, request, *args, **kwargs): if request.user.is_superuser: - self.fields.insert(1,'user') + self.fields = self.superuser_fields + else: + self.fields = self.default_fields return super(IdentityCreate, self).get(request) def test_func(self): @@ -372,11 +400,16 @@ class IdentityCreate(UserPassesTestMixin, CreateView): class IdentityUpdate(UserPassesTestMixin, UpdateView): template_name = "dispatch/identity/edit.html" model = Identity - fields = ['name', 'address', 'city', 'state', 'zip_code'] + fields = [] + + defualt_fields = ['name', 'address', 'city', 'state', 'zip_code'] + superuser_fields = ['user', 'name', 'address', 'city', 'state', 'zip_code'] def get(self, request, *args, **kwargs): if request.user.is_superuser: - self.fields.insert(1,'user') + self.fields = self.superuser_fields + else: + self.fields = self.default_fields return super(IdentityUpdate, self).get(request) def test_func(self): |
