/**
  * Meldet den Account mit der E-Mail Adresse und dem Passwort an
  * @param string $emailaddress
  * @param string $password
  * @throws InvalidArgumentException
  * @return array
  */
 public function loginAccount($emailaddress, $password)
 {
     $logicEmailaddress = new DragonX_Emailaddress_Logic_Emailaddress();
     $logicSession = new DragonX_Account_Logic_Session();
     list($recordAccount) = $logicEmailaddress->getAccount($emailaddress, $password);
     $sessionhash = $logicSession->loginAccount($recordAccount);
     return array('sessionhash' => $sessionhash);
 }
 /**
  * Meldet den übergebenen Account an
  */
 public function loginAction()
 {
     $redirect = $this->getOptionalParam('redirect', 'administration');
     try {
         $params = $this->getRequiredParams(array('emailaddress', 'password'));
         $logicEmailaddress = new DragonX_Emailaddress_Logic_Emailaddress();
         list($recordAccount) = $logicEmailaddress->getAccount($params['emailaddress'], $params['password']);
         $logicSession = new DragonX_Account_Logic_Session();
         $sessionNamespace = new Zend_Session_Namespace();
         $sessionNamespace->sessionhash = $logicSession->loginAccount($recordAccount);
     } catch (Exception $exception) {
         $this->_helper->FlashMessenger('<div class="alert alert-error">E-Mail Adresse oder Passwort nicht korrekt</div>');
         if ($redirect == 'administration') {
             $redirect = '';
         } else {
             $redirect = '?' . http_build_query(array('redirect' => $redirect));
         }
         $this->_redirect('account/showlogin' . $redirect);
     }
     $this->_helper->FlashMessenger('<div class="alert alert-success">Anmeldung erfolgreich</div>');
     $this->_redirect($redirect);
 }