diff --git a/src/pretix/control/forms/__init__.py b/src/pretix/control/forms/__init__.py index c0105db33..f406774ec 100644 --- a/src/pretix/control/forms/__init__.py +++ b/src/pretix/control/forms/__init__.py @@ -123,8 +123,6 @@ class ClearableBasenameFileInput(forms.ClearableFileInput): @property def name(self): - if hasattr(self.file, 'display_name'): - return self.file.display_name return self.file.name @property diff --git a/src/pretix/helpers/hierarkey.py b/src/pretix/helpers/hierarkey.py index 3931680a7..691ce2260 100644 --- a/src/pretix/helpers/hierarkey.py +++ b/src/pretix/helpers/hierarkey.py @@ -32,9 +32,14 @@ def clean_filename(fname): "Terms.pdf" → "Terms.pdf.OybgvyAH.22c0583727d5bc.pdf" - This function reverses this operation: + This function reverses this operation (leaving names without doubled extension as-is): "Terms.pdf.OybgvyAH.22c0583727d5bc.pdf" → "Terms.pdf" + "Terms.pdf" → "Terms.pdf" """ ext = '.' + fname.split('.')[-1] - return fname.rsplit(ext + ".", 1)[0] + ext + parts = fname.rsplit(ext + ".", 1) + if len(parts) == 1: + return parts[0] + else: + return parts[0] + ext