} } $jsons = json_encode($users); $response = new Response($jsons, 200); $response->headers->set('Content-Type', 'application/json'); $response->headers->set('Content-Length', strlen($jsons)); return $response; }); $app->post('/users', function (Request $request) { //if (0 === strpos($request->headers->get('Content-Type'), 'application/json')) { $data = json_decode($request->getContent(), true); $request->request->replace(is_array($data) ? $data : array()); //} $data = array('username' => $request->request->get('username'), 'firstName' => $request->request->get('firstName'), 'lastName' => $request->request->get('lastName')); //return new Response(json_encode($data),200); $repo = new \Notes\Persistence\Entity\MysqlUserRepository(); $userFactory = new \Notes\Domain\Entity\UserFactory(); $user = $userFactory->create(); if (isset($data['username'])) { $user->setUsername($data['username']); } if (isset($data['firstName'])) { $user->setFirstName($data['firstName']); } if (isset($data['lastName'])) { $user->setLastName($data['lastName']); } $repo->add($user); $jsons = json_encode([$user->getId()->__toString(), $user->getUsername(), $user->getFirstName(), $user->getLastName()]); $response = new Response($jsons, 201); $response->headers->set('Content-Type', 'application/json');
$app->get('/users', function () { $repo = new \Notes\Persistence\Entity\MysqlUserRepository(); $userArray = array(); $users = $repo->getUsers(); for ($i = 0; $i < $repo->count(); $i++) { $userArray[] = array_pop($users)->__toString(); } $jsons = json_encode($userArray); $response = new Response($jsons, 200); $response->headers->set('Content-Type', 'application/json'); $response->headers->set('Content-Length', strlen($jsons)); return $response; }); $app->post('/users', function (Request $request) { $payload = json_decode($request->getContent(), true); $repo = new \Notes\Persistence\Entity\MysqlUserRepository(); $newUser = new \Notes\Domain\Entity\User(new \Notes\Domain\ValueObject\Uuid()); if (isset($payload['username'])) { $newUser->setUsername($payload['username']); } if (isset($payload['password'])) { $newUser->setPassword($payload['password']); } if (isset($payload['email'])) { $newUser->setEmail($payload['email']); } if (isset($payload['firstName'])) { $newUser->setFirstName($payload['firstName']); } if (isset($payload['lastName'])) { $newUser->setLastName($payload['lastName']);