diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2020-11-16 17:29:51 +0100 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2021-02-28 12:15:21 +0100 |
commit | a255ff5f509225c3258aa9546d9cbd4ce0c0fa0b (patch) | |
tree | e300d416fc3c1e8467e8f394043a25a23b51523a /ishtar_common | |
parent | 0f530f4437dd7e6d16526b1a0233d4b5dce86feb (diff) | |
download | Ishtar-a255ff5f509225c3258aa9546d9cbd4ce0c0fa0b.tar.bz2 Ishtar-a255ff5f509225c3258aa9546d9cbd4ce0c0fa0b.zip |
Documents form: related items on top of form
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/forms_common.py | 11 | ||||
-rw-r--r-- | ishtar_common/widgets.py | 2 |
2 files changed, 10 insertions, 3 deletions
diff --git a/ishtar_common/forms_common.py b/ishtar_common/forms_common.py index 19348ebff..8169fb64f 100644 --- a/ishtar_common/forms_common.py +++ b/ishtar_common/forms_common.py @@ -17,6 +17,7 @@ # See the file COPYING for details. +from collections import OrderedDict import datetime import os import pyqrcode @@ -1425,11 +1426,12 @@ class DocumentForm(forms.ModelForm, CustomForm, ManageOldType): if kwargs.get("user", None): self.user = kwargs.pop("user") super(DocumentForm, self).__init__(*args, **kwargs) + fields = OrderedDict() for related_key in models.Document.RELATED_MODELS_ALT: model = models.Document._meta.get_field(related_key).related_model - self.fields[related_key] = widgets.Select2MultipleField( + fields[related_key] = widgets.Select2MultipleField( model=model, remote=True, label=model._meta.verbose_name_plural, - required=False, long_widget=True + required=False, style="width: 100%" ) if related_key in main_items_fields: for field_key, label in main_items_fields[related_key]: @@ -1437,8 +1439,11 @@ class DocumentForm(forms.ModelForm, CustomForm, ManageOldType): if kwargs.get('initial', None) and kwargs['initial'].get( field_key, False): disabled = True - self.fields[field_key] = forms.BooleanField( + fields[field_key] = forms.BooleanField( label=label, required=False, disabled=disabled) + for k in self.fields: + fields[k] = self.fields[k] + self.fields = fields def clean(self): cleaned_data = self.cleaned_data diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index 7d954f378..0136d7257 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -340,6 +340,8 @@ class Select2BaseField(object): widget = Select2Multiple else: widget = Select2Simple + if kwargs.get("style", None): + attrs["style"] = kwargs.pop("style") kwargs['widget'] = widget( model=self.model, available=self.available, remote=self.remote, new=new, attrs=attrs |