summaryrefslogtreecommitdiff
path: root/archaeological_files_pdl/forms.py
diff options
context:
space:
mode:
Diffstat (limited to 'archaeological_files_pdl/forms.py')
-rw-r--r--archaeological_files_pdl/forms.py43
1 files changed, 31 insertions, 12 deletions
diff --git a/archaeological_files_pdl/forms.py b/archaeological_files_pdl/forms.py
index 393f53b8c..a0c5037e7 100644
--- a/archaeological_files_pdl/forms.py
+++ b/archaeological_files_pdl/forms.py
@@ -230,25 +230,44 @@ class FileFormGeneralContractor(PersonOrgaForm):
label=" ", widget=forms.HiddenInput, required=False)
-class FileFormPlanningService(PersonOrgaForm):
+class FileFormPlanningService(forms.Form):
form_label = _(u"Town planning service")
associated_models = {'responsible_town_planning_service': models.Person,
'planning_service': models.Organization}
reference_number = forms.IntegerField(label=_(u"File reference"),
required=False)
- PERSON_FIELD = 'responsible_town_planning_service'
- PERSON_TYPE = RESPONSIBLE_PLANNING_SERVICE
- PERSON_LABEL = _(u"Responsible town planning service")
- ORGA_FIELD = 'planning_service'
- ORGA_TYPE = RESPONSIBLE_PLANNING_SERVICE_ORGA
- ORGA_LABEL = _(u"Planning service")
-
- # default initialisation before dynamic
+ planning_service = forms.IntegerField(
+ label=_("Planning service"),
+ required=False,
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy('autocomplete-organization',
+ args=[RESPONSIBLE_PLANNING_SERVICE_ORGA.pk]),
+ limit={
+ 'organization_type': [RESPONSIBLE_PLANNING_SERVICE_ORGA.pk]
+ },
+ associated_model=models.Organization,
+ new=True),
+ validators=[valid_id(models.Organization)]
+ )
responsible_town_planning_service = forms.IntegerField(
- label=" ", widget=forms.HiddenInput, required=False)
- planning_service = forms.IntegerField(label=" ", widget=forms.HiddenInput,
- required=False)
+ label=_(u"In charge"),
+ required=False,
+ widget=widgets.JQueryAutoComplete(
+ reverse_lazy('autocomplete-person',
+ args=[RESPONSIBLE_PLANNING_SERVICE.pk]),
+ associated_model=Person,
+ limit={'person_types': [RESPONSIBLE_PLANNING_SERVICE.pk]},
+ dynamic_limit=['planning_service'],
+ url_new='new-person-noorga',
+ new=True),
+ validators=[valid_id(Person)]
+ )
+
+ def is_valid(self, *args, **kwargs):
+ c = super(FileFormPlanningService, self).is_valid(*args, **kwargs)
+ print(self.cleaned_data)
+ return c
class FileFormInstruction(forms.Form):