Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
OlzStartseiteParams
n/a
0 / 0
n/a
0 / 0
0
n/a
0 / 0
OlzStartseite
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
12
0.00% covered (danger)
0.00%
0 / 1
 getHtml
0.00% covered (danger)
0.00%
0 / 14
0.00% covered (danger)
0.00%
0 / 1
12
1<?php
2
3// =============================================================================
4// Zeigt die OLZ Startseite an.
5// =============================================================================
6
7namespace Olz\Startseite\Components\OlzStartseite;
8
9use Olz\Components\Common\OlzComponent;
10use Olz\Components\Common\OlzEditableText\OlzEditableText;
11use Olz\Components\Page\OlzFooter\OlzFooter;
12use Olz\Components\Page\OlzHeader\OlzHeader;
13use Olz\Startseite\Components\OlzCustomizableHome\OlzCustomizableHome;
14use Olz\Utils\HttpParams;
15
16/** @extends HttpParams<array{}> */
17class OlzStartseiteParams extends HttpParams {
18}
19
20/** @extends OlzComponent<array<string, mixed>> */
21class OlzStartseite extends OlzComponent {
22    public static string $title = "Startseite";
23    public static string $description = "Eine Übersicht der Neuigkeiten und geplanten Anlässe der OL Zimmerberg.";
24
25    public function getHtml(mixed $args): string {
26        $this->httpUtils()->validateGetParams(OlzStartseiteParams::class);
27
28        $out = OlzHeader::render([
29            'description' => self::$description,
30        ], $this);
31
32        $out .= "<div class='content-full'>";
33
34        $banner_text = OlzEditableText::render(['snippet_id' => 22], $this);
35        if (trim(strip_tags($banner_text)) !== '' || $this->authUtils()->hasPermission('olz_text_22')) {
36            $out .= "<div id='important-banner' class='banner'>";
37            $out .= $banner_text;
38            $out .= "</div>";
39        }
40
41        $out .= OlzCustomizableHome::render([], $this);
42
43        $out .= "</div>";
44
45        $out .= OlzFooter::render([], $this);
46
47        return $out;
48    }
49}