예제 #1
0
 /**
  * Connects to the AUTH API in Teleserv to authenticate an agent against his HOME credentials.
  *
  * @return Zend_Auth_Result
  * @author Bryan Zarzuela
  * @throws Zend_Auth_Adapter_Exception
  */
 public function authenticate()
 {
     // This is not a real salt. I have to fix this one of these days.
     // Encrypt the password before sending over the wire.
     $password = sha1($this->_password . 'andpepper');
     $client = new Zend_Rest_Client($this->_url);
     $response = $client->authenticate($this->_username, $password)->post();
     if (!$response->isSuccess()) {
         throw new Zend_Auth_Adapter_Exception("Cannot authenticate");
     }
     if (!$response->success()) {
         return new Zend_Auth_Result(Zend_Auth_Result::FAILURE, null);
     }
     $data = unserialize($response->data());
     // var_dump($data);
     $identity = new Teleserv_Auth_Identity($data);
     return new Zend_Auth_Result(Zend_Auth_Result::SUCCESS, $identity);
 }