if (empty($data['message'])) { $_SESSION['error'] = "Empty status"; return $app->redirect('/statuses'); } $status = new Status(null, $data['user'], $data['message'], date('Y-m-d H:i:s')); $statusMapper->persist($status); if ($request->guessBestFormat() === 'json') { return new JsonResponse(json_encode('statuses/' . $status), 201); } return $app->redirect('/statuses'); }); // Matches if the HTTP method is POST -> /login $app->post('/login', function (Request $request) use($app, $userFinder) { $data['user'] = $request->getParameter('user'); $data['password'] = $request->getParameter('password'); if (Validation::validateConnection($data['user'], $data['password'])) { $data['error'] = 'Empty Username or password'; return $app->render('login.php', $data); } if (null == ($user = $userFinder->findOneByUserName($data['user']))) { $data['error'] = 'Unknown user'; return $app->render('login.php', $data); } if (!password_verify($data['password'], $user->getUserPassword())) { $data['error'] = 'Bad password'; return $app->render('login.php', $data); } $_SESSION['id'] = $user->getUserId(); $_SESSION['user'] = $user->getUserName(); $_SESSION['is_connected'] = true; return $app->redirect('/statuses');