diff --git a/app/views/events/index.ics.haml b/app/views/events/index.ics.haml index 9fd89dcb..91712c4a 100644 --- a/app/views/events/index.ics.haml +++ b/app/views/events/index.ics.haml @@ -5,12 +5,15 @@ cal = Icalendar::Calendar.new @events.each do |event| tzid = event.region.tzid - begin - tz = TZInfo::Timezone.get tzid - timezone = tz.ical_timezone event.start_time - cal.add_timezone timezone - rescue TZInfo::InvalidTimezoneIdentifier - # No need to add this tz + if cal.timezones.none? { |t| tzid == t.tzid } + # Only add this zone once + begin + tz = TZInfo::Timezone.get tzid + timezone = tz.ical_timezone event.start_time + cal.add_timezone timezone + rescue TZInfo::InvalidTimezoneIdentifier + # No need to add this tz + end end cal.event do |e|