From f1f49440542103a36967ad835b4d4c08290e9adf Mon Sep 17 00:00:00 2001 From: Nyoman Ribeka Date: Mon, 21 Oct 2019 13:31:47 -0400 Subject: [PATCH 1/2] Passing filename as the default form id parameter. --- .../tests/test_expected_output/survey_no_name.xml | 4 ++-- pyxform/xls2json.py | 13 ++++++++++--- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/pyxform/tests/test_expected_output/survey_no_name.xml b/pyxform/tests/test_expected_output/survey_no_name.xml index b37d087e6..6e4ae6665 100644 --- a/pyxform/tests/test_expected_output/survey_no_name.xml +++ b/pyxform/tests/test_expected_output/survey_no_name.xml @@ -1,10 +1,10 @@ - data + survey_no_name - + diff --git a/pyxform/xls2json.py b/pyxform/xls2json.py index a9ed3907e..3ba314249 100644 --- a/pyxform/xls2json.py +++ b/pyxform/xls2json.py @@ -299,7 +299,11 @@ def process_range_question_type(row): def workbook_to_json( - workbook_dict, form_name=None, default_language="default", warnings=None + workbook_dict, + form_name=None, + form_id=None, + default_language="default", + warnings=None, ): """ workbook_dict -- nested dictionaries representing a spreadsheet. @@ -388,7 +392,7 @@ def workbook_to_json( ) # Here we create our json dict root with default settings: - id_string = settings.get(constants.ID_STRING, form_name) + id_string = settings.get(constants.ID_STRING, form_id) sms_keyword = settings.get(constants.SMS_KEYWORD, id_string) json_dict = { constants.TYPE: constants.SURVEY, @@ -1316,7 +1320,10 @@ def parse_file_to_json( if warnings is None: warnings = [] workbook_dict = parse_file_to_workbook_dict(path, file_object) - return workbook_to_json(workbook_dict, default_name, default_language, warnings) + default_form_id = unicode(get_filename(path)) + return workbook_to_json( + workbook_dict, default_name, default_form_id, default_language, warnings + ) def organize_by_values(dict_list, key): From ab0e8764b7fd3744e207d8bffbbd8898c40d5217 Mon Sep 17 00:00:00 2001 From: Nyoman Ribeka Date: Thu, 24 Oct 2019 09:35:19 -0400 Subject: [PATCH 2/2] Updating parameter name based of the code review. --- pyxform/xls2json.py | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pyxform/xls2json.py b/pyxform/xls2json.py index 3ba314249..b42193e5f 100644 --- a/pyxform/xls2json.py +++ b/pyxform/xls2json.py @@ -301,7 +301,7 @@ def process_range_question_type(row): def workbook_to_json( workbook_dict, form_name=None, - form_id=None, + fallback_form_name=None, default_language="default", warnings=None, ): @@ -392,7 +392,7 @@ def workbook_to_json( ) # Here we create our json dict root with default settings: - id_string = settings.get(constants.ID_STRING, form_id) + id_string = settings.get(constants.ID_STRING, fallback_form_name) sms_keyword = settings.get(constants.SMS_KEYWORD, id_string) json_dict = { constants.TYPE: constants.SURVEY, @@ -1320,9 +1320,9 @@ def parse_file_to_json( if warnings is None: warnings = [] workbook_dict = parse_file_to_workbook_dict(path, file_object) - default_form_id = unicode(get_filename(path)) + fallback_form_name = unicode(get_filename(path)) return workbook_to_json( - workbook_dict, default_name, default_form_id, default_language, warnings + workbook_dict, default_name, fallback_form_name, default_language, warnings )