public function loginAction() { if (!is_null($this->session->getCurrentUser())) { $this->redirect('/'); } if (is_null($this->request->getPost('user')) || is_null($this->request->getPost('password'))) { throw new LoginException('Неверные данные формы авторизации.'); } $user = addslashes(trim(strip_tags($this->request->getPost('user')))); $password = addslashes(trim(strip_tags($this->request->getPost('password')))); $usersModel = new Users(); try { $currentUser = $usersModel->getUsersDataByLogPass($user, $password); } catch (\Exception $e) { throw new LoginException($e->getMessage()); } if ($currentUser['roles_id'] == self::BANNED) { throw new LoginException('Доступ временно запрещен. Обратитесь к администратору.'); } unset($currentUser['password']); $userObj = new User(); $userObj->fillData($currentUser); $this->session->setCurrentUser($userObj); echo json_encode(array('location' => '/')); exit; }