Method: Wpxf::Auxiliary::DownloadMonitorLogExport#parse_csv

Defined in:
lib/wpxf/modules/auxiliary/info/download_monitor_log_export.rb

#parse_csv(body, delimiter) ⇒ Object



43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
# File 'lib/wpxf/modules/auxiliary/info/download_monitor_log_export.rb', line 43

def parse_csv(body, delimiter)
  begin
    CSV::Converters[:blank_to_nil] = lambda do |field|
      field && field.empty? ? nil : field
    end
    csv = CSV.new(
      body,
      col_sep: delimiter,
      headers: true,
      header_converters: :symbol,
      converters: i[all blank_to_nil]
    )

    csv.to_a.map { |row| process_row(row) }
    return true
  rescue StandardError
    return false
  end
end