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
OtherPagesController
0.00% covered (danger)
0.00%
0 / 22
0.00% covered (danger)
0.00%
0 / 4
20
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
 material
0.00% covered (danger)
0.00%
0 / 3
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\OlzDatenschutz\OlzDatenschutz;
6use Olz\Components\OtherPages\OlzFuerEinsteiger\OlzFuerEinsteiger;
7use Olz\Components\OtherPages\OlzMaterial\OlzMaterial;
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('/material')]
46    public function material(
47        Request $request,
48        LoggerInterface $logger,
49        HttpUtils $httpUtils,
50        OlzMaterial $olzMaterial,
51    ): Response {
52        $httpUtils->countRequest($request);
53        $out = $olzMaterial->getHtml([]);
54        return new Response($out);
55    }
56
57    #[Route('/trophy')]
58    public function trophy(
59        Request $request,
60        LoggerInterface $logger,
61        HttpUtils $httpUtils,
62        EnvUtils $envUtils,
63        TermineUtils $termineUtils,
64    ): Response {
65        $httpUtils->countRequest($request);
66        $dateUtils = new DateUtils();
67        $code_href = $envUtils->getCodeHref();
68        $this_year = $dateUtils->getCurrentDateInFormat('Y');
69        $filter = [
70            ...$termineUtils->getDefaultFilter(),
71            'typ' => 'trophy',
72            'datum' => strval($this_year),
73        ];
74        $serialized_filter = $termineUtils->serialize($filter);
75        $url = "{$code_href}termine?filter={$serialized_filter}";
76        return new RedirectResponse($url, 301, ['X-OLZ-Redirect' => 'trophy']);
77    }
78}