diff --git a/calendar/inc/class.calendar_ical.inc.php b/calendar/inc/class.calendar_ical.inc.php index ca0a98df0c..7eb2c694cc 100644 --- a/calendar/inc/class.calendar_ical.inc.php +++ b/calendar/inc/class.calendar_ical.inc.php @@ -848,7 +848,11 @@ class calendar_ical extends calendar_boupdate { $attributes['CREATED'] = $event['created'] ? $event['created'] : $event['modified']; } - if ($event['modified']) + if ($event['max_user_modified']) + { + $attributes['LAST-MODIFIED'] = max($event['modified'], $event['max_user_modified']); + } + elseif ($event['modified']) { $attributes['LAST-MODIFIED'] = $event['modified']; } diff --git a/calendar/inc/class.calendar_so.inc.php b/calendar/inc/class.calendar_so.inc.php index 19e2275e81..c5c05a06fd 100644 --- a/calendar/inc/class.calendar_so.inc.php +++ b/calendar/inc/class.calendar_so.inc.php @@ -241,6 +241,11 @@ class calendar_so $events[$row['cal_id']]['participants'][$uid] = $status; $events[$row['cal_id']]['participant_types'][$row['cal_user_type']][$row['cal_user_id']] = $status; + + if (($modified = $this->db->from_timestamp($row['cal_user_modified'])) > $events[$row['cal_id']]['max_user_modified']) + { + $events[$row['cal_id']]['max_user_modified'] = $modified; + } } // custom fields