Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
0.00% covered (danger)
0.00%
0 / 24
0.00% covered (danger)
0.00%
0 / 7
CRAP
0.00% covered (danger)
0.00%
0 / 1
TermineController
0.00% covered (danger)
0.00%
0 / 24
0.00% covered (danger)
0.00%
0 / 7
56
0.00% covered (danger)
0.00%
0 / 1
 termineList
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 termineDetail
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
 terminLocationsList
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 terminLocationDetail
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 terminTemplatesList
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 terminTemplateDetail
0.00% covered (danger)
0.00%
0 / 3
0.00% covered (danger)
0.00%
0 / 1
2
 termineICal
0.00% covered (danger)
0.00%
0 / 4
0.00% covered (danger)
0.00%
0 / 1
2
1<?php
2
3namespace Olz\Controller;
4
5use Olz\Termine\Components\OlzICal\OlzICal;
6use Olz\Termine\Components\OlzTerminDetail\OlzTerminDetail;
7use Olz\Termine\Components\OlzTermineList\OlzTermineList;
8use Olz\Termine\Components\OlzTerminLocationDetail\OlzTerminLocationDetail;
9use Olz\Termine\Components\OlzTerminLocationsList\OlzTerminLocationsList;
10use Olz\Termine\Components\OlzTerminTemplateDetail\OlzTerminTemplateDetail;
11use Olz\Termine\Components\OlzTerminTemplatesList\OlzTerminTemplatesList;
12use Olz\Utils\HttpUtils;
13use Psr\Log\LoggerInterface;
14use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
15use Symfony\Component\HttpFoundation\Request;
16use Symfony\Component\HttpFoundation\Response;
17use Symfony\Component\Routing\Annotation\Route;
18
19class TermineController extends AbstractController {
20    #[Route('/termine')]
21    public function termineList(
22        Request $request,
23        LoggerInterface $logger,
24        HttpUtils $httpUtils,
25        OlzTermineList $olzTermineList,
26    ): Response {
27        $httpUtils->countRequest($request, ['filter', 'von']);
28        $httpUtils->stripParams($request, ['von']);
29        $out = $olzTermineList->getHtml([]);
30        return new Response($out);
31    }
32
33    #[Route('/termine/{id}', requirements: ['id' => '\d+'])]
34    public function termineDetail(
35        Request $request,
36        LoggerInterface $logger,
37        HttpUtils $httpUtils,
38        OlzTerminDetail $olzTerminDetail,
39        int $id,
40    ): Response {
41        $httpUtils->countRequest($request, ['von']);
42        $httpUtils->stripParams($request, ['von']);
43        $out = $olzTerminDetail->getHtml(['id' => $id]);
44        return new Response($out);
45    }
46
47    #[Route('/termine/orte')]
48    public function terminLocationsList(
49        Request $request,
50        LoggerInterface $logger,
51        HttpUtils $httpUtils,
52        OlzTerminLocationsList $olzTerminLocationsList,
53    ): Response {
54        $httpUtils->countRequest($request);
55        $out = $olzTerminLocationsList->getHtml([]);
56        return new Response($out);
57    }
58
59    #[Route('/termine/orte/{id}', requirements: ['id' => '\d+'])]
60    public function terminLocationDetail(
61        Request $request,
62        LoggerInterface $logger,
63        HttpUtils $httpUtils,
64        OlzTerminLocationDetail $olzTerminLocationDetail,
65        int $id,
66    ): Response {
67        $httpUtils->countRequest($request);
68        $out = $olzTerminLocationDetail->getHtml(['id' => $id]);
69        return new Response($out);
70    }
71
72    #[Route('/termine/vorlagen')]
73    public function terminTemplatesList(
74        Request $request,
75        LoggerInterface $logger,
76        HttpUtils $httpUtils,
77        OlzTerminTemplatesList $olzTerminTemplatesList,
78    ): Response {
79        $httpUtils->countRequest($request);
80        $out = $olzTerminTemplatesList->getHtml([]);
81        return new Response($out);
82    }
83
84    #[Route('/termine/vorlagen/{id}', requirements: ['id' => '\d+'])]
85    public function terminTemplateDetail(
86        Request $request,
87        LoggerInterface $logger,
88        HttpUtils $httpUtils,
89        OlzTerminTemplateDetail $olzTerminTemplateDetail,
90        int $id,
91    ): Response {
92        $httpUtils->countRequest($request);
93        $out = $olzTerminTemplateDetail->getHtml(['id' => $id]);
94        return new Response($out);
95    }
96
97    #[Route('/olz_ical.ics')]
98    public function termineICal(
99        Request $request,
100        LoggerInterface $logger,
101        OlzICal $olzICal,
102    ): Response {
103        $out = $olzICal->getHtml([]);
104        $response = new Response($out);
105        $response->headers->set('Content-Type', 'text/calendar');
106        return $response;
107    }
108}