Inheritance: extends Gc\Form\AbstractForm
Example #1
0
 /**
  * Login user
  *
  * @return \Zend\View\Model\ViewModel|array
  */
 public function loginAction()
 {
     if ($this->getServiceLocator()->get('Auth')->hasIdentity()) {
         $redirect = $this->getRouteMatch()->getParam('redirect');
         if (!empty($redirect)) {
             return $this->redirect()->toUrl(base64_decode($redirect));
         }
         return $this->redirect()->toRoute('admin');
     }
     $this->layout()->setTemplate('layouts/one-page.phtml');
     $loginForm = new UserLogin();
     $post = $this->getRequest()->getPost();
     if ($this->getRequest()->isPost() and $loginForm->setData($post->toArray()) and $loginForm->isValid()) {
         $userModel = new User\Model();
         $redirect = $loginForm->getValue('redirect');
         if ($userModel->authenticate($post->get('login'), $post->get('password'))) {
             if (!empty($redirect)) {
                 return $this->redirect()->toUrl(base64_decode($redirect));
             }
             return $this->redirect()->toRoute('admin');
         }
         $this->flashMessenger()->addErrorMessage('Can not connect');
         return $this->redirect()->toRoute('config/user/login', array('redirect' => $redirect));
     }
     $loginForm->get('redirect')->setValue($this->getRouteMatch()->getParam('redirect'));
     return array('form' => $loginForm);
 }