Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
| Total | |
0.00% |
0 / 31 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 1 |
| MailTemplatePreviewMail | |
0.00% |
0 / 31 |
|
0.00% |
0 / 1 |
12 | |
0.00% |
0 / 1 |
| readResponse | |
0.00% |
0 / 31 |
|
0.00% |
0 / 1 |
12 | |||
| 1 | <?php |
| 2 | |
| 3 | namespace BO\Zmsadmin\Helper; |
| 4 | |
| 5 | use BO\Zmsadmin\BaseController; |
| 6 | use BO\Zmsadmin\Helper\MailTemplateArrayProvider; |
| 7 | use Twig\Error\LoaderError; |
| 8 | use Twig\Error\RuntimeError; |
| 9 | use Twig\Error\SyntaxError; |
| 10 | use Twig\Environment; |
| 11 | use Symfony\Bridge\Twig\Extension\TranslationExtension; |
| 12 | use Twig\Extra\Intl\IntlExtension; |
| 13 | |
| 14 | class MailTemplatePreviewMail extends BaseController |
| 15 | { |
| 16 | public function readResponse( |
| 17 | \Psr\Http\Message\RequestInterface $request, |
| 18 | \Psr\Http\Message\ResponseInterface $response, |
| 19 | array $args |
| 20 | ) { |
| 21 | |
| 22 | $mailStatus = $args['mailStatus']; |
| 23 | $validator = $request->getAttribute('validator'); |
| 24 | $input = $validator->getInput()->isJson()->getValue(); |
| 25 | |
| 26 | $mainProcessExample = ((new \BO\Zmsentities\Process())->getExample()); |
| 27 | $mainProcessExample->id = 987654; |
| 28 | $dateTime = new \DateTimeImmutable("2015-10-23 08:00:00", new \DateTimeZone('Europe/Berlin')); |
| 29 | $mainProcessExample->getFirstAppointment()->setDateTime($dateTime); |
| 30 | $mainProcessExample->requests[] = (new \BO\Zmsentities\Request())->getExample(); |
| 31 | |
| 32 | $templates = array(); |
| 33 | |
| 34 | foreach ($input['templates'] as $template) { |
| 35 | $templates[$template['templateName']] = $template['templateContent']; |
| 36 | }; |
| 37 | |
| 38 | $templateProvider = new MailTemplateArrayProvider(); |
| 39 | $templateProvider->setTemplates($templates); |
| 40 | |
| 41 | $config = new \BO\Zmsentities\Config(); |
| 42 | |
| 43 | try { |
| 44 | $mail = (new \BO\Zmsentities\Mail()) |
| 45 | ->setTemplateProvider($templateProvider) |
| 46 | ->toResolvedEntity($mainProcessExample, $config, $mailStatus); |
| 47 | } catch (\Exception $e) { |
| 48 | return \BO\Slim\Render::withJson( |
| 49 | $response, |
| 50 | array( |
| 51 | 'error' => $e->getMessage() |
| 52 | ) |
| 53 | ); |
| 54 | } |
| 55 | |
| 56 | return \BO\Slim\Render::withJson( |
| 57 | $response, |
| 58 | array( |
| 59 | 'previewHtml' => $mail->getHtmlPart(), |
| 60 | 'previewPlain' => $mail->getPlainPart() |
| 61 | ) |
| 62 | ); |
| 63 | } |
| 64 | } |