diff options
Diffstat (limited to 'archaeological_finds/forms.py')
| -rw-r--r-- | archaeological_finds/forms.py | 69 | 
1 files changed, 44 insertions, 25 deletions
diff --git a/archaeological_finds/forms.py b/archaeological_finds/forms.py index 884bbe9a1..497061e3a 100644 --- a/archaeological_finds/forms.py +++ b/archaeological_finds/forms.py @@ -79,6 +79,7 @@ __all__ = [      'TreatmentFileSourceFormSelection', 'DashboardTreatmentForm',      'DashboardTreatmentFileForm',      'RecordFormSelection', 'FindForm', 'DateForm', 'DatingFormSet', +    'PreservationForm',      'FindSelect', 'FindFormSelection', 'FindFormSelectionWarehouseModule',      'MultipleFindFormSelection', 'MultipleFindFormSelectionWarehouseModule',      'FindMultipleFormSelection', 'check_form', 'check_exist', 'check_not_exist', @@ -127,12 +128,9 @@ class FindForm(ManageOldType, forms.Form):      file_upload = True      form_label = _("Find")      base_models = ['get_first_base_find', 'object_type', 'material_type', -                   'preservation_to_consider', 'integritie', -                   'remarkabilitie'] +                   'integritie', 'remarkabilitie']      associated_models = {'material_type': models.MaterialType, -                         'conservatory_state': models.ConservatoryState,                           'object_type': models.ObjectType, -                         'preservation_to_consider': models.PreservationType,                           'integritie': models.IntegrityType,                           'get_first_base_find__batch': models.BatchType,                           'remarkabilitie': models.RemarkabilityType, @@ -154,17 +152,9 @@ class FindForm(ManageOldType, forms.Form):      material_type = widgets.Select2MultipleField(          label=_(u"Material type"), required=False      ) -    conservatory_state = forms.ChoiceField(label=_(u"Conservatory state"), -                                           choices=[], required=False) -    conservatory_comment = forms.CharField( -        label=_(u"Conservatory comment"), required=False, -        widget=forms.Textarea)      object_type = widgets.Select2MultipleField(          label=_(u"Object types"), required=False,      ) -    preservation_to_consider = forms.MultipleChoiceField( -        label=_(u"Preservation type"), choices=[], -        widget=widgets.Select2Multiple, required=False)      integritie = forms.MultipleChoiceField(          label=_(u"Integrity / interest"), choices=[],          widget=widgets.Select2Multiple, required=False) @@ -251,19 +241,6 @@ class FindForm(ManageOldType, forms.Form):                  initial=self.init_data.get('get_first_base_find__batch'))          self.fields['get_first_base_find__batch'].help_text = \              models.BatchType.get_help() - -        self.fields['conservatory_state'].choices = \ -            models.ConservatoryState.get_types( -                initial=self.init_data.get('conservatory_state')) -        self.fields['conservatory_state'].help_text = \ -            models.ConservatoryState.get_help() - -        self.fields['preservation_to_consider'].choices = \ -            models.PreservationType.get_types( -                empty_first=False, -                initial=self.init_data.get('preservation_to_consider')) -        self.fields['preservation_to_consider'].help_text = \ -            models.PreservationType.get_help()          self.fields['integritie'].choices = \              models.IntegrityType.get_types(                  empty_first=False, @@ -308,6 +285,48 @@ class FindForm(ManageOldType, forms.Form):          return self.cleaned_data +class PreservationForm(ManageOldType, forms.Form): +    form_label = _("Preservation") +    base_models = ['alteration', 'alteration_cause', +                   'preservation_to_consider'] +    associated_models = {'alteration': models.AlterationType, +                         'alteration_cause': models.AlterationCauseType, +                         'treatment_emergency': models.TreatmentEmergencyType, +                         'conservatory_state': models.ConservatoryState, +                         'preservation_to_consider': models.PreservationType, +                         } +    conservatory_state = forms.ChoiceField(label=_(u"Conservatory state"), +                                           choices=[], required=False) +    alteration = forms.MultipleChoiceField( +        label=_(u"Alteration"), choices=[], +        widget=widgets.Select2Multiple, required=False) +    alteration_cause = forms.MultipleChoiceField( +        label=_(u"Alteration cause"), choices=[], +        widget=widgets.Select2Multiple, required=False) +    preservation_to_consider = forms.MultipleChoiceField( +        label=_(u"Preservation type"), choices=[], +        widget=widgets.Select2Multiple, required=False) +    insurance_value = FloatField(label=_(u"Insurance value"), required=False) +    appraisal_date = forms.DateField( +        label=_(u"Appraisal date"), widget=widgets.JQueryDate, required=False) +    conservatory_comment = forms.CharField( +        label=_(u"Conservatory comment"), required=False, +        widget=forms.Textarea) + +    TYPES = [ +        ('conservatory_state', models.ConservatoryState, False), +        ('preservation_to_consider', models.PreservationType, True), +        ('alteration', models.AlterationType, True), +        ('alteration_cause', models.AlterationCauseType, True), +    ] + +    def __init__(self, *args, **kwargs): +        super(PreservationForm, self).__init__(*args, **kwargs) +        self.fields['insurance_value'].label = u"{} ({})".format( +            unicode(self.fields['insurance_value'].label), +            get_current_profile().currency) + +  class DateForm(ManageOldType, forms.Form):      form_label = _("Dating")      base_model = 'dating'  | 
