Code Coverage
 
Lines
Functions and Methods
Classes and Traits
Total
100.00% covered (success)
100.00%
11 / 11
100.00% covered (success)
100.00%
1 / 1
CRAP
100.00% covered (success)
100.00%
1 / 1
RoleAdd
100.00% covered (success)
100.00%
11 / 11
100.00% covered (success)
100.00%
1 / 1
1
100.00% covered (success)
100.00%
1 / 1
 readResponse
100.00% covered (success)
100.00%
11 / 11
100.00% covered (success)
100.00%
1 / 1
1
1<?php
2
3namespace BO\Zmsapi;
4
5use BO\Slim\Render;
6use BO\Zmsdb\Role;
7use BO\Zmsentities\Role as RoleEntity;
8use Psr\Http\Message\RequestInterface;
9use Psr\Http\Message\ResponseInterface;
10use BO\Mellon\Validator;
11
12class RoleAdd extends BaseController
13{
14    public function readResponse(
15        RequestInterface $request,
16        ResponseInterface $response,
17        array $args
18    ) {
19        (new Helper\User($request, 1))->checkPermissions('superuser');
20
21        $input = Validator::input()->isJson()->assertValid()->getValue();
22        unset($input['id'], $input['assignedUserCount']);
23
24        $entity = new RoleEntity($input);
25        $entity->testValid();
26
27        $role = (new Role())->addRole($entity);
28        $message = Response\Message::create($request);
29        $message->data = $role;
30
31        $response = Render::withLastModified($response, time(), '0');
32        $response = Render::withJson($response, $message->setUpdatedMetaData(), $message->getStatuscode());
33        return $response;
34    }
35}