diff options
| author | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-03-12 23:52:43 +0100 | 
|---|---|---|
| committer | Étienne Loks <etienne.loks@peacefrogs.net> | 2011-03-12 23:52:43 +0100 | 
| commit | 1d066865281aa66a4aa4f90f6901bbede6e1cd84 (patch) | |
| tree | 9794f6b88282af088220a01780aa574a600fec9f /ishtar/furnitures/forms.py | |
| parent | b13f663a603c867e14673b47f784e3701e114f4b (diff) | |
| download | Ishtar-1d066865281aa66a4aa4f90f6901bbede6e1cd84.tar.bz2 Ishtar-1d066865281aa66a4aa4f90f6901bbede6e1cd84.zip | |
Correct list of parcels (closes #269)
Diffstat (limited to 'ishtar/furnitures/forms.py')
| -rw-r--r-- | ishtar/furnitures/forms.py | 52 | 
1 files changed, 38 insertions, 14 deletions
| diff --git a/ishtar/furnitures/forms.py b/ishtar/furnitures/forms.py index 821ef1bb9..ba3ba826b 100644 --- a/ishtar/furnitures/forms.py +++ b/ishtar/furnitures/forms.py @@ -733,7 +733,7 @@ class FileSelect(forms.Form):      year = forms.IntegerField(label=_("Year"))  class FileFormSelection(forms.Form): -    form_label = _("Archaelogical file") +    form_label = _("Archaeological file")      associated_models = {'pk':models.File}      currents = {'pk':models.File}      pk = forms.IntegerField(label="", required=False, @@ -747,17 +747,6 @@ class FileFormSelection(forms.Form):              raise forms.ValidationError(_(u"You should select a file."))          return cleaned_data -""" -class FileFormSelection(forms.Form): -    form_label = _("Archaelogical file") -    associated_models = {'pk':models.File} -    currents = {'pk':models.File} -    pk = forms.IntegerField(label=_("References/location"), -         widget=widgets.JQueryAutoComplete(reverse_lazy('autocomplete-file'), -                                           associated_model=models.File), -         validators=[models.valid_id(models.File)]) -""" -  class FileFormGeneral(forms.Form):      form_label = _("General")      associated_models = {'in_charge':models.Person, @@ -1671,11 +1660,36 @@ class RecordWizard(Wizard):                  obj.datings.add(dating)          return res +class RecordSelect(forms.Form): +    parcel__town = forms.IntegerField(label=_(u"Town"), +         widget=widgets.JQueryAutoComplete("/" + settings.URL_PATH + \ +                     'autocomplete-town', associated_model=models.Town), +         validators=[models.valid_id(models.Town)]) +    parcel__operation__operation_type = forms.ChoiceField( +            label=_("Operation type"), choices=models.OperationType.get_types()) +    parcel__year = forms.IntegerField(label=_("Year")) + +class RecordFormSelection(forms.Form): +    form_label = _("Context record") +    associated_models = {'pk':models.ContextRecord} +    currents = {'pk':models.ContextRecord} +    pk = forms.IntegerField(label="", required=False, +       widget=widgets.JQueryJqGrid(reverse_lazy('get-contextrecord'), +                                 RecordSelect(), models.ContextRecord), +       validators=[models.valid_id(models.ContextRecord)]) + +    def clean(self): +        cleaned_data = self.cleaned_data +        if 'pk' not in cleaned_data or not cleaned_data['pk']: +            raise forms.ValidationError(_(u"You should select a context " +                                          u"record.")) +        return cleaned_data +  class RecordFormGeneral(forms.Form):      form_label = _("General")      associated_models = {'parcel':models.Parcel,} -    parcel = forms.ChoiceField(label=_("Parcel"), choices=[('', '--')]) +    parcel = forms.ChoiceField(label=_("Parcel"), choices=[])      label = forms.CharField(label=_(u"Label"),                              validators=[validators.MaxLengthValidator(200)])      description = forms.CharField(label=_(u"Description"), @@ -1700,7 +1714,8 @@ class RecordFormGeneral(forms.Form):                  if 'files' in kwargs:                      kwargs.pop('files')          super(RecordFormGeneral, self).__init__(*args, **kwargs) -        if operation and len(self.fields['parcel'].choices) == 1: +        self.fields['parcel'].choices = [('', '--')] +        if operation:              parcels = operation.parcels.all()              sort = lambda x: (x.town.name, x.section)              parcels = sorted(parcels, key=sort) @@ -1762,3 +1777,12 @@ record_creation_wizard = RecordWizard([      ('final-record_creation', FinalForm)],       url_name='record_creation',) +record_modification_wizard = RecordWizard([ +    ('selec-record_modification', RecordFormSelection), +    ('general-record_modification', RecordFormGeneral), +    ('datings-record_modification', DatingFormSet), +    ('units-record_modification', UnitFormSet), +    ('interpretation-record_modification', RecordFormInterpretation), +    ('final-record_modification', FinalForm)], +     url_name='record_modification',) + | 
