Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 22
0.00% covered (danger)
0.00%
0 / 4
CRAP
0.00% covered (danger)
0.00%
0 / 1
OlzOevParams
n/a
0 / 0
n/a
0 / 0
0
n/a
0 / 0
OlzOev
0.00% covered (danger)
0.00%
0 / 22
0.00% covered (danger)
0.00%
0 / 4
30
0.00% covered (danger)
0.00%
0 / 1
 hasAccess
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getSearchTitle
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getSearchResultsWhenHasAccess
0.00% covered (danger)
0.00%
0 / 1
0.00% covered (danger)
0.00%
0 / 1
2
 getHtmlWhenHasAccess
0.00% covered (danger)
0.00%
0 / 19
0.00% covered (danger)
0.00%
0 / 1
6
1<?php
2
3namespace Olz\Apps\Oev\Components\OlzOev;
4
5use Olz\Apps\Oev\Metadata;
6use Olz\Components\Apps\OlzNoAppAccess\OlzNoAppAccess;
7use Olz\Components\Common\OlzRootComponent;
8use Olz\Components\Page\OlzFooter\OlzFooter;
9use Olz\Components\Page\OlzHeader\OlzHeader;
10use Olz\Utils\HttpParams;
11
12/** @extends HttpParams<array{
13 *   nach?: ?string,
14 *   ankunft?: ?string,
15 * }> */
16class OlzOevParams extends HttpParams {
17}
18
19/** @extends OlzRootComponent<array<string, mixed>> */
20class OlzOev extends OlzRootComponent {
21    public function hasAccess(): bool {
22        return true;
23    }
24
25    public function getSearchTitle(): string {
26        return 'TODO';
27    }
28
29    public function getSearchResultsWhenHasAccess(array $terms): array {
30        return [];
31    }
32
33    public function getHtmlWhenHasAccess(mixed $args): string {
34        $this->httpUtils()->validateGetParams(OlzOevParams::class);
35        $code_href = $this->envUtils()->getCodeHref();
36        $metadata = new Metadata();
37
38        $out = OlzHeader::render([
39            'back_link' => "{$code_href}service/",
40            'title' => "ÖV-Tool",
41            'description' => "Tool für die Suche von gemeinsamen ÖV-Verbindungen.",
42            'norobots' => true,
43        ]);
44
45        $out .= "<div class='content-full'>";
46
47        $has_access = $this->authUtils()->hasPermission('any');
48        if ($has_access) {
49            $out .= <<<'ZZZZZZZZZZ'
50                <div id='oev-root'></div>
51                ZZZZZZZZZZ;
52        } else {
53            $out .= OlzNoAppAccess::render([
54                'app' => $metadata,
55            ]);
56        }
57
58        $out .= "</div>";
59
60        $out .= $metadata->getJsCssImports();
61        $out .= OlzFooter::render();
62
63        return $out;
64    }
65}