Loading patches/015-email-mail-template.patch +50 −0 Original line number Diff line number Diff line Loading @@ -31,3 +31,53 @@ } /** --- ./apps/dav/lib/CalDAV/Schedule/IMipPlugin.php 2022-06-30 10:22:42.346419100 +0530 +++ ./apps/dav/lib/CalDAV/Schedule/IMipPlugin-new.php 2022-06-30 10:23:55.506419100 +0530 @@ -419,23 +419,34 @@ * @param VEvent $vevent */ private function generateWhenString(IL10N $l10n, VEvent $vevent) { - $dtstart = $vevent->DTSTART; - if (isset($vevent->DTEND)) { - $dtend = $vevent->DTEND; - } elseif (isset($vevent->DURATION)) { - $isFloating = $vevent->DTSTART->isFloating(); - $dtend = clone $vevent->DTSTART; + $lastmodified=0; + foreach( $vevent as $vevent1){ + $dtstamp= $vevent1->{'LAST-MODIFIED'}; + $dtstampTime = strtotime($dtstamp); + if($dtstampTime>$lastmodified){ + $lastmodified=$dtstampTime; + $dtStartFinal= $vevent1->DTSTART; + $dtEndtFinal= $vevent1->DTEND; + $durationFinal= $vevent1->DURATION; + } + } + $dtstart = $dtStartFinal; + if (isset($dtEndtFinal)) { + $dtend = $dtEndtFinal; + } elseif (isset($durationFinal)) { + $isFloating = $dtStartFinal->isFloating(); + $dtend = clone $dtStartFinal; $endDateTime = $dtend->getDateTime(); - $endDateTime = $endDateTime->add(DateTimeParser::parse($vevent->DURATION->getValue())); + $endDateTime = $endDateTime->add(DateTimeParser::parse($durationFinal->getValue())); $dtend->setDateTime($endDateTime, $isFloating); - } elseif (!$vevent->DTSTART->hasTime()) { - $isFloating = $vevent->DTSTART->isFloating(); - $dtend = clone $vevent->DTSTART; + } elseif (!$dtStartFinal->hasTime()) { + $isFloating = $dtStartFinal->isFloating(); + $dtend = clone $dtStartFinal; $endDateTime = $dtend->getDateTime(); $endDateTime = $endDateTime->modify('+1 day'); $dtend->setDateTime($endDateTime, $isFloating); } else { - $dtend = clone $vevent->DTSTART; + $dtend = clone $dtStartFinal; } $isAllDay = $dtstart instanceof Property\ICalendar\Date; Loading
patches/015-email-mail-template.patch +50 −0 Original line number Diff line number Diff line Loading @@ -31,3 +31,53 @@ } /** --- ./apps/dav/lib/CalDAV/Schedule/IMipPlugin.php 2022-06-30 10:22:42.346419100 +0530 +++ ./apps/dav/lib/CalDAV/Schedule/IMipPlugin-new.php 2022-06-30 10:23:55.506419100 +0530 @@ -419,23 +419,34 @@ * @param VEvent $vevent */ private function generateWhenString(IL10N $l10n, VEvent $vevent) { - $dtstart = $vevent->DTSTART; - if (isset($vevent->DTEND)) { - $dtend = $vevent->DTEND; - } elseif (isset($vevent->DURATION)) { - $isFloating = $vevent->DTSTART->isFloating(); - $dtend = clone $vevent->DTSTART; + $lastmodified=0; + foreach( $vevent as $vevent1){ + $dtstamp= $vevent1->{'LAST-MODIFIED'}; + $dtstampTime = strtotime($dtstamp); + if($dtstampTime>$lastmodified){ + $lastmodified=$dtstampTime; + $dtStartFinal= $vevent1->DTSTART; + $dtEndtFinal= $vevent1->DTEND; + $durationFinal= $vevent1->DURATION; + } + } + $dtstart = $dtStartFinal; + if (isset($dtEndtFinal)) { + $dtend = $dtEndtFinal; + } elseif (isset($durationFinal)) { + $isFloating = $dtStartFinal->isFloating(); + $dtend = clone $dtStartFinal; $endDateTime = $dtend->getDateTime(); - $endDateTime = $endDateTime->add(DateTimeParser::parse($vevent->DURATION->getValue())); + $endDateTime = $endDateTime->add(DateTimeParser::parse($durationFinal->getValue())); $dtend->setDateTime($endDateTime, $isFloating); - } elseif (!$vevent->DTSTART->hasTime()) { - $isFloating = $vevent->DTSTART->isFloating(); - $dtend = clone $vevent->DTSTART; + } elseif (!$dtStartFinal->hasTime()) { + $isFloating = $dtStartFinal->isFloating(); + $dtend = clone $dtStartFinal; $endDateTime = $dtend->getDateTime(); $endDateTime = $endDateTime->modify('+1 day'); $dtend->setDateTime($endDateTime, $isFloating); } else { - $dtend = clone $vevent->DTSTART; + $dtend = clone $dtStartFinal; } $isAllDay = $dtstart instanceof Property\ICalendar\Date;