from django import forms from .models import Ausschreibung class AusschreibungForm(forms.ModelForm): class Meta: model = Ausschreibung fields = [ 'titel', 'ausschreiber', 'vergabeplattform', 'vergabenummer', 'vergabeart', 'rechtsgrundlage', 'rechtsgrundlage_details', 'fundstelle_url', 'bid_manager', 'leistungsbeschreibung', 'branche', 'schlagwoerter', 'geschaetztes_volumen', 'veroeffentlichungsdatum', 'bieterfragen_bis', 'abgabe_bis', 'bindefrist', 'bindefrist_tage', 'unterlagen_erhalten', 'unterlagen_erhalten_am', 'teilnahmeentscheidung', 'entscheidungsbegruendung', ] widgets = { 'titel': forms.TextInput(attrs={'class': 'form-input', 'autofocus': True}), 'ausschreiber': forms.TextInput(attrs={'class': 'form-input'}), 'vergabeplattform': forms.TextInput(attrs={'class': 'form-input'}), 'vergabenummer': forms.TextInput(attrs={'class': 'form-input'}), 'vergabeart': forms.Select(attrs={'class': 'form-input'}), 'rechtsgrundlage': forms.Select(attrs={'class': 'form-input'}), 'rechtsgrundlage_details': forms.Textarea(attrs={'class': 'form-input', 'rows': 2, 'placeholder': 'z.B. Verfahrensart, Schwellenwert, Besonderheiten…'}), 'fundstelle_url': forms.URLInput(attrs={'class': 'form-input'}), 'bid_manager': forms.Select(attrs={'class': 'form-input'}), 'leistungsbeschreibung': forms.Textarea(attrs={'class': 'form-input', 'rows': 4}), 'branche': forms.TextInput(attrs={'class': 'form-input'}), 'schlagwoerter': forms.TextInput(attrs={'class': 'form-input'}), 'geschaetztes_volumen': forms.NumberInput(attrs={'class': 'form-input'}), 'veroeffentlichungsdatum': forms.DateInput(attrs={'class': 'form-input', 'type': 'date'}, format='%Y-%m-%d'), 'bieterfragen_bis': forms.DateInput(attrs={'class': 'form-input', 'type': 'date'}, format='%Y-%m-%d'), 'abgabe_bis': forms.DateTimeInput(attrs={'class': 'form-input', 'type': 'datetime-local'}, format='%Y-%m-%dT%H:%M'), 'bindefrist': forms.DateInput(attrs={'class': 'form-input', 'type': 'date'}, format='%Y-%m-%d'), 'bindefrist_tage': forms.NumberInput(attrs={'class': 'form-input', 'min': '1', 'placeholder': 'Tage'}), 'unterlagen_erhalten_am': forms.DateInput(attrs={'class': 'form-input', 'type': 'date'}, format='%Y-%m-%d'), 'teilnahmeentscheidung': forms.Select(attrs={'class': 'form-input'}), 'entscheidungsbegruendung': forms.Textarea(attrs={'class': 'form-input', 'rows': 3}), } def __init__(self, *args, **kwargs): super().__init__(*args, **kwargs) self.fields['teilnahmeentscheidung'].required = False