diff options
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r-- | ishtar_common/views.py | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 18bdc6e36..95b7689ec 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -1629,9 +1629,11 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView): current_url = 'current_imports' def get_queryset(self): + q = self.model.objects.exclude(state='AC') + if self.request.user.is_superuser: + return q.order_by('-creation_date') user = models.IshtarUser.objects.get(pk=self.request.user.pk) - return self.model.objects.filter(user=user).exclude( - state='AC').order_by('-creation_date') + return q.filter(user=user).order_by('-creation_date') def post(self, request, *args, **kwargs): for field in request.POST: @@ -1643,10 +1645,11 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView): imprt = models.Import.objects.get(pk=int(field.split('-')[-1])) except (models.Import.DoesNotExist, ValueError): continue - # user can only edit his own imports - user = models.IshtarUser.objects.get(pk=self.request.user.pk) - if imprt.user != user: - continue + if not self.request.user.is_superuser: + # user can only edit his own imports + user = models.IshtarUser.objects.get(pk=self.request.user.pk) + if imprt.user != user: + continue action = request.POST[field] if action == 'D': return HttpResponseRedirect(reverse('import_delete', @@ -1665,9 +1668,11 @@ class ImportOldListView(ImportListView): current_url = 'old_imports' def get_queryset(self): + q = self.model.objects.filter(state='AC') + if self.request.user.is_superuser: + return q.order_by('-creation_date') user = models.IshtarUser.objects.get(pk=self.request.user.pk) - return self.model.objects.filter( - user=user, state='AC').order_by('-creation_date') + return q.filter(user=user).order_by('-creation_date') class ImportLinkView(IshtarMixin, LoginRequiredMixin, ModelFormSetView): |