From 235ae23c3af0cc4009c4518fbfb0c8f1ca5c2aba Mon Sep 17 00:00:00 2001 From: Ankush Menat Date: Mon, 25 Sep 2023 16:40:28 +0530 Subject: [PATCH] refactor: Use newline as separator instead of comma --- frappe/core/doctype/file/file.py | 2 +- frappe/core/doctype/file/test_file.py | 2 +- frappe/core/doctype/system_settings/system_settings.json | 4 ++-- frappe/core/doctype/system_settings/system_settings.py | 4 ++-- frappe/public/js/frappe/file_uploader/file_uploader.bundle.js | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/frappe/core/doctype/file/file.py b/frappe/core/doctype/file/file.py index e3d35dde19..8055cd4471 100755 --- a/frappe/core/doctype/file/file.py +++ b/frappe/core/doctype/file/file.py @@ -368,7 +368,7 @@ class File(Document): if not allowed_extensions: return - if self.file_type not in allowed_extensions.split(","): + if self.file_type not in allowed_extensions.splitlines(): frappe.throw( _("File type of {0} is not allowed").format(self.file_type), exc=FileTypeNotAllowed ) diff --git a/frappe/core/doctype/file/test_file.py b/frappe/core/doctype/file/test_file.py index 920d597891..42f349aef4 100644 --- a/frappe/core/doctype/file/test_file.py +++ b/frappe/core/doctype/file/test_file.py @@ -89,7 +89,7 @@ class TestFSRollbacks(FrappeTestCase): class TestExtensionValidations(FrappeTestCase): - @change_settings("System Settings", {"allowed_file_extensions": "JPG,CSV"}) + @change_settings("System Settings", {"allowed_file_extensions": "JPG\nCSV"}) def test_allowed_extension(self): set_request(method="POST", path="/") file_name = content = frappe.generate_hash() diff --git a/frappe/core/doctype/system_settings/system_settings.json b/frappe/core/doctype/system_settings/system_settings.json index 3472e645f9..76126fd4fa 100644 --- a/frappe/core/doctype/system_settings/system_settings.json +++ b/frappe/core/doctype/system_settings/system_settings.json @@ -593,7 +593,7 @@ "fieldtype": "Column Break" }, { - "description": "Provide a comma-separated list of allowed file extensions for file uploads. If unset, all file extensions are allowed. Example: CSV, JSON, JPEG, JPG, PNG", + "description": "Provide a list of allowed file extensions for file uploads. Each line should contain one allowed file type. If unset, all file extensions are allowed. Example:
CSV
JPG
PNG", "fieldname": "allowed_file_extensions", "fieldtype": "Small Text", "label": "Allowed File Extensions" @@ -602,7 +602,7 @@ "icon": "fa fa-cog", "issingle": 1, "links": [], - "modified": "2023-09-25 15:17:58.964082", + "modified": "2023-09-25 16:49:16.652874", "modified_by": "Administrator", "module": "Core", "name": "System Settings", diff --git a/frappe/core/doctype/system_settings/system_settings.py b/frappe/core/doctype/system_settings/system_settings.py index f634f1922c..9a34ccd5b6 100644 --- a/frappe/core/doctype/system_settings/system_settings.py +++ b/frappe/core/doctype/system_settings/system_settings.py @@ -156,8 +156,8 @@ class SystemSettings(Document): if not self.allowed_file_extensions: return - self.allowed_file_extensions = ",".join( - ext.strip().upper() for ext in self.allowed_file_extensions.split(",") + self.allowed_file_extensions = "\n".join( + ext.strip().upper() for ext in self.allowed_file_extensions.strip().splitlines() ) def on_update(self): diff --git a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js index c4d35ec6e0..0e63eef469 100644 --- a/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js +++ b/frappe/public/js/frappe/file_uploader/file_uploader.bundle.js @@ -35,7 +35,7 @@ class FileUploader { let allowed_extensions = frappe.sys_defaults?.allowed_file_extensions; if (allowed_extensions) { restrictions.allowed_file_types = allowed_extensions - .split(",") + .split("\n") .map((ext) => `.${ext}`); } }