Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
93.75% covered (success)
93.75%
15 / 16
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
OverallCalendar
93.75% covered (success)
93.75%
15 / 16
0.00% covered (danger)
0.00%
0 / 1
3.00
0.00% covered (danger)
0.00%
0 / 1
 readResponse
93.75% covered (success)
93.75%
15 / 16
0.00% covered (danger)
0.00%
0 / 1
3.00
1<?php
2
3namespace BO\Zmsadmin;
4
5use BO\Mellon\Validator;
6use BO\Zmsdb\Request;
7use BO\Zmsentities\Collection\RequestList;
8use BO\Zmsentities\Department as DepartmentEntity;
9use BO\Zmsentities\Collection\DepartmentList;
10use BO\Zmsentities\Exception\UserAccountMissingRights;
11
12class OverallCalendar extends BaseController
13{
14    /**
15     * @SuppressWarnings(Param)
16     * @return \Psr\Http\Message\ResponseInterface
17     */
18    #[\Override]
19    public function readResponse(
20        \Psr\Http\Message\RequestInterface $request,
21        \Psr\Http\Message\ResponseInterface $response,
22        array $args
23    ): \Psr\Http\Message\ResponseInterface {
24        $result = \App::$http->readGetResult('/workstation/', ['resolveReferences' => 3]);
25        if (!$result) {
26            throw new \Exception('Unable to retrieve workstation data');
27        }
28        $workstation = $result->getEntity();
29        if (!$workstation->getUseraccount()->hasPermissions(['overviewcalendar'])) {
30            throw new UserAccountMissingRights();
31        }
32
33        return \BO\Slim\Render::withHtml(
34            $response,
35            'page/overallCalendar.twig',
36            array(
37                'title' => 'Gesamtübersicht',
38                'workstation' => $workstation,
39                'menuActive' => 'overallcalendar',
40                'hideNavigation' => true,
41            )
42        );
43    }
44}