Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3c54357 authored by Fahim Salam Chowdhury's avatar Fahim Salam Chowdhury 👽
Browse files

fix: patch-015 for nc32 upgrade

parent 23f4e37f
Loading
Loading
Loading
Loading
Loading
+14 −13
Original line number Diff line number Diff line
@@ -5,17 +5,17 @@ Subject: [PATCH] In the invitation modifying a recurring event highlight whether

This patch helps in indentifying that For a recurring event, the invitee knows without a doubt whether the modification pushed by the updated invitation is a one time thing or a modification of all future events.

--- ./apps/dav/lib/CalDAV/Schedule/IMipPlugin.php	2024-03-18 11:18:20
+++ ./apps/dav/lib/CalDAV/Schedule/IMipPlugin-new.php	2024-03-11 11:18:22
@@ -149,7 +149,30 @@
 		/** @var VEvent $oldVevent */
--- ./apps/dav/lib/CalDAV/Schedule/IMipPlugin.php	2026-03-23 17:46:37.629006189 +0600
+++ ./apps/dav/lib/CalDAV/Schedule/IMipPlugin-new.php	2026-03-24 09:30:02.299251689 +0600
@@ -148,6 +148,30 @@
 		$oldVevent = !empty($modified['old']) && is_array($modified['old']) ? array_pop($modified['old']) : null;
 		$isModified = isset($oldVevent);
 
+		$recurrenceId = $vEvent->{'RECURRENCE-ID'};
+		if (isset($recurrenceId) && $modified['sentOld'] === 1 && !empty($oldVevent)) {
+			$dateTime = $recurrenceId->getValue();
+			$recurrenceArray = explode('T', $dateTime);
 
+
+			$oldVEventStart = $oldVevent->DTSTART;
+			$oldStartDateTime = $oldVEventStart->getValue();
+			$startDateTimeArray = explode('T', $oldStartDateTime);
@@ -38,7 +38,7 @@ This patch helps in indentifying that For a recurring event, the invitee knows w
 		// No changed events after all - this shouldn't happen if there is significant change yet here we are
 		// The scheduling status is debatable
 		if (empty($vEvent)) {
@@ -217,12 +240,35 @@
@@ -215,12 +239,36 @@
 		$data['invitee_name'] = ($senderName ?: $sender);
 
 		$fromEMail = Util::getDefaultEmailAddress('invitations-noreply');
@@ -68,6 +68,7 @@ This patch helps in indentifying that For a recurring event, the invitee knows w
+		if ($method !== self::METHOD_CANCEL && $method !== self::METHOD_REPLY && count($vEvent) > 1) {
+			$template->addHeadingBanner('#EFFFDB', '#293618', $l10n->t('This recurring event has been updated, please review the information below:'));
+		}
+
+		$sequence = $vEvent->SEQUENCE ? $vEvent->SEQUENCE->getValue() : NULL;
+		if (($sequence && $method !== self::METHOD_CANCEL && $method !== self::METHOD_REPLY && ($sequence > 2)) || isset($vEvent->{'RECURRENCE-ID'})) {
+			$template->addHeadingBanner('#EFFFDB', '#293618', $l10n->t('This event has been updated, please review the information below:'));
@@ -75,7 +76,7 @@ This patch helps in indentifying that For a recurring event, the invitee knows w
 		$this->imipService->addBulletList($template, $vEvent, $data);
 
 		// Only add response buttons to invitation requests: Fix Issue #11230
@@ -255,7 +301,6 @@
@@ -253,7 +301,6 @@
 				|| in_array(strtolower($recipientDomain), $invitationLinkRecipients)) {
 				$token = $this->imipService->createInvitationToken($iTipMessage, $vEvent, $lastOccurrence);
 				$this->imipService->addResponseButtons($template, $token);
@@ -220,8 +221,8 @@ This patch helps in indentifying that For a recurring event, the invitee knows w
 
 	public function getReplyingAttendee(Message $iTipMessage): ?Property {

--- ./apps/dav/lib/CalDAV/EventComparisonService.php	2024-05-06 12:46:29
+++ ./apps/dav/lib/CalDAV/EventComparisonService-new.php	2024-05-06 12:47:11
--- ./apps/dav/lib/CalDAV/EventComparisonService.php	2026-03-13 18:50:32.749819154 +0600
+++ ./apps/dav/lib/CalDAV/EventComparisonService-new.php	2026-03-24 09:38:05.198934270 +0600
@@ -78,8 +78,9 @@
 			}
 		}