public function onArticlePostSubmit(JournalItemEvent $itemEvent) { /** @var Article $article */ $article = $itemEvent->getItem(); $submitterUser = $article->getSubmitterUser(); $getMailEvent = $this->ojsMailer->getEventByName(ArticleEvents::POST_SUBMIT, null, $itemEvent->getItem()->getJournal()); if (!$getMailEvent) { return; } foreach ($this->ojsMailer->getJournalRelatedUsers() as $user) { $transformParams = ['journal' => (string) $itemEvent->getItem()->getJournal(), 'article.title' => $itemEvent->getItem()->getTitle(), 'submitter.username' => $submitterUser->getUsername(), 'receiver.username' => $user->getUsername(), 'receiver.fullName' => $user->getFullName()]; $template = $this->ojsMailer->transformTemplate($getMailEvent->getTemplate(), $transformParams); $this->ojsMailer->sendToUser($user, $getMailEvent->getSubject(), $template); } //send mail to submitter user $transformParams = ['journal' => (string) $itemEvent->getItem()->getJournal(), 'article.title' => $itemEvent->getItem()->getTitle(), 'submitter.username' => $submitterUser->getUsername(), 'receiver.username' => $submitterUser->getUsername(), 'receiver.fullName' => $submitterUser->getFullName()]; $template = $this->ojsMailer->transformTemplate($getMailEvent->getTemplate(), $transformParams); $this->ojsMailer->sendToUser($submitterUser, $getMailEvent->getSubject(), $template); }