public function loginAction()
 {
     $userForm = new UserForm();
     $userForm->get('submit')->setValue('Sign In');
     $userForm->setAttribute('action', '/user')->prepare();
     $request = $this->getRequest();
     if (!$request->isPost()) {
         return new ViewModel(array('userForm' => $userForm));
     }
     $userFormData = $request->getPost();
     $userForm->setData($userFormData);
     if (!$userForm->isValid()) {
         return new ViewModel(array('userForm' => $userForm));
     }
     $authAdapter = $this->getAuthManager()->getAdapter();
     $authAdapter->setIdentityValue($userFormData['user']['email']);
     $authAdapter->setCredentialValue($userFormData['user']['password']);
     $this->getAuthManager()->authenticate();
     if (!$this->identity()) {
         $this->flashmessenger()->addMessage('Invalid credential.');
     }
     return new ViewModel(array('userForm' => $userForm, 'messages' => $this->flashmessenger()->getMessages()));
 }