Code Coverage |
||||||||||
Lines |
Functions and Methods |
Classes and Traits |
||||||||
Total | |
0.00% |
0 / 27 |
|
0.00% |
0 / 3 |
CRAP | |
0.00% |
0 / 1 |
OlzLogsParams | n/a |
0 / 0 |
n/a |
0 / 0 |
0 | n/a |
0 / 0 |
|||
OlzLogs | |
0.00% |
0 / 27 |
|
0.00% |
0 / 3 |
30 | |
0.00% |
0 / 1 |
getSearchTitle | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
getSearchResults | |
0.00% |
0 / 1 |
|
0.00% |
0 / 1 |
2 | |||
getHtml | |
0.00% |
0 / 25 |
|
0.00% |
0 / 1 |
12 |
1 | <?php |
2 | |
3 | namespace Olz\Apps\Logs\Components\OlzLogs; |
4 | |
5 | use Olz\Apps\Logs\Metadata; |
6 | use Olz\Apps\Logs\Utils\LogsDefinitions; |
7 | use Olz\Components\Apps\OlzNoAppAccess\OlzNoAppAccess; |
8 | use Olz\Components\Common\OlzRootComponent; |
9 | use Olz\Components\Page\OlzFooter\OlzFooter; |
10 | use Olz\Components\Page\OlzHeader\OlzHeader; |
11 | use Olz\Utils\HttpParams; |
12 | |
13 | /** @extends HttpParams<array{}> */ |
14 | class OlzLogsParams extends HttpParams { |
15 | } |
16 | |
17 | /** @extends OlzRootComponent<array<string, mixed>> */ |
18 | class OlzLogs extends OlzRootComponent { |
19 | public function getSearchTitle(): string { |
20 | return 'TODO'; |
21 | } |
22 | |
23 | public function getSearchResults(array $terms): array { |
24 | return []; |
25 | } |
26 | |
27 | public function getHtml(mixed $args): string { |
28 | $this->httpUtils()->validateGetParams(OlzLogsParams::class); |
29 | $code_href = $this->envUtils()->getCodeHref(); |
30 | |
31 | $out = OlzHeader::render([ |
32 | 'back_link' => "{$code_href}service/", |
33 | 'title' => "Logs", |
34 | 'norobots' => true, |
35 | ]); |
36 | |
37 | $metadata = new Metadata(); |
38 | |
39 | $out .= <<<'ZZZZZZZZZZ' |
40 | <style> |
41 | .menu-container { |
42 | max-width: none; |
43 | } |
44 | .site-container { |
45 | max-width: none; |
46 | } |
47 | </style> |
48 | ZZZZZZZZZZ; |
49 | |
50 | $out .= "<div class='content-full olz-logs'>"; |
51 | if ($this->authUtils()->hasPermission('all')) { |
52 | $channels_data = []; |
53 | foreach (LogsDefinitions::getLogsChannels() as $channel) { |
54 | $channels_data[$channel::getId()] = $channel::getName(); |
55 | } |
56 | $esc_channels = json_encode($channels_data); |
57 | $out .= <<<ZZZZZZZZZZ |
58 | <script> |
59 | window.olzLogsChannels = {$esc_channels}; |
60 | </script> |
61 | <div id='react-root'></div> |
62 | ZZZZZZZZZZ; |
63 | } else { |
64 | $out .= OlzNoAppAccess::render([ |
65 | 'app' => $metadata, |
66 | ]); |
67 | } |
68 | $out .= "</div>"; |
69 | |
70 | $out .= $metadata->getJsCssImports(); |
71 | $out .= OlzFooter::render(); |
72 | |
73 | return $out; |
74 | } |
75 | } |