diff --git a/SoObjects/Appointments/SOGoAppointmentFolder.m b/SoObjects/Appointments/SOGoAppointmentFolder.m index 5cb6f3281..e8b7997b9 100644 --- a/SoObjects/Appointments/SOGoAppointmentFolder.m +++ b/SoObjects/Appointments/SOGoAppointmentFolder.m @@ -1760,7 +1760,7 @@ firstInstanceCalendarDateRange: (NGCalendarDateRange *) fir { NSCalendarDate *now, *rc; - if (davCalendarStartTimeLimit > 0 && ![[context activeUser] isSuperUser]) + if ([[context request] isSoWebDAVRequest] && davCalendarStartTimeLimit > 0 && ![[context activeUser] isSuperUser]) { now = [NSCalendarDate date]; rc = [now addTimeInterval: -davTimeLimitSeconds]; diff --git a/SoObjects/SOGo/SOGoGCSFolder.m b/SoObjects/SOGo/SOGoGCSFolder.m index 58a958de8..19f114691 100644 --- a/SoObjects/SOGo/SOGoGCSFolder.m +++ b/SoObjects/SOGo/SOGoGCSFolder.m @@ -1531,6 +1531,11 @@ static NSArray *childRecordFields = nil; return valid; } +- (NSCalendarDate *) _getMaxStartDate +{ + return nil; +} + /** DAV:sync-collection Report https://datatracker.ietf.org/doc/html/rfc6578#section-3.2 @@ -1559,9 +1564,10 @@ static NSArray *childRecordFields = nil; propElement = [(NGDOMNodeWithChildren *) documentElement firstElementWithTag: @"prop" inNamespace: XMLNS_WEBDAV]; properties = [self parseDAVRequestedProperties: propElement]; + records = [self syncTokenFieldsWithProperties: properties matchingSyncToken: syncToken - fromDate: nil + fromDate: [self _getMaxStartDate] initialLoad: NO]; [self _appendComponentProperties: [properties allKeys]