public onJournalIndexPostCreate ( Ojs\JournalBundle\Event\JournalItemEvent $itemEvent ) | ||
$itemEvent | Ojs\JournalBundle\Event\JournalItemEvent |
public function onJournalIndexPostCreate(JournalItemEvent $itemEvent)
{
$getMailEvent = $this->ojsMailer->getEventByName(JournalIndexEvents::POST_CREATE, null, $itemEvent->getItem()->getJournal());
if (!$getMailEvent) {
return;
}
$mailUsers = array_merge($this->ojsMailer->getJournalRelatedUsers(), $this->ojsMailer->getAdminUsers());
/** @var User $user */
foreach ($mailUsers as $user) {
$transformParams = ['index' => (string) $itemEvent->getItem(), 'done.by' => $this->ojsMailer->currentUser()->getUsername(), 'receiver.username' => $user->getUsername(), 'receiver.fullName' => $user->getFullName(), 'journal' => (string) $itemEvent->getItem()->getJournal()];
$template = $this->ojsMailer->transformTemplate($getMailEvent->getTemplate(), $transformParams);
$this->ojsMailer->sendToUser($user, $getMailEvent->getSubject(), $template);
}
}