diff options
author | Cefin <kevon@tuta.io> | 2022-02-11 13:22:04 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2022-12-12 12:21:00 +0100 |
commit | aa1a1960bb0ae2d83545aa8462c9467f54e7e48a (patch) | |
tree | 307cd55f5f62696ba3b0e333ad8e22d39b948df2 /archaeological_files/views.py | |
parent | 3f109fef94090b8c0bd9ec5e4a04a02d9752bd1b (diff) | |
download | Ishtar-aa1a1960bb0ae2d83545aa8462c9467f54e7e48a.tar.bz2 Ishtar-aa1a1960bb0ae2d83545aa8462c9467f54e7e48a.zip |
File - Parcels - Modify: add get method for modifying parcels #5227
Diffstat (limited to 'archaeological_files/views.py')
-rw-r--r-- | archaeological_files/views.py | 44 |
1 files changed, 42 insertions, 2 deletions
diff --git a/archaeological_files/views.py b/archaeological_files/views.py index 95aa0c9c1..58454092f 100644 --- a/archaeological_files/views.py +++ b/archaeological_files/views.py @@ -52,11 +52,11 @@ from archaeological_operations.wizards import OperationWizard from archaeological_operations.views import operation_creation_wizard from ishtar_common.forms_common import TownFormset -from archaeological_operations.forms import FinalAdministrativeActDeleteForm +from archaeological_operations.forms import FinalAdministrativeActDeleteForm, SelectedParcelGeneralFormSet from ishtar_common.forms import ClosingDateFormSelection from . import forms, models -from archaeological_operations.models import Operation, AdministrativeAct +from archaeological_operations.models import Operation, AdministrativeAct, Parcel RE_YEAR_INDEX = re.compile(r"([1-2][0-9]{3})-([0-9]+)") # eg.: 2014-123 @@ -343,6 +343,46 @@ def file_add_operation(request, pk, current_right=None): ) +PARCEL_FORMSET_EXTRA_FORM = 3 + +def file_modify_parcels(request, pk): + formset_class = SelectedParcelGeneralFormSet + file = models.File.objects.get(pk=pk) + parcels = Parcel.objects.filter(associated_file=pk).all() + available_towns = [] + + initial = [] + for parcel in parcels: + town = models.Town.objects.get(pk=parcel.town_id) + available_towns.append((town.pk, str(town))) + initial.append({ + "pk": parcel.pk, + "town": town.pk, + "year": parcel.year, + "section": parcel.section, + "parcel_number": parcel.parcel_number, + "public_domain": parcel.public_domain + }) + + data = { + 'TOWNS': available_towns, + 'form-TOTAL_FORMS': len(initial) + PARCEL_FORMSET_EXTRA_FORM, + 'form-INITIAL_FORMS': 0, + 'form-MIN_NUM_FORMS': 0, + 'form-MAX_NUM_FORMS': 100, + } + + if request.method == 'POST': + pass + else: + formset = formset_class(initial=initial, data=data) + + return render(request, 'ishtar/forms/modify_parcels.html', { + 'formset': formset, + "url": reverse("file-parcels-modify", args=[pk]), + }) + + def reset_wizards(request): for wizard_class, url_name in ( (FileWizard, "file_creation"), |