diff --git a/lib/Kronolith.php b/lib/Kronolith.php index 6282754a4..b2b497611 100644 --- a/lib/Kronolith.php +++ b/lib/Kronolith.php @@ -2137,16 +2137,18 @@ public static function sendNotification($event, $action) $owner = $share->get('owner'); if ($owner) { - $recipients[$owner] = self::_notificationPref($owner, 'owner'); - $recipients[$owner]['private'] = $event->isPrivate($owner); + if ($notificationPrefs = self::_notificationPref($owner, 'owner')) { + $recipients[$owner] = $notificationPrefs; + $recipients[$owner]['private'] = $event->isPrivate($owner); + } } $senderIdentity = $injector->getInstance('Horde_Core_Factory_Identity') ->create($registry->getAuth() ?: $event->creator ?: $owner); foreach ($share->listUsers(Horde_Perms::READ) as $user) { - if (empty($recipients[$user])) { - $recipients[$user] = self::_notificationPref($user, 'read', $calendar); + if (empty($recipients[$user]) && ($notificationPrefs = self::_notificationPref($user, 'read', $calendar))) { + $recipients[$user] = $notificationPrefs; $recipients[$user]['private'] = $event->isPrivate($user); } } @@ -2160,8 +2162,8 @@ public static function sendNotification($event, $action) } foreach ($group_users as $user) { - if (empty($recipients[$user])) { - $recipients[$user] = self::_notificationPref($user, 'read', $calendar); + if (empty($recipients[$user]) && ($notificationPrefs = self::_notificationPref($user, 'read', $calendar))) { + $recipients[$user] = $notificationPrefs; $recipients[$user]['private'] = $event->isPrivate($user); } }