Completed
Push — master ( fa3f4d...a9fd8a )
by Derek Stephen
01:42
created

UserController   A

Complexity

Total Complexity 3

Size/Duplication

Total Lines 47
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 3

Test Coverage

Coverage 0%

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 3
c 1
b 0
f 0
lcom 1
cbo 3
dl 0
loc 47
ccs 0
cts 15
cp 0
rs 10

2 Methods

Rating   Name   Duplication   Size   Complexity  
A indexAction() 0 12 2
A registerAction() 0 5 1
1
<?php
2
3
namespace App\Controller;
4
5
use Bone\Mvc\Controller;
6
use DateTime;
7
use Del\Common\ContainerService;
8
use Del\Service\UserService;
9
use OAuth\User;
10
11
class UserController extends Controller
12
{
13
    /**
14
     * Fetch user details
15
     * @SWG\Get(
16
     *     path="/user/{id}",
17
     *     tags={"users"},
18
     *     @SWG\Parameter(
19
     *         name="id",
20
     *         in="path",
21
     *         type="integer",
22
     *         description="the type of response",
23
     *         required=false,
24
     *         default=1
25
     *     ),
26
     *     @SWG\Response(response="200", description="Sends user details")
27
     * )
28
     *
29
     */
30
    public function indexAction()
31
    {
32
        $id = $this->getParam('id');
33
        /** @var UserService $userSvc */
34
        $userSvc = ContainerService::getInstance()->getContainer()['service.user'];
35
        /** @var User $user */
36
        $user = $userSvc->findUserById($id);
37
        if (!$user) {
38
            $this->sendJsonResponse(['User not found']);
39
        }
40
        $this->sendJsonResponse(['email' => $user->getEmail()]);
41
    }
42
43
    /**
44
     * Register as a new user.
45
     * @SWG\Post(
46
     *     path="/user/register",
47
     *     tags={"users"},
48
     *     @SWG\Response(response="200", description="Registers a new unactivated user")
49
     * )
50
     *
51
     */
52
    public function registerAction()
53
    {
54
        $date = new DateTime();
55
        $this->sendJsonResponse(['hello' => $date->format('Y-m-d H:i:s')]);
56
    }
57
}
58