Esempio n. 1
0
 /**
  * Fetch a resource
  *
  * @api {get} API_DOMAIN/ginosi-link/users/:users_id User Details
  * @apiVersion 1.0.0
  * @apiName userDetails
  * @apiGroup User
  * @apiDescription This method return user details data for GinosiLink.
  *
  * @apiHeader {String} Content-Type application/json
  * @apiHeader {String} Authorization Bearer ACCESS_TOKEN
  *
  * @apiSuccessExample {json} Sample Response:
  *     HTTP/1.1 200 OK
  *     {
  *          "id": "12",
  *          "firstname": "App",
  *          "lastname": "User",
  *          "phone": "37455555555",
  *          "email": "*****@*****.**",
  *          "avatar": "https://images.ginosi.com/profile/387/1447849917_0_150.png",
  *          "department": "Engineering",
  *          "manager": "Tigran Petrosyan"
  *      }
  *
  * @param  mixed $id
  * @return ApiProblem|mixed
  */
 public function fetch($id)
 {
     try {
         $requestHandler = $this->serviceLocator->get('Service\\RequestHandler');
         $userManagerDao = new \DDD\Dao\User\UserManager($this->serviceLocator, 'ArrayObject');
         $user = $userManagerDao->getUserDataById($id);
         $user['manager'] = $user['manager_firstname'] . ' ' . $user['manager_lastname'];
         unset($user['manager_firstname']);
         unset($user['manager_lastname']);
         $user['avatar'] = 'https:' . Helper::getUserAvatar($user, 'big');
         return $user;
     } catch (\Exception $e) {
         return $requestHandler->handleException($e);
     }
 }