diff --git a/scipost_django/finances/forms.py b/scipost_django/finances/forms.py index b74540c8776753602a97a6e59542cdc68e91b0bf..c642baf033229dd13bfb4088c14293fa5eb7b877 100644 --- a/scipost_django/finances/forms.py +++ b/scipost_django/finances/forms.py @@ -33,16 +33,25 @@ class SubsidyForm(forms.ModelForm): organization = forms.ModelChoiceField( queryset=Organization.objects.all(), widget=autocomplete.ModelSelect2( - url="/organizations/organization-autocomplete", attrs={"data-html": True} + url="/organizations/organization-autocomplete", + attrs={ + "data-html": True, + "style": "width: 100%", + }, ), ) - renewal_of = forms.ModelChoiceField( + renewal_of = forms.ModelMultipleChoiceField( queryset=Subsidy.objects.all(), - widget=autocomplete.ModelSelect2( - url=reverse_lazy("finances:subsidy_autocomplete") + widget=autocomplete.ModelSelect2Multiple( + url=reverse_lazy("finances:subsidy_autocomplete"), + attrs={ + "data-html": True, + "style": "width: 100%", + }, ), help_text=("Start typing, and select from the popup."), + required=False, ) class Meta: diff --git a/scipost_django/finances/views.py b/scipost_django/finances/views.py index 79e7c7c94792f45edc3596020f3a305c832450f8..1846ef69748726b00d26d8927f26fff0809a02c2 100644 --- a/scipost_django/finances/views.py +++ b/scipost_django/finances/views.py @@ -8,6 +8,7 @@ import mimetypes from dal import autocomplete from django.db.models import Q +from django.utils.html import format_html import matplotlib matplotlib.use("Agg") @@ -314,6 +315,15 @@ class SubsidyAutocompleteView(autocomplete.Select2QuerySetView): | Q(date_until__year__icontains=self.q) ) return qs + + def get_result_label(self, item): + return format_html( + "{}<br>{} -> {} [{}]", + item.organization.name, + item.date_from, + item.date_until, + item.get_status_display(), + ) class SubsidyListView(ListView):