summaryrefslogtreecommitdiff
path: root/archaeological_operations/views.py
diff options
context:
space:
mode:
authorCefin <kevon@tuta.io>2022-01-26 16:41:24 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2022-12-12 12:20:59 +0100
commit26a24db67805c68ce7c738d4f2a9c6b145f6f836 (patch)
treed266bfc184bb1a1dd52c17c759dfaceac67360fe /archaeological_operations/views.py
parentf1f9d2f5de328dec8fbd51bd9fb3ab92c6f05df5 (diff)
downloadIshtar-26a24db67805c68ce7c738d4f2a9c6b145f6f836.tar.bz2
Ishtar-26a24db67805c68ce7c738d4f2a9c6b145f6f836.zip
Operation - Parcels - Modify: Temporary WIP on post #5227
Diffstat (limited to 'archaeological_operations/views.py')
-rw-r--r--archaeological_operations/views.py47
1 files changed, 35 insertions, 12 deletions
diff --git a/archaeological_operations/views.py b/archaeological_operations/views.py
index a40f8f9ef..5a3cf1112 100644
--- a/archaeological_operations/views.py
+++ b/archaeological_operations/views.py
@@ -419,25 +419,47 @@ def operation_modify_parcels(request, pk):
for town in operation.towns.all():
available_towns.append((town.id, town.name))
- if request.method == 'POST': #TODO
- print(request.POST)
- formset = formset_class(request.POST or None, request.FILES or None)
+ if request.method == 'POST':
+ formset = formset_class(request.POST, request.FILES)
+ print(formset.non_form_errors())
+
if formset.is_valid():
+ print(formset.non_form_errors())
print(formset.cleaned_data)
- post_data = request.POST.copy()
-
- for key in post_data.keys():
- if key.endswith("-DELETE"):
- post_data.pop(key)
+ post_data = [form.cleaned_data for form in formset]
+ for data in post_data:
+ for key, value in data.items():
+ print(str(key) + " -> " + str(value) + "\n")
+ if key == "DELETE" and value == True:
+ post_data.pop(key)
+
+ current_parcel = models.Parcel.objects.get(pk=post_data.get["pk"])
+ if current_parcel:
+ current_parcel.year = post_data.get["year"]
+ current_parcel.section = post_data.get["section"]
+ current_parcel.parcel_number = post_data.get["parcel_number"]
+ current_parcel.town = post_data.get["town"]
+ current_parcel.save()
+ else:
+ parcel_to_add = models.Parcel.objects.create(
+ year = post_data.get["year"],
+ section = post_data.get["section"],
+ parcel_number = post_data.get["parcel_number"],
+ town = post_data.get["town"]
+ )
+ operation.parcels.add(parcel_to_add)
- request.POST = post_data
- formset_class(request.POST).save()
+ # request.POST = post_data
+ # formset_class(request.POST).save()
else:
+ print(formset.non_form_errors())
+ print("je passe ici")
formset = formset_class()
else:
initial = []
- for parcel in parcels:
- town = models.Town.objects.get(pk=parcel.town_id)
+ if parcels:
+ for parcel in parcels:
+ town = models.Town.objects.get(pk=parcel.town_id)
initial.append({
"pk": parcel.pk,
"town": town.pk,
@@ -462,6 +484,7 @@ def operation_modify_parcels(request, pk):
return render(request, 'ishtar/forms/operation_modify_parcels.html', {
'formset': formset,
+ 'url': reverse("operation-parcels-modify", args=[pk])
})