diff options
Diffstat (limited to 'archaeological_warehouse/forms.py')
| -rw-r--r-- | archaeological_warehouse/forms.py | 23 | 
1 files changed, 23 insertions, 0 deletions
| diff --git a/archaeological_warehouse/forms.py b/archaeological_warehouse/forms.py index f73dac22e..2e243b092 100644 --- a/archaeological_warehouse/forms.py +++ b/archaeological_warehouse/forms.py @@ -19,6 +19,7 @@  from django import forms  from django.conf import settings +from django.forms.formsets import formset_factory  from django.utils.translation import ugettext_lazy as _  from ishtar_common.models import Person, valid_id @@ -39,6 +40,28 @@ def get_warehouse_field(label=_(u"Warehouse"), required=True):                                validators=[valid_id(models.Warehouse)]) +class SelectedDivisionForm(ManageOldType, forms.Form): +    form_label = _(u"Division") +    base_model = 'associated_division' +    associated_models = {'division': models.WarehouseDivision, +                         'associated_division': models.WarehouseDivisionLink} +    division = forms.ChoiceField( +        label=_(u"Division"), choices=(), required=False, +        validators=[valid_id(models.WarehouseDivision)]) +    order = forms.IntegerField(_(u"Order"), initial=10, required=False) + +    def __init__(self, *args, **kwargs): +        super(SelectedDivisionForm, self).__init__(*args, **kwargs) +        self.fields['division'].choices = \ +            models.WarehouseDivision.get_types( +            initial=self.init_data.get('division') +        ) + +SelectedDivisionFormset = formset_factory( +    SelectedDivisionForm, can_delete=True) +SelectedDivisionFormset.form_label = _(u"Divisions") + +  class WarehouseSelect(TableSelect):      name = forms.CharField(label=_(u"Name"))      warehouse_type = forms.ChoiceField(label=_(u"Warehouse type"), choices=[]) | 
