summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/views.py')
-rw-r--r--ishtar_common/views.py21
1 files changed, 18 insertions, 3 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 2965ada87..74691256b 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1541,9 +1541,13 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView):
for field in request.POST:
if not field.startswith("import-action-") or not request.POST[field]:
continue
+ model = models.Import
+ is_group = field.startswith("import-action-group-")
+ if is_group:
+ model = models.ImportGroup
# prevent forged forms
try:
- imprt = models.Import.objects.get(pk=int(field.split("-")[-1]))
+ imprt = model.objects.get(pk=int(field.split("-")[-1]))
except (models.Import.DoesNotExist, ValueError):
continue
if not self.request.user.is_superuser:
@@ -1553,12 +1557,14 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView):
continue
action = request.POST[field]
if action == "D":
+ url = "import_group_delete" if is_group else "import_delete"
return HttpResponseRedirect(
- reverse("import_delete", kwargs={"pk": imprt.pk})
+ reverse(url, kwargs={"pk": imprt.pk})
)
elif action == "ED":
+ url = "edit_import_group" if is_group else "edit_import"
return HttpResponseRedirect(
- reverse("edit_import", kwargs={"pk": imprt.pk})
+ reverse(url, kwargs={"pk": imprt.pk})
)
elif action == "A":
imprt.initialize(
@@ -2068,6 +2074,15 @@ class ImportDeleteView(IshtarMixin, LoginRequiredMixin, DeleteView):
return reverse("current_imports")
+class ImportGroupDeleteView(IshtarMixin, LoginRequiredMixin, DeleteView):
+ template_name = "ishtar/import_delete.html"
+ model = models.ImportGroup
+ page_name = _("Delete import")
+
+ def get_success_url(self):
+ return reverse("current_imports")
+
+
class PersonCreate(LoginRequiredMixin, CreateView):
model = models.Person
form_class = forms.BasePersonForm