diff options
Diffstat (limited to 'archaeological_operations/forms.py')
-rw-r--r-- | archaeological_operations/forms.py | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/archaeological_operations/forms.py b/archaeological_operations/forms.py index 082b63593..4942d9f05 100644 --- a/archaeological_operations/forms.py +++ b/archaeological_operations/forms.py @@ -1317,8 +1317,9 @@ class SiteForm(CustomForm, ManageOldType): form_label = _(u"General") form_admin_name = _(u"Archaeological site - 010 - General") form_slug = u"archaeological_site-010-general" - associated_models = {'period': models.Period, 'remain': models.RemainType} - base_models = ["period", "remain"] + associated_models = {'period': models.Period, 'remain': models.RemainType, + 'collaborator': Person} + base_models = ["period", "remain", "collaborator"] pk = forms.IntegerField(required=False, widget=forms.HiddenInput) reference = forms.CharField(label=_(u"Reference"), max_length=200) @@ -1337,6 +1338,8 @@ class SiteForm(CustomForm, ManageOldType): label=_(u"Cadastral locality"), widget=forms.Textarea, required=False ) + collaborator = widgets.Select2MultipleField( + model=Person, label=_("Collaborators"), required=False, remote=True) comment = forms.CharField(label=_(u"Comment"), widget=forms.Textarea, required=False) TYPES = [ @@ -1344,6 +1347,11 @@ class SiteForm(CustomForm, ManageOldType): FieldType('remain', models.RemainType, True), ] + def __init__(self, *args, **kwargs): + super(SiteForm, self).__init__(*args, **kwargs) + if 'collaborator' in self.fields: + self.fields['collaborator'].widget.attrs['full-width'] = True + def clean_reference(self): reference = self.cleaned_data['reference'] q = models.ArchaeologicalSite.objects.filter(reference=reference) |