getContainer()->getPermissionsService()->currentUserCanWrite(Entities::NOTIFICATIONS)) { throw new AccessDeniedException('You are not allowed to update notification'); } $notificationId = (int)$command->getArg('id'); $result = new CommandResult(); $this->checkMandatoryFields($command); /** @var NotificationRepository $notificationRepo */ $notificationRepo = $this->container->get('domain.notification.repository'); $currentNotification = $notificationRepo->getById($notificationId); $content = str_replace( ['
', '
', '

', '

', '

'], ['', '', '
', '', ''], $command->getField('content') ); $notification = NotificationFactory::create([ 'name' => $currentNotification->getName()->getValue(), 'status' => $currentNotification->getStatus()->getValue(), 'type' => $currentNotification->getType()->getValue(), 'time' => $command->getField('time'), 'timeBefore' => $command->getField('timeBefore'), 'timeAfter' => $command->getField('timeAfter'), 'sendTo' => $currentNotification->getSendTo()->getValue(), 'subject' => $command->getField('subject'), 'entity' => $command->getField('entity'), 'content' => $content ]); if (!$notification instanceof Notification) { $result->setResult(CommandResult::RESULT_ERROR); $result->setMessage('Could not update notification entity.'); return $result; } if ($notificationRepo->update($notificationId, $notification)) { $result->setResult(CommandResult::RESULT_SUCCESS); $result->setMessage('Successfully updated notification.'); $result->setData([ Entities::NOTIFICATION => $notification->toArray() ]); } return $result; } }