add image extensions

This commit is contained in:
2025-02-07 13:34:29 +01:00
parent 23544cbaff
commit 6bbb92e9a9
3 changed files with 11 additions and 4 deletions

View File

@@ -103,7 +103,7 @@ class BillCreateForm(forms.ModelForm):
"affiliation": "Abrechnungsbudget", "affiliation": "Abrechnungsbudget",
"payer": "Ursprüngliche Bezahlmethode", "payer": "Ursprüngliche Bezahlmethode",
"only_digital": "Ich habe nur eine digitale Rechnung.", "only_digital": "Ich habe nur eine digitale Rechnung.",
"file_field": "Rechnung hochladen (PDF)", "file_field": "Rechnung hochladen (PDF- und Bildformate erlaubt)",
"comment": "Kommentar", "comment": "Kommentar",
} }
@@ -194,7 +194,7 @@ class BillUpdateForm(forms.ModelForm):
"affiliation": "Abrechnungsbudget", "affiliation": "Abrechnungsbudget",
"payer": "Wie wurde die Rechnung bezahlt?", "payer": "Wie wurde die Rechnung bezahlt?",
"only_digital": "Ich habe nur eine digitale Rechnung.", "only_digital": "Ich habe nur eine digitale Rechnung.",
"file_field": "Neue Rechnung hochladen (PDF)", "file_field": "Neue Rechnung hochladen (PDF- und Bildformate erlaubt)",
"comment": "Kommentar", "comment": "Kommentar",
} }
@@ -556,7 +556,7 @@ class BillAdminForm(forms.ModelForm):
"amount": "Betrag (EUR)", "amount": "Betrag (EUR)",
"comment": "Kommentar", "comment": "Kommentar",
"date": "Rechnungsdatum", "date": "Rechnungsdatum",
"file_field": "Rechnung hochladen (PDF)", "file_field": "Rechnung hochladen (PDF- und Bildformate erlaubt)",
"invoice": "Rechnungsaussteller", "invoice": "Rechnungsaussteller",
"only_digital": "Ich habe nur eine digitale Rechnung.", "only_digital": "Ich habe nur eine digitale Rechnung.",
"payer": "Wie wurde die Rechnung bezahlt?", "payer": "Wie wurde die Rechnung bezahlt?",

View File

@@ -6,6 +6,8 @@ from django.urls import reverse
from members.models import Member from members.models import Member
from .validators import validate_bill_file_extension
class BankData(models.Model): class BankData(models.Model):
# members can be deleted but never their bank datas # members can be deleted but never their bank datas
@@ -246,7 +248,7 @@ class Bill(models.Model):
file_field = models.FileField( file_field = models.FileField(
upload_to="uploads/finance/bills/", upload_to="uploads/finance/bills/",
validators=[FileExtensionValidator(["pdf"])], validators=[validate_bill_file_extension],
blank=True, blank=True,
null=True, null=True,
) )

View File

@@ -0,0 +1,5 @@
from django.core.validators import FileExtensionValidator, get_available_image_extensions
def validate_bill_file_extension(value):
return FileExtensionValidator([*["pdf"], *get_available_image_extensions()])(value)