fix(calendar): fallback to tz found in ics

This commit is contained in:
root
2020-01-29 18:50:58 +01:00
parent 127a3c487d
commit 57bbb255cc
4 changed files with 7 additions and 3 deletions
@@ -3441,7 +3441,7 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir
if ([element isKindOfClass: iCalEventK])
{
event = (iCalEvent *)element;
timezone = [event adjustInContext: self->context];
timezone = [event adjustInContext: self->context withTimezones: timezones];
if ([event recurrenceId])
{
@@ -1943,7 +1943,7 @@ inRecurrenceExceptionsForEvent: (iCalEvent *) theEvent
{
event = [allEvents objectAtIndex: i];
tz = [event adjustInContext: context];
tz = [event adjustInContext: context withTimezones: nil];
if (tz)
[rqCalendar addTimeZone: tz];
+1 -1
View File
@@ -31,7 +31,7 @@
- (BOOL) isStillRelevant;
- (NSTimeInterval) occurenceInterval;
- (void) updateRecurrenceRulesUntilDate: (NSCalendarDate *) previousEndDate;
- (iCalTimeZone *) adjustInContext: (WOContext *) context;
- (iCalTimeZone *) adjustInContext: (WOContext *) context withTimezones: (NSDictionary *) timezones;
@end
+4
View File
@@ -446,6 +446,7 @@
}
- (iCalTimeZone *) adjustInContext: (WOContext *) context
withTimezones: (NSDictionary *) timezones
{
iCalDateTime *startDate, *endDate;
iCalTimeZone *timezone;
@@ -484,6 +485,9 @@
if ([timezoneId length])
{
timezone = [iCalTimeZone timeZoneForName: timezoneId];
// Fallback to tz (VTIMEZONE) found in the ics.
if (!timezone)
timezone = [timezones valueForKey: timezoneId];
}
else
{