diff --git a/application/Espo/Core/FieldProcessing/Reminder/Saver.php b/application/Espo/Core/FieldProcessing/Reminder/Saver.php index 511dd2dae8..dd93cf5323 100644 --- a/application/Espo/Core/FieldProcessing/Reminder/Saver.php +++ b/application/Espo/Core/FieldProcessing/Reminder/Saver.php @@ -112,7 +112,7 @@ class Saver implements SaverInterface $this->entityManager->getQueryExecutor()->execute($query); } - if (empty($reminderList) || !is_array($reminderList)) { + if (empty($reminderList)) { return; } @@ -130,7 +130,6 @@ class Saver implements SaverInterface return; } - if ($entity->hasLinkMultipleField('users')) { $userIdList = $entity->getLinkMultipleIdList('users'); } diff --git a/tests/integration/Espo/Core/FieldProcessing/ReminderTest.php b/tests/integration/Espo/Core/FieldProcessing/ReminderTest.php new file mode 100644 index 0000000000..c29b68790d --- /dev/null +++ b/tests/integration/Espo/Core/FieldProcessing/ReminderTest.php @@ -0,0 +1,69 @@ +getContainer()->get('entityManager'); + + $meeting = $entityManager->createEntity('Meeting', [ + 'dateStart' => '2021-10-10 10:00:00', + 'usersIds' => ['1'], + 'reminders' => [ + (object) [ + 'type' => 'Popup', + 'seconds' => 0, + ], + (object) [ + 'type' => 'Popup', + 'seconds' => 60, + ] + ] + ]); + + $reminderList = $entityManager + ->getRDBRepository('Reminder') + ->where([ + 'entityId' => $meeting->getId(), + 'entityType' => $meeting->getEntityType(), + ]) + ->order('remindAt') + ->find(); + + $this->assertEquals(2, count($reminderList)); + } +}