Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 23
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
MailTemplateDummyPreview
0.00% covered (danger)
0.00%
0 / 23
0.00% covered (danger)
0.00%
0 / 1
6
0.00% covered (danger)
0.00%
0 / 1
 readResponse
0.00% covered (danger)
0.00%
0 / 23
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2
3 namespace BO\Zmsadmin\Helper;
4
5 use BO\Zmsadmin\BaseController;
6 use Twig\Error\LoaderError;
7 use Twig\Error\RuntimeError;
8 use Twig\Error\SyntaxError;
9
10class MailTemplateDummyPreview extends BaseController
11{
12    /**
13     * @return \Psr\Http\Message\ResponseInterface
14     */
15    #[\Override]
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        $workstation = \App::$http->readGetResult('/workstation/', ['resolveReferences' => 1])->getEntity();
24        $providerId = $workstation->scope['provider']['id'];
25        $result = \App::$http->readGetResult("/preview-mailtemplates/$mailStatus/$providerId/", ['resolveReferences' => 0]);
26        $data = json_decode($result->getResponse()->getBody()->getContents())->data;
27
28        try {
29            // Twig-Template rendern
30            return \BO\Slim\Render::withHtml(
31                $response,
32                'block/page/dummypreview.twig',
33                array(
34                    'title' => 'Preview',
35                    'previewHtml' => $data->previewHtml,
36                    'previewPlain' => $data->previewPlain
37                )
38            );
39        } catch (LoaderError | RuntimeError | SyntaxError $e) {
40            return \BO\Slim\Render::withHtml(
41                $response,
42                'block/page/dummypreviewerror.twig',
43                array(
44                    'title' => 'Fehler',
45                    'errorMessage' => 'Das Template konnte nicht gerendert werden: ' . $e->getMessage(),
46                )
47            );
48        }
49    }
50}