/** * @return \Zend\Http\Response|ViewModel */ public function indexAction() { $form = new LoginForm(); $request = $this->getRequest(); if ($request->isPost()) { $form->setData($request->getPost()); if ($form->isValid()) { $data = $request->getPost()->toArray(); $authAdapter = $this->getServiceLocator()->get('SONUser\\Auth\\Adapter'); $authAdapter->setUsername($data['email']); $authAdapter->setPassword($data['password']); $auth = new AuthenticationService(); $sessionStorage = new SessionStorage('SONUser'); $auth->setStorage($sessionStorage); $result = $auth->authenticate($authAdapter); if ($result->isValid()) { $sessionStorage->write($auth->getIdentity()['user'], null); return $this->redirect()->toRoute('sonuser-admin/default', array('controller' => 'users')); } else { $this->error = true; } } } return new ViewModel(array('form' => $form, 'error' => $this->error)); }
public function indexAction() { $form = new LoginForm(); $error = false; $request = $this->getRequest(); if ($request->isPost()) { $form->setData($request->getPost()); if ($form->isValid()) { $data = $request->getPost()->toArray(); // Criando Storage para gravar sessão da authtenticação $sessionStorage = new SessionStorage("SONUser"); $auth = new AuthenticationService(); $auth->setStorage($sessionStorage); // Definindo o SessionStorage para a auth $authAdapter = $this->getServiceLocator()->get("SONUser\\Auth\\Adapter"); $authAdapter->setUsername($data['email']); $authAdapter->setPassword($data['password']); $result = $auth->authenticate($authAdapter); if ($result->isValid()) { $sessionStorage->write($auth->getIdentity()['user'], null); return $this->redirect()->toRoute('sonuser-admin/default', array('controller' => 'users')); } else { $error = true; } } } $view = new ViewModel(array('form' => $form, 'error' => $error)); return $view->setTerminal(true); }