serializer = $serializer; $this->httpClient = $httpClient; $this->mailer = $mailer; $this->params = $params; $this->requestStack = $requestStack; $this->log = $log; } /** * @return bool|null */ public function __invoke(MailView $mail) { try { $this->log->setLog("begin", "error.log"); $token = $this->requestStack->getCurrentRequest()->headers->get('x-auth-token'); $call = $this->httpClient->data('POST', $this->params->get('domain_admin') . '/list_email.json', [ 'headers' => [ 'x-auth-token' => $token, ], 'json' => $this->serializer->normalize($mail->users), ]); $emails = []; foreach ($call as $email) { if(!empty($email['sendMail']) && $email['sendMail']){ $emails[] = $email['email']; } } $etape = $mail->transition; if ($etape->start !== $etape->end) { $body = '@IU/workflow/changePlace.html.twig'; $head = 'Changement de status'; } else { $body = '@IU/workflow/create.html.twig'; $head = "Création de page"; } $message = ['start' => $etape->start, 'end' => $etape->end, 'page' => $etape->element]; return $this->mailer->changePlace($emails, $body, $head, $message); } catch (\Exception $e) { $this->log->setLog($e->getMessage(), "error.log"); //throw $th; } } }