class ICalPal::Event
def apply_frequency!
def apply_frequency! # Leave edate alone for birthdays to compute age dates = [ 'sdate' ] dates << 'edate' unless self['calendar'].include?('Birthday') dates.each do |d| case EventKit::EKRecurrenceFrequency[self['frequency'] - 1] when 'daily' then self[d] += self['interval'] when 'weekly' then self[d] += self['interval'] * 7 when 'monthly' then self[d] >>= self['interval'] when 'yearly' then self[d] >>= self['interval'] * 12 else $log.error("Unknown frequency: #{self['frequency']}") end end end