summaryrefslogtreecommitdiff
path: root/ishtar/furnitures/forms_operations.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar/furnitures/forms_operations.py')
-rw-r--r--ishtar/furnitures/forms_operations.py53
1 files changed, 35 insertions, 18 deletions
diff --git a/ishtar/furnitures/forms_operations.py b/ishtar/furnitures/forms_operations.py
index c69c62e84..17fd8f69d 100644
--- a/ishtar/furnitures/forms_operations.py
+++ b/ishtar/furnitures/forms_operations.py
@@ -36,7 +36,8 @@ import models
import widgets
from forms import Wizard, FinalForm, FormSet, SearchWizard, ClosingWizard, \
DeletionWizard, formset_factory, get_now, reverse_lazy, clean_duplicated
-from forms_common import TownForm, TownFormSet, ParcelFormSet, ParcelForm
+from forms_common import TownForm, TownFormSet, ParcelFormSet, ParcelForm,\
+ get_town_field
def is_preventive(form_name, model, type_key='operation_type', key=''):
def func(self, request, storage):
@@ -187,16 +188,18 @@ class OperationWizard(Wizard):
return datas
class OperationSelect(forms.Form):
- towns = forms.IntegerField(label=_(u"Town"),
- widget=widgets.JQueryAutoComplete("/" + settings.URL_PATH + \
- 'autocomplete-town', associated_model=models.Town),
- validators=[models.valid_id(models.Town)])
+ towns = get_town_field()
operation_type = forms.ChoiceField(label=_("Operation type"),
- choices=models.OperationType.get_types())
+ choices=[])
remains = forms.ChoiceField(label=_("Remains"),
choices=models.RemainType.get_types())
year = forms.IntegerField(label=_("Year"))
+ def __init__(self, *args, **kwargs):
+ super(OperationSelect, self).__init__(*args, **kwargs)
+ self.fields['operation_type'].choices = models.OperationType.get_types()
+ self.fields['operation_type'].help_text = models.OperationType.get_help()
+
class OperationFormSelection(forms.Form):
form_label = _(u"Operation search")
associated_models = {'pk':models.Operation}
@@ -225,25 +228,30 @@ class OperationFormGeneral(forms.Form):
unicode(models.PersonType.objects.get(txt_idx='sra_agent').pk)])]),
associated_model=models.Person, new=True),
validators=[models.valid_id(models.Person)], required=False)
- associated_file = forms.IntegerField(label=_("Archaelogical file"),
+ associated_file = forms.IntegerField(label=_(u"Archaelogical file"),
widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-file'),
associated_model=models.File),
validators=[models.valid_id(models.File)], required=False)
- operation_type = forms.ChoiceField(label=_("Operation type"),
- choices=models.OperationType.get_types())
+ operation_type = forms.ChoiceField(label=_(u"Operation type"),
+ choices=[])
start_date = forms.DateField(label=_(u"Start date"), required=False,
widget=widgets.JQueryDate)
surface = forms.IntegerField(required=False, widget=widgets.AreaWidget,
label=_(u"Total surface"),
validators=[validators.MinValueValidator(0),
validators.MaxValueValidator(999999999)])
- year = forms.IntegerField(label=_("Year"),
+ year = forms.IntegerField(label=_(u"Year"),
initial=lambda:datetime.datetime.now().year,
validators=[validators.MinValueValidator(1900),
validators.MaxValueValidator(2100)])
comment = forms.CharField(label=_(u"Comment"), widget=forms.Textarea,
required=False)
+ def __init__(self, *args, **kwargs):
+ super(OperationFormGeneral, self).__init__(*args, **kwargs)
+ self.fields['operation_type'].choices = models.OperationType.get_types()
+ self.fields['operation_type'].help_text = models.OperationType.get_help()
+
class OperationFormReference(forms.Form):
form_label = _("References")
associated_models = {'in_charge':models.Person,
@@ -529,12 +537,15 @@ class OperationEditAdministrativeActWizard(OperationAdministrativeActWizard):
return self.get_current_object(request, storage).operation
class AdministrativeActOpeSelect(forms.Form):
- operation__towns = forms.IntegerField(label=_(u"Town"),
- widget=widgets.JQueryAutoComplete("/" + settings.URL_PATH + \
- 'autocomplete-town', associated_model=models.Town),
- validators=[models.valid_id(models.Town)])
- act_type = forms.ChoiceField(label=_("Act type"),
- choices=models.ActType.get_types(dct={'intented_to':'O'}))
+ operation__towns = get_town_field()
+ act_type = forms.ChoiceField(label=_("Act type"), choices=[])
+
+ def __init__(self, *args, **kwargs):
+ super(AdministrativeActOpeSelect, self).__init__(*args, **kwargs)
+ self.fields['act_type'].choices = models.ActType.get_types(
+ dct={'intented_to':'O'})
+ self.fields['act_type'].help_text = models.ActType.get_help(
+ dct={'intented_to':'O'})
class AdministrativeActOpeFormSelection(forms.Form):
form_label = _("Administrative act search")
@@ -557,8 +568,7 @@ class AdministrativeActOpeForm(forms.Form):
form_label = _("General")
associated_models = {'act_type':models.ActType,
'signatory':models.Person}
- act_type = forms.ChoiceField(label=_("Act type"),
- choices=models.ActType.get_types(dct={'intented_to':'O'}))
+ act_type = forms.ChoiceField(label=_("Act type"), choices=[])
signatory = forms.IntegerField(label=_("Signatory"),
widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-person'),
associated_model=models.Person, new=True),
@@ -570,6 +580,13 @@ class AdministrativeActOpeForm(forms.Form):
if settings.COUNTRY == 'fr':
ref_sra = forms.CharField(label=u"Référence SRA", max_length=15)
+ def __init__(self, *args, **kwargs):
+ super(AdministrativeActOpeForm, self).__init__(*args, **kwargs)
+ self.fields['act_type'].choices = models.ActType.get_types(
+ dct={'intented_to':'O'})
+ self.fields['act_type'].help_text = models.ActType.get_help(
+ dct={'intented_to':'O'})
+
class AdministrativeActDeletionWizard(ClosingWizard):
model = models.AdministrativeAct
fields = ['act_type', 'in_charge', 'operator', 'scientific', 'signatory',