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.py35
1 files changed, 34 insertions, 1 deletions
diff --git a/ishtar_common/views.py b/ishtar_common/views.py
index 74691256b..1ab5931e4 100644
--- a/ishtar_common/views.py
+++ b/ishtar_common/views.py
@@ -1535,7 +1535,7 @@ class ImportListView(IshtarMixin, LoginRequiredMixin, ListView):
q2 = q2.filter(user=user)
q1 = q1.filter(group__isnull=True).order_by("-creation_date", "-pk")
q2 = q2.order_by("-creation_date", "-pk")
- return reversed(sorted(list(q1) + list(q2), key=lambda x: x.creation_date))
+ return list(reversed(sorted(list(q1) + list(q2), key=lambda x: x.creation_date)))
def post(self, request, *args, **kwargs):
for field in request.POST:
@@ -2029,6 +2029,39 @@ class ImportOldListView(ImportListView):
return q.filter(user=user).order_by("-creation_date")
+def import_get_status(request, current_right=None):
+ response = {"group": [], "import": []}
+ import_ids = request.POST.getlist("items[]", [])
+ for import_id in import_ids:
+ model = models.Import
+ key = "import"
+ if import_id.startswith("group-"):
+ model = models.ImportGroup
+ key = "group"
+ idx = import_id.split("-")[-1]
+ q = model.objects.filter(pk=idx)
+ if not q.count():
+ continue
+ item = q.all()[0]
+ item_dct = {
+ "id": item.id,
+ "full_id": ("group-" if key == "group" else "") + str(item.id),
+ "state": item.state,
+ "status": str(item.status),
+ }
+ if key == "import":
+ item_dct.update({
+ "current_line": item.current_line,
+ "number_of_line": item.number_of_line,
+ "progress_percent": item.progress_percent,
+ })
+ item_dct["actions"] = [(key, str(lbl)) for key, lbl in item.get_actions()]
+ response[key].append(item_dct)
+
+ data = json.dumps(response)
+ return HttpResponse(data, content_type="application/json")
+
+
class ImportLinkView(IshtarMixin, LoginRequiredMixin, ModelFormSetView):
template_name = "ishtar/formset_import_match.html"
model = models.TargetKey