class Meetupinator::EventListFileReader
Reads a list of events from a CSV file.
Public Instance Methods
read(file_name)
click to toggle source
# File lib/meetupinator/event_list_file_reader.rb, line 6 def read(file_name) File.open file_name do |body| csv = CSV.new(body, headers: true, header_converters: :symbol, converters: :all) csv.to_a.map(&:to_hash).each { |event| parse_dates(event) } end end
Private Instance Methods
parse_dates(event)
click to toggle source
# File lib/meetupinator/event_list_file_reader.rb, line 18 def parse_dates(event) event[:start_time] = parse_time_on_date(event[:date], event[:start_time]) event[:end_time] = parse_time_on_date(event[:date], event[:end_time]) event[:date] = Time.strptime(event[:date], '%d/%m/%Y') end
parse_time_on_date(date, time)
click to toggle source
# File lib/meetupinator/event_list_file_reader.rb, line 24 def parse_time_on_date(date, time) time_format = '%d/%m/%Y %I:%M %p' time_with_date = date + ' ' + time Time.strptime(time_with_date, time_format) end