Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 30
0.00% covered (danger)
0.00%
0 / 6
CRAP
0.00% covered (danger)
0.00%
0 / 1
OtherPagesController
0.00% covered (danger)
0.00%
0 / 30
0.00% covered (danger)
0.00%
0 / 6
42
0.00% covered (danger)
0.00%
0 / 1
 datenschutz
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 fuerEinsteiger
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 angebot
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 angebotAudience
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 material
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 trophy
0.00% covered (danger)
0.00%
0 / 12
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Olz\Controller;
4
5use Olz\Components\OtherPages\OlzAngebot\OlzAngebot;
6use Olz\Components\OtherPages\OlzDatenschutz\OlzDatenschutz;
7use Olz\Components\OtherPages\OlzFuerEinsteiger\OlzFuerEinsteiger;
8use Olz\Termine\Utils\TermineUtils;
9use Olz\Utils\DateUtils;
10use Olz\Utils\EnvUtils;
11use Olz\Utils\HttpUtils;
12use Psr\Log\LoggerInterface;
13use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
14use Symfony\Component\HttpFoundation\RedirectResponse;
15use Symfony\Component\HttpFoundation\Request;
16use Symfony\Component\HttpFoundation\Response;
17use Symfony\Component\Routing\Annotation\Route;
18
19class OtherPagesController extends AbstractController {
20    #[Route('/datenschutz')]
21    public function datenschutz(
22        Request $request,
23        LoggerInterface $logger,
24        HttpUtils $httpUtils,
25        OlzDatenschutz $olzDatenschutz,
26    ): Response {
27        $httpUtils->countRequest($request);
28        $out = $olzDatenschutz->getHtml([]);
29        return new Response($out);
30    }
31
32    #[Route('/fuer_einsteiger')]
33    public function fuerEinsteiger(
34        Request $request,
35        LoggerInterface $logger,
36        HttpUtils $httpUtils,
37        OlzFuerEinsteiger $olzFuerEinsteiger,
38    ): Response {
39        $httpUtils->countRequest($request, ['von']);
40        $httpUtils->stripParams($request, ['von']);
41        $out = $olzFuerEinsteiger->getHtml([]);
42        return new Response($out);
43    }
44
45    #[Route('/angebot')]
46    public function angebot(
47        Request $request,
48        HttpUtils $httpUtils,
49        OlzAngebot $olzAngebot,
50    ): Response {
51        $httpUtils->countRequest($request);
52        $out = $olzAngebot->getHtml([]);
53        return new Response($out);
54    }
55
56    #[Route('/angebot/{audience}')]
57    public function angebotAudience(
58        Request $request,
59        HttpUtils $httpUtils,
60        OlzAngebot $olzAngebot,
61        string $audience,
62    ): Response {
63        $httpUtils->countRequest($request, ['von']);
64        $httpUtils->stripParams($request, ['von']);
65        $out = $olzAngebot->getHtml(['audience' => $audience]);
66        return new Response($out);
67    }
68
69    #[Route('/material')]
70    public function material(
71        Request $request,
72        HttpUtils $httpUtils,
73        EnvUtils $envUtils,
74    ): Response {
75        $httpUtils->countRequest($request);
76        $code_href = $envUtils->getCodeHref();
77        $url = "{$code_href}angebot";
78        return new RedirectResponse($url, 301, ['X-OLZ-Redirect' => 'material']);
79    }
80
81    #[Route('/trophy')]
82    public function trophy(
83        Request $request,
84        LoggerInterface $logger,
85        HttpUtils $httpUtils,
86        EnvUtils $envUtils,
87        TermineUtils $termineUtils,
88    ): Response {
89        $httpUtils->countRequest($request);
90        $dateUtils = new DateUtils();
91        $code_href = $envUtils->getCodeHref();
92        $this_year = $dateUtils->getCurrentDateInFormat('Y');
93        $filter = [
94            ...$termineUtils->getDefaultFilter(),
95            'typ' => 'trophy',
96            'datum' => strval($this_year),
97        ];
98        $serialized_filter = $termineUtils->serialize($filter);
99        $url = "{$code_href}termine?filter={$serialized_filter}";
100        return new RedirectResponse($url, 301, ['X-OLZ-Redirect' => 'trophy']);
101    }
102}