summaryrefslogtreecommitdiff
path: root/archaeological_files/views.py
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@iggdrasil.net>2022-11-15 16:29:30 +0100
committerÉtienne Loks <etienne.loks@iggdrasil.net>2022-12-12 12:23:19 +0100
commitcda77c979e232386ef24ea7a04600f16f3c32c98 (patch)
tree7d53e762723338913594ccdb42c6fa08c4bfb5ef /archaeological_files/views.py
parent4746cd2938df3cf87ae338d22eb4f67f35bac960 (diff)
downloadIshtar-cda77c979e232386ef24ea7a04600f16f3c32c98.tar.bz2
Ishtar-cda77c979e232386ef24ea7a04600f16f3c32c98.zip
File module refactoring - more tests for files
Diffstat (limited to 'archaeological_files/views.py')
-rw-r--r--archaeological_files/views.py137
1 files changed, 89 insertions, 48 deletions
diff --git a/archaeological_files/views.py b/archaeological_files/views.py
index cbe1a9f96..5988ba1c0 100644
--- a/archaeological_files/views.py
+++ b/archaeological_files/views.py
@@ -29,7 +29,8 @@ from django.urls import reverse
from ishtar_common.utils import ugettext_lazy as _
from archaeological_operations.utils import parse_parcels
-from ishtar_common.views import wizard_is_available
+from ishtar_common.views import wizard_is_available, OrganizationPersonCreate, \
+ OrganizationPersonEdit
from ishtar_common.views_item import get_item, show_item, revert_item, check_permission
from archaeological_operations.wizards import (
@@ -52,7 +53,6 @@ from ishtar_common.views import IshtarMixin, LoginRequiredMixin
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, \
SelectedParcelGeneralFormSet
from ishtar_common.forms import ClosingDateFormSelection
@@ -137,43 +137,69 @@ file_search_wizard = wizards.FileSearch.as_view(
url_name="file_search",
)
-file_creation_wizard = wizards.FileWizard.as_view(
- [
- ("general-file_creation", forms.FileFormGeneral),
- ("towns-file_creation", TownFormset),
- ("preventive-file_creation", forms.FileFormPreventive),
- ("research-file_creation", forms.FileFormResearch),
- ("final-file_creation", forms.FinalForm),
- ],
+file_creation_wizard_is_preventive = is_preventive(
+ "general-file_creation", models.FileType, type_key="file_type"
+)
+file_creation_wizard_is_not_preventive = is_not_preventive(
+ "general-file_creation", models.FileType, type_key="file_type"
+)
+
+file_creation_steps = [
+ ("general-file_creation", forms.FileFormGeneral),
+ ("preventivetype-file_creation", forms.FileFormPreventiveType),
+ ("preventiveplanning-file_creation", forms.FileFormPlanning),
+ ("researchaddress-file_creation", forms.FileFormResearchAddress),
+ ("generalcontractor-file_creation", forms.FileFormGeneralContractor),
+ ("planningservice-file_creation", forms.FileFormPlanningService),
+ ("research-file_creation", forms.FileFormResearch),
+ ("instruction-file_creation", forms.FileFormInstruction),
+ ("final-file_creation", forms.FinalForm),
+]
+
+file_creation_wizard = FileWizard.as_view(
+ file_creation_steps,
label=_("New file"),
condition_dict={
- "preventive-file_creation": is_preventive(
- "general-file_creation", models.FileType, type_key="file_type"
- ),
- "research-file_creation": is_not_preventive(
- "general-file_creation", models.FileType, type_key="file_type"
- ),
+ "preventivetype-file_creation": file_creation_wizard_is_preventive,
+ "preventiveplanning-file_creation": file_creation_wizard_is_preventive,
+ "generalcontractor-file_creation": file_creation_wizard_is_preventive,
+ "planningservice-file_creation": file_creation_wizard_is_preventive,
+ "researchaddress-file_creation": file_creation_wizard_is_not_preventive,
+ "research-file_creation": file_creation_wizard_is_not_preventive,
},
url_name="file_creation",
)
-file_modification_wizard = wizards.FileModificationWizard.as_view(
- [
- ("selec-file_modification", forms.FileFormSelection),
- ("general-file_modification", forms.FileFormGeneralRO),
- ("towns-file_modification", TownFormset),
- ("preventive-file_modification", forms.FileFormPreventive),
- ("research-file_modification", forms.FileFormResearch),
- ("final-file_modification", forms.FinalForm),
- ],
+file_modification_wizard_is_preventive = is_preventive(
+ "general-file_modification", models.FileType, type_key="file_type"
+)
+file_modification_wizard_is_not_preventive = is_not_preventive(
+ "general-file_modification", models.FileType, type_key="file_type"
+)
+
+file_modification_steps = [
+ ("selec-file_modification", forms.FileFormSelection),
+ ("general-file_modification", forms.FileFormGeneral),
+ ("preventivetype-file_modification", forms.FileFormPreventiveType),
+ ("preventiveplanning-file_modification", forms.FileFormPlanning),
+ ("researchaddress-file_modification", forms.FileFormResearchAddress),
+ ("generalcontractor-file_modification", forms.FileFormGeneralContractor),
+ ("planningservice-file_modification", forms.FileFormPlanningService),
+ ("research-file_modification", forms.FileFormResearch),
+ ("instruction-file_modification", forms.FileFormInstructionEdit),
+ ("final-file_modification", forms.FinalForm),
+]
+
+file_modification_wizard = FileModificationWizard.as_view(
+ file_modification_steps,
label=_("File modification"),
condition_dict={
- "preventive-file_modification": is_preventive(
- "general-file_modification", models.FileType, type_key="file_type"
- ),
- "research-file_modification": is_not_preventive(
- "general-file_modification", models.FileType, type_key="file_type"
- ),
+ "preventivetype-file_modification": file_modification_wizard_is_preventive,
+ "preventiveplanning-file_modification": file_modification_wizard_is_preventive,
+ "generalcontractor-file_modification": file_modification_wizard_is_preventive,
+ "planningservice-file_modification": file_modification_wizard_is_preventive,
+ "researchaddress-file_modification": file_modification_wizard_is_not_preventive,
+ "research-file_modification": file_modification_wizard_is_not_preventive,
},
url_name="file_modification",
)
@@ -191,21 +217,25 @@ def file_modify(request, pk):
)
+file_closing_steps = [
+ ("selec-file_closing", forms.FileFormSelection),
+ ("date-file_closing", ClosingDateFormSelection),
+ ("final-file_closing", forms.FinalFileClosingForm),
+]
+
file_closing_wizard = wizards.FileClosingWizard.as_view(
- [
- ("selec-file_closing", forms.FileFormSelection),
- ("date-file_closing", ClosingDateFormSelection),
- ("final-file_closing", forms.FinalFileClosingForm),
- ],
+ file_closing_steps,
label=_("File closing"),
url_name="file_closing",
)
+file_deletion_steps = [
+ ("selec-file_deletion", forms.FileFormMultiSelection),
+ ("final-file_deletion", forms.FinalFileDeleteForm),
+]
+
file_deletion_wizard = wizards.FileDeletionWizard.as_view(
- [
- ("selec-file_deletion", forms.FileFormMultiSelection),
- ("final-file_deletion", forms.FinalFileDeleteForm),
- ],
+ file_deletion_steps,
label=_("File deletion"),
url_name="file_deletion",
)
@@ -221,6 +251,14 @@ def file_delete(request, pk):
return redirect(reverse("file_deletion", kwargs={"step": "final-file_deletion"}))
+class TownPlanningEdit(OrganizationPersonEdit):
+ relative_label = _("File followed by")
+
+
+class TownPlanningCreate(OrganizationPersonCreate):
+ relative_label = _("File followed by")
+
+
file_administrativeactfile_search_wizard = SearchWizard.as_view(
[
(
@@ -232,15 +270,18 @@ file_administrativeactfile_search_wizard = SearchWizard.as_view(
url_name="file_administrativeactfile_search",
)
+
+administrativeact_steps = [
+ ("selec-file_administrativeactfile", forms.FileFormSelection),
+ (
+ "administrativeact-file_administrativeactfile",
+ forms.AdministrativeActFileForm,
+ ),
+ ("final-file_administrativeactfile", forms.FinalForm),
+]
+
file_administrativeactfile_wizard = wizards.FileAdministrativeActWizard.as_view(
- [
- ("selec-file_administrativeactfile", forms.FileFormSelection),
- (
- "administrativeact-file_administrativeactfile",
- forms.AdministrativeActFileForm,
- ),
- ("final-file_administrativeactfile", forms.FinalForm),
- ],
+ administrativeact_steps,
label=_("File: new administrative act"),
url_name="file_administrativeactfile",
)