$save_user = function (Request $request, Response $response) { $parser = new RequestParser($request); $data = $parser->getData(); $user = new User(); $user->hydrate($data); if (!empty($data['password'])) { $user->setPassword($data['password']); } $errors = $user->validateData(); if (!empty($errors)) { $new_response = $response->withStatus(400); $r = array("errors" => $errors); $new_response->getBody()->write(json_encode($r)); return $new_response; } $count = UserRepository::saveUser($user); $response->getBody()->write(json_encode($user)); return $response; }; $app->post('/user/save', $save_user); $delete_user = function (Request $request, Response $response) { $parser = new RequestParser($request); $data = $parser->getData(); if (empty($data['id'])) { $new_response = $response->withStatus(400); $new_response->getBody()->write("Must supply user id"); return $new_response; } $count = UserRepository::markUserAsDeleted($data['id']); if ($count < 1) { $new_response = $response->withStatus(404);