private function listUsers() { $viewModel = new ViewModel(); $viewModel->setTemplate('user/list'); $viewModel->setVariables(['users' => $this->userService->findAll()]); return $viewModel; }
public function createService(ServiceLocatorInterface $serviceLocator) { /** @var \Mongo\Db $db */ $db = $serviceLocator->get('Mongo\\Service\\Connector'); /** @var \User\Mapper\User $userMapper */ $userMapper = $serviceLocator->get('User\\Mapper\\User'); $userMapper->setDb($db); $userService = new User(); $userService->setUserMapper($userMapper); return $userService; }
/** * Try to authenticate. * * @return Result */ public function authenticate() { $mapper = $this->getMapper(); $user = $mapper->findByLogin($this->login); if (null === $user) { return new Result(Result::FAILURE_IDENTITY_NOT_FOUND, null, []); } $mapper->detach($user); if ($this->userService->loginAttemptsExceeded(LoginAttempt::TYPE_NORMAL, $user)) { return new Result(Result::FAILURE, null, []); } if (!$this->verifyPassword($this->password, $user->getPassword(), $user)) { $this->userService->logFailedLogin($user, LoginAttempt::TYPE_NORMAL); return new Result(Result::FAILURE_CREDENTIAL_INVALID, null, []); } return new Result(Result::SUCCESS, $user); }
/** * @return ViewModel * @throws \Exception */ public function forgotPasswordAction() { $form = new Form\ForgotPasswordForm('forgot-password', ['serviceLocator' => $this->getServiceLocator()]); if ($this->getRequest()->isPost()) { $form->setData($this->getRequest()->getPost()); if ($form->isValid()) { $userService = new Service\User($this->getServiceLocator()); try { $userService->forgotPassword($form); $this->flashMessenger()->addSuccessMessage('The confirmation email to reset your password is sent. Please check your email.'); return $this->redirect()->toRoute('home'); } catch (\Exception $exception) { throw $exception; } } } return new ViewModel(['form' => $form]); }
/** * Try to authenticate. * * @return Result */ public function authenticate() { $mapper = $this->getMapper(); $user = $mapper->findByLogin($this->lidnr); if (null === $user) { return new Result(Result::FAILURE_IDENTITY_NOT_FOUND, null, []); } if ($this->userService->loginAttemptsExceeded(LoginAttempt::TYPE_PIN, $user)) { return new Result(Result::FAILURE, null, []); } if (!$this->verifyPincode($user)) { $this->userService->logFailedLogin($user, LoginAttempt::TYPE_PIN); return new Result(Result::FAILURE_CREDENTIAL_INVALID, null, []); } /** * Users logging in in this way should not have all their regular roles. Since this login * method is less secure. */ $userRole = new UserRoleModel(); $userRole->setRole('sosuser'); $userRole->setLidnr($this->lidnr); $user->setRoles([$userRole]); return new Result(Result::SUCCESS, $user); }
<?php use User\Model\Db\Mysql\User as UserDB; use User\Service\User as UserService; // blogger/public/index.php require '../app/init.php'; $userService = new UserService(new UserDB($db)); $result = $userService->isValid($_POST); // Le formulaire a-t-il été validé ? if ($_SERVER['REQUEST_METHOD'] === 'POST') { if ($result['valid']) { $userService->create($result['vars']); } } else { $result['errors'] = []; } echo $view->render('user/form-save.phtml', array('errors' => $result['errors'], 'user' => $result['vars'])); //$users = $userDb->findAll(); // //$user = $userDb->find(array( // 'where' => array( // array( // 'operator' => null, // 'username' => '', // ), // array( // 'operator' => 'and', // 'password' => '1234', // ) // ) //));
/** * @test */ public function createMustBeReturnUserObject() { $result = $this->obj->create('Foo', '*****@*****.**'); $this->assertInstanceOf(UserInterface::class, $result); }
/** * @param ServiceLocatorInterface $sl * @return \User\Service\User */ public function createService(ServiceLocatorInterface $sl) { $service = new User(); $service->setAuthService($sl->get('User\\Service\\Auth')); return $service; }