diff --git a/vendor/built_in_modules/survey/app/controllers/panel/survey/back_end/surveys_controller.rb b/vendor/built_in_modules/survey/app/controllers/panel/survey/back_end/surveys_controller.rb index 38003893b..cb57f9f01 100644 --- a/vendor/built_in_modules/survey/app/controllers/panel/survey/back_end/surveys_controller.rb +++ b/vendor/built_in_modules/survey/app/controllers/panel/survey/back_end/surveys_controller.rb @@ -112,28 +112,31 @@ class Panel::Survey::BackEnd::SurveysController < OrbitBackendController end @survey_answers.destroy + + # End of speadsheet + @end_row = @spreadsheet.count # Modify multiline options if changed @survey_questions.each_with_index do |question, index| case question.type - - # when ::SurveyQuestion::Radio, ::SurveyQuestion::Select - # (2..(question.survey_question_options.count + 1)).each do |row| - # (1..@spreadsheet.row(row)[index*2 + 1].to_i).each do - # @answer_model = @survey.survey_answers.new - # @answer_model[question.id.to_s] = @spreadsheet.row(row)[index*2] - # @answer_model.save! - # end - # end - # when ::SurveyQuestion::Check - # (2..(question.survey_question_options.count + 1)).each do |row| - # (1..@spreadsheet.row(row)[index*2 + 1].to_i).each do - # @answer_model = @survey.survey_answers.new - # @answer_model[question.id.to_s] = [ @spreadsheet.row(row)[index*2] ] - # @answer_model.save! - # end - # end + when ::SurveyQuestion::Radio, ::SurveyQuestion::Select + ((question.survey_question_options.count + 2)..@end_row).each do |row| + @answer_model = @survey.survey_answers.new + if !@spreadsheet.row(row)[index*2].nil? && @spreadsheet.row(row)[index*2] != " " + @answer_model[question.id.to_s] = @spreadsheet.row(row)[index*2] + @answer_model.save! + end + end + + when ::SurveyQuestion::Check + ((question.survey_question_options.count + 2)..@end_row).each do |row| + @answer_model = @survey.survey_answers.new + if !@spreadsheet.row(row)[index*2].nil? + @answer_model[question.id.to_s] = @spreadsheet.row(row)[index*2].split("\"").select.each_with_index { |str, i| i.odd? } + @answer_model.save! + end + end when ::SurveyQuestion::Radiogroup radio_groups = []