summaryrefslogtreecommitdiff
path: root/ishtar_common/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2023-08-09 17:19:26 +0200
committerÉtienne Loks <etienne.loks@iggdrasil.net>2024-04-16 16:38:32 +0200
commitdb25c90193eb4ab38d9c8c94f07aa28ff15aaf8d (patch)
tree6e94e37b959da3355a3e2b70f7c726d923f59e88 /ishtar_common/views.py
parent145f02926494e34e12ba773485348f9269087431 (diff)
downloadIshtar-db25c90193eb4ab38d9c8c94f07aa28ff15aaf8d.tar.bz2
Ishtar-db25c90193eb4ab38d9c8c94f07aa28ff15aaf8d.zip
✨ Imports groups: delete action
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