public function getEventByName($eventName, $lang = null, Journal $journal = null)
{
if ($lang == null) {
$lang = $this->locale;
}
if ($journal == null) {
$GLOBALS['Ojs\\JournalBundle\\Entity\\MailTemplate#journalFilter'] = false;
}
/** @var MailTemplate $template */
$template = $this->em->getRepository('OjsJournalBundle:MailTemplate')->findOneBy(['journal' => $journal, 'type' => $eventName, 'lang' => $lang]);
if ($template) {
if ($template->isUseJournalDefault()) {
$GLOBALS['Ojs\\JournalBundle\\Entity\\MailTemplate#journalFilter'] = false;
return $this->em->getRepository('OjsJournalBundle:MailTemplate')->findOneBy(['journal' => null, 'type' => $eventName, 'lang' => $lang, 'journalDefault' => true]);
}
if (!$template->isActive()) {
return false;
}
}
return $template;
}