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):