Separate settings for when there's a custom data format in the uploaded file
authorKarl O. Pinc <kop@karlpinc.com>
Sun, 4 Aug 2024 16:43:40 +0000 (11:43 -0500)
committerKarl O. Pinc <kop@karlpinc.com>
Mon, 5 Aug 2024 02:22:56 +0000 (21:22 -0500)
src/pgwui_upload_core/check_settings.py

index 60c5118322f844f90cd8ba43ef935255d116ab36..a5743e81e8dbf20f3469495c0f72c18b6647acba 100644 (file)
@@ -23,17 +23,28 @@ from pgwui_common import checkset
 from pgwui_upload_core import exceptions as upload_core_ex
 
 
-UPLOAD_SETTINGS = ['menu_label',
-                   'literal_column_headings',
-                   'trim',
-                   'null',
-                   'file_format'
-                   ]
-REQUIRED_SETTINGS = []
-BOOLEAN_SETTINGS = []
-BOOLEAN_CHOICE_SETTINGS = ['literal_column_headings',
-                           'trim',
-                           'null']
+# Upload settings that are universal, and work with custom uploaded
+# file formats not involving column headings.
+CORE_UPLOAD_SETTINGS = ['menu_label',
+                        'file_format'
+                        ]
+CORE_REQUIRED_SETTINGS = []
+CORE_BOOLEAN_SETTINGS = []
+CORE_BOOLEAN_CHOICE_SETTINGS = []
+
+# Upload settings that apply when uploading file content that
+# requires a custom data format and custom code to interpret it. (upcen)
+UPLOAD_SETTINGS = CORE_UPLOAD_SETTINGS.copy()
+UPLOAD_SETTINGS.append('trim')
+UPLOAD_SETTINGS.append('null')
+UPLOAD_SETTINGS.append('literal_column_headings')
+
+REQUIRED_SETTINGS = CORE_REQUIRED_SETTINGS
+BOOLEAN_SETTINGS = CORE_BOOLEAN_SETTINGS
+
+BOOLEAN_CHOICE_SETTINGS = ['trim',
+                           'null',
+                           'literal_column_headings']
 
 
 def validate_file_format(component, errors, settings):