Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 2
CRAP
0.00% covered (danger)
0.00%
0 / 1
OlzAnniversaryTile
0.00% covered (danger)
0.00%
0 / 13
0.00% covered (danger)
0.00%
0 / 2
20
0.00% covered (danger)
0.00%
0 / 1
 getRelevance
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
12
 getHtml
0.00% covered (danger)
0.00%
0 / 10
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3// =============================================================================
4// Zeigt eine Startseiten-Kachel mit manuell eingegebenem Inhalt an.
5// =============================================================================
6
7namespace Olz\Startseite\Components\OlzAnniversaryTile;
8
9use Olz\Components\OtherPages\OlzAnniversaryRocket\OlzAnniversaryRocket;
10use Olz\Entity\Users\User;
11use Olz\Startseite\Components\AbstractOlzTile\AbstractOlzTile;
12
13class OlzAnniversaryTile extends AbstractOlzTile {
14    public function getRelevance(?User $user): float {
15        if (!$this->authUtils()->hasPermission('anniversary', $user)) {
16            return 0.0;
17        }
18        return ((bool) $user) ? 0.91 : 0.01;
19    }
20
21    public function getHtml(mixed $args): string {
22        $code_href = $this->envUtils()->getCodeHref();
23
24        $value = 0.33; // TODO: Read actual value
25        $done_hei = intval($value * 160);
26        $rocket_hei = intval($value * 160) - 30;
27        $rocket = OlzAnniversaryRocket::render();
28        return <<<ZZZZZZZZZZ
29            <a href='{$code_href}2026' class='anniversary-container'>
30                <h3 class='anniversary-h3'>🥳 20 Jahre OL Zimmerberg</h3>
31                <div class='all-bar'></div>
32                <div class='done-bar' style='height: {$done_hei}px;'></div>
33                <div class='rocket' style='bottom: {$rocket_hei}px;'>{$rocket}</div>
34            </a>
35            ZZZZZZZZZZ;
36    }
37}