Class: Calagator::Source::Parser::Ical

Inherits:
Calagator::Source::Parser show all
Defined in:
app/models/calagator/source/parser/ical.rb

Defined Under Namespace

Classes: EventMapper, VenueMapper

Instance Attribute Summary

Attributes inherited from Calagator::Source::Parser

#source, #url

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Calagator::Source::Parser

<=>, inherited, labels, to_events

Class Method Details

.read_url(url) ⇒ Object

Override Source::Parser.read_url to handle “webcal” scheme addresses.



20
21
22
23
# File 'app/models/calagator/source/parser/ical.rb', line 20

def self.read_url(url)
  url = url.gsub(/^webcal:/, 'http:')
  super
end

Instance Method Details

#to_eventsObject



25
26
27
28
29
30
31
# File 'app/models/calagator/source/parser/ical.rb', line 25

def to_events
  return false unless vcalendars

  current_vevents = vcalendars.flat_map(&:vevents).reject(&:old?)
  current_events = current_vevents.map { |vevent| to_event(vevent) }
  dedup(current_events)
end