Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
22 / 22
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
UseraccountListByDepartment
100.00% covered (success)
100.00%
22 / 22
100.00% covered (success)
100.00%
1 / 1
3
100.00% covered (success)
100.00%
1 / 1
 readResponse
100.00% covered (success)
100.00%
22 / 22
100.00% covered (success)
100.00%
1 / 1
3
1<?php
2
3/**
4 * @package Zmsadmin
5 * @copyright BerlinOnline Stadtportal GmbH & Co. KG
6 **/
7
8namespace BO\Zmsadmin;
9
10use BO\Zmsentities\Collection\UseraccountList as Collection;
11use BO\Zmsentities\Exception\UserAccountMissingRights;
12use Psr\Http\Message\RequestInterface;
13use Psr\Http\Message\ResponseInterface;
14
15class UseraccountListByDepartment extends BaseController
16{
17    /**
18     * @SuppressWarnings(Param)
19     * @return ResponseInterface
20     */
21    public function readResponse(
22        RequestInterface $request,
23        ResponseInterface $response,
24        array $args
25    ) {
26        $departmentId = $args['id'];
27        $workstation = \App::$http->readGetResult('/workstation/', ['resolveReferences' => 1])->getEntity();
28        if (! $workstation->getUseraccount()->hasPermissions(['useraccount'])) {
29            throw new UserAccountMissingRights();
30        }
31
32        $success = $request->getAttribute('validator')->getParameter('success')->isString()->getValue();
33        $department = \App::$http->readGetResult("/department/$departmentId/", ['resolveReferences' => 0])->getEntity();
34
35        $result = \App::$http->readGetResult("/department/$departmentId/useraccount/", ['resolveReferences' => 0]);
36        $useraccountList = $result ? $result->getCollection() : new Collection();
37
38        $ownerList = \App::$http->readGetResult('/owner/', array('resolveReferences' => 2))->getCollection();
39
40        return \BO\Slim\Render::withHtml(
41            $response,
42            'page/useraccountList.twig',
43            array(
44                'title' => 'Nutzer',
45                'menuActive' => 'useraccount',
46                'workstation' => $workstation,
47                'department' => $department,
48                'useraccountListByDepartment' => $useraccountList,
49                'ownerlist' => $ownerList,
50                'success' => $success,
51            )
52        );
53    }
54}