Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
94.44% covered (success)
94.44%
34 / 36
0.00% covered (danger)
0.00%
0 / 1
CRAP
0.00% covered (danger)
0.00%
0 / 1
UseraccountList
94.44% covered (success)
94.44%
34 / 36
0.00% covered (danger)
0.00%
0 / 1
7.01
0.00% covered (danger)
0.00%
0 / 1
 readResponse
94.44% covered (success)
94.44%
34 / 36
0.00% covered (danger)
0.00%
0 / 1
7.01
1<?php
2
3/**
4 *
5 * @package Zmsadmin
6 * @copyright BerlinOnline Stadtportal GmbH & Co. KG
7 *
8 */
9
10namespace BO\Zmsadmin;
11
12use BO\Zmsentities\Collection\UseraccountList as Collection;
13use Psr\Http\Message\RequestInterface;
14use Psr\Http\Message\ResponseInterface;
15
16class UseraccountList extends BaseController
17{
18    /**
19     * @SuppressWarnings(Param)
20     * @return ResponseInterface
21     */
22    public function readResponse(
23        RequestInterface $request,
24        ResponseInterface $response,
25        array $args
26    ) {
27        $workstation = \App::$http->readGetResult('/workstation/', ['resolveReferences' => 1])->getEntity();
28        $ownerList = \App::$http->readGetResult('/owner/', array('resolveReferences' => 2))->getCollection();
29        $validator = $request->getAttribute('validator');
30        $success = $validator->getParameter('success')->isString()->getValue();
31        $queryString = $validator->getParameter('query')
32            ->isString()
33            ->getValue();
34
35        $useraccountList = new Collection();
36        if ($workstation->hasSuperUseraccount()) {
37            $params = ["resolveReferences" => 0];
38            if ($queryString !== null && $queryString !== '') {
39                $params['query'] = $queryString;
40            }
41            $useraccountList = \App::$http->readGetResult("/useraccount/", $params)->getCollection();
42        } else {
43            $workstation = \App::$http->readGetResult('/workstation/', ['resolveReferences' => 2])->getEntity();
44            $departmentList = $workstation->getUseraccount()->getDepartmentList();
45            $departmentListIds = $departmentList->getIds();
46
47            if (!empty($departmentListIds)) {
48                $params = ['resolveReferences' => 0];
49                if ($queryString !== null && $queryString !== '') {
50                    $params['query'] = $queryString;
51                }
52                $useraccountList = \App::$http
53                    ->readGetResult('/department/' . implode(',', $departmentListIds) . '/useraccount/', $params)
54                    ->getCollection();
55            }
56        }
57
58        return \BO\Slim\Render::withHtml(
59            $response,
60            'page/useraccountList.twig',
61            array(
62                'title' => 'Nutzer',
63                'menuActive' => 'useraccount',
64                'workstation' => $workstation,
65                'useraccountList' => $useraccountList,
66                'searchUserQuery' => $queryString,
67                'ownerlist' => $ownerList,
68                'success' => $success,
69            )
70        );
71    }
72}