Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 26
0.00% covered (danger)
0.00%
0 / 5
CRAP
0.00% covered (danger)
0.00%
0 / 1
OtherPagesController
0.00% covered (danger)
0.00%
0 / 26
0.00% covered (danger)
0.00%
0 / 5
30
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
 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('/material')]
57    public function material(
58        Request $request,
59        HttpUtils $httpUtils,
60        EnvUtils $envUtils,
61    ): Response {
62        $httpUtils->countRequest($request);
63        $code_href = $envUtils->getCodeHref();
64        $url = "{$code_href}angebot";
65        return new RedirectResponse($url, 301, ['X-OLZ-Redirect' => 'material']);
66    }
67
68    #[Route('/trophy')]
69    public function trophy(
70        Request $request,
71        LoggerInterface $logger,
72        HttpUtils $httpUtils,
73        EnvUtils $envUtils,
74        TermineUtils $termineUtils,
75    ): Response {
76        $httpUtils->countRequest($request);
77        $dateUtils = new DateUtils();
78        $code_href = $envUtils->getCodeHref();
79        $this_year = $dateUtils->getCurrentDateInFormat('Y');
80        $filter = [
81            ...$termineUtils->getDefaultFilter(),
82            'typ' => 'trophy',
83            'datum' => strval($this_year),
84        ];
85        $serialized_filter = $termineUtils->serialize($filter);
86        $url = "{$code_href}termine?filter={$serialized_filter}";
87        return new RedirectResponse($url, 301, ['X-OLZ-Redirect' => 'trophy']);
88    }
89}