Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
0.00% |
0 / 22 |
|
0.00% |
0 / 1 |
CRAP | |
0.00% |
0 / 1 |
OlzPanini2024MasksParams | n/a |
0 / 0 |
n/a |
0 / 0 |
0 | n/a |
0 / 0 |
|||
OlzPanini2024Masks | |
0.00% |
0 / 22 |
|
0.00% |
0 / 1 |
6 | |
0.00% |
0 / 1 |
getHtml | |
0.00% |
0 / 22 |
|
0.00% |
0 / 1 |
6 |
1 | <?php |
2 | |
3 | namespace Olz\Apps\Panini2024\Components\OlzPanini2024Masks; |
4 | |
5 | use Olz\Apps\Panini2024\Metadata; |
6 | use Olz\Components\Apps\OlzNoAppAccess\OlzNoAppAccess; |
7 | use Olz\Components\Common\OlzComponent; |
8 | use Olz\Components\Page\OlzFooter\OlzFooter; |
9 | use Olz\Components\Page\OlzHeader\OlzHeader; |
10 | use Olz\Utils\HttpParams; |
11 | |
12 | /** @extends HttpParams<array{}> */ |
13 | class OlzPanini2024MasksParams extends HttpParams { |
14 | } |
15 | |
16 | /** @extends OlzComponent<array<string, mixed>> */ |
17 | class OlzPanini2024Masks extends OlzComponent { |
18 | public function getHtml(mixed $args): string { |
19 | $this->httpUtils()->validateGetParams(OlzPanini2024MasksParams::class); |
20 | $code_href = $this->envUtils()->getCodeHref(); |
21 | $metadata = new Metadata(); |
22 | |
23 | $out = OlzHeader::render([ |
24 | 'back_link' => "{$code_href}service/", |
25 | 'title' => "Panini '24 Masks", |
26 | 'norobots' => true, |
27 | ]); |
28 | |
29 | $out .= "<div class='content-full'>"; |
30 | |
31 | if ($this->authUtils()->hasPermission('panini2024')) { |
32 | $enc_mask = json_encode($args['mask'] ?? ''); |
33 | $out .= <<<ZZZZZZZZZZ |
34 | <script> |
35 | window.olzPanini2024Mask = {$enc_mask}; |
36 | </script> |
37 | <div id='panini-react-root-masks'> |
38 | Lädt... |
39 | </div> |
40 | ZZZZZZZZZZ; |
41 | } else { |
42 | $out .= OlzNoAppAccess::render([ |
43 | 'app' => $metadata, |
44 | ]); |
45 | } |
46 | |
47 | $out .= "</div>"; |
48 | |
49 | $out .= $metadata->getJsCssImports(); |
50 | $out .= OlzFooter::render(); |
51 | |
52 | return $out; |
53 | } |
54 | } |