From 6b2bceceb6a2c3d8128c5a570cf4c15c85de113c Mon Sep 17 00:00:00 2001 From: rebuilt Date: Tue, 6 Jun 2023 15:00:00 -0700 Subject: [PATCH] Fix: Parse headers when they are surrounded by quotes. This helps load recent csv files correctly --- app/services/survey_responses_data_loader.rb | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/app/services/survey_responses_data_loader.rb b/app/services/survey_responses_data_loader.rb index 1ca0d91a..8c2b68d1 100644 --- a/app/services/survey_responses_data_loader.rb +++ b/app/services/survey_responses_data_loader.rb @@ -4,7 +4,7 @@ class SurveyResponsesDataLoader def self.load_data(filepath:, rules: [Rule::NoRule]) File.open(filepath) do |file| headers = file.first - headers_array = headers.split(',') + headers_array = CSV.parse(headers).first genders_hash = genders all_survey_items = survey_items(headers:) @@ -20,7 +20,7 @@ class SurveyResponsesDataLoader def self.from_file(file:, rules: []) headers = file.gets - headers_array = headers.split(',') + headers_array = CSV.parse(headers).first genders_hash = genders all_survey_items = survey_items(headers:) @@ -101,9 +101,6 @@ class SurveyResponsesDataLoader CSV.parse(headers, headers: true).headers .filter(&:present?) .filter { |header| header.start_with? 't-', 's-' } - # headers.split(',') - # .filter(&:present?) - # .filter { |header| header.start_with? 't-', 's-' } end private_class_method :process_row