diff options
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"), |