Example #1
0
 /**
  * Sending SOAP request to gateway
  *
  * @param array $txnDetails
  * @return void
  */
 protected function _sendRequest($txnDetails)
 {
     if ($this->getConfigData('demo_mode')) {
         $url = self::WSDL_URL_DEMO;
     } else {
         $url = self::WSDL_URL_LIVE;
     }
     $client = new SoapClient($url);
     $parameters = array('username' => $this->getConfigData('username'), 'password' => $this->getConfigData('password'), 'txn_details' => $txnDetails);
     $debugData = array('request' => $parameters);
     try {
         $response = $client->ProcessPayment($parameters);
         $debugData['result'] = $response;
         $this->_debug($debugData);
         return (array) $response->ProcessPaymentResult;
     } catch (SoapFault $e) {
         $debugData['result'] = array('error' => $e->getMessage(), 'code' => $e->getCode());
         $this->_debug($debugData);
         if (strpos($e->getMessage(), ' ---> ') !== FALSE) {
             list($title, $error) = explode(' ---> ', $e->getMessage());
         } else {
             $error = $e->getMessage();
         }
         Mage::throwException(Mage::helper('flo2cash')->__('Gateway returned an error message: %s', $error));
     }
 }
Example #2
0
 /**
  * Sending SOAP request to gateway
  *
  * @param array $txnDetails
  * @return void
  */
 protected function _sendRequest($txnDetails)
 {
     if ($this->getConfigData('demo_mode')) {
         $url = self::WSDL_URL_DEMO;
     } else {
         $url = self::WSDL_URL_LIVE;
     }
     $client = new SoapClient($url);
     $parameters = array('username' => $this->getConfigData('username'), 'password' => $this->getConfigData('password'), 'txn_details' => $txnDetails);
     try {
         $response = $client->ProcessPayment($parameters);
         if ($this->getConfigData('debug_flag')) {
             $debug = AO::getModel('flo2cash/api_debug')->setRequestBody(print_r($parameters, true))->setResponseBody(print_r($response, true))->save();
         }
         return (array) $response->ProcessPaymentResult;
     } catch (SoapFault $e) {
         if ($this->getConfigData('debug_flag')) {
             $debug = AO::getModel('flo2cash/api_debug')->setRequestBody(print_r($parameters, true))->setException($e->getMessage())->save();
         }
         if (strpos($e->getMessage(), ' ---> ') !== FALSE) {
             list($title, $error) = explode(' ---> ', $e->getMessage());
         } else {
             $error = $e->getMessage();
         }
         AO::throwException(AO::helper('flo2cash')->__('Gateway returned an error message: %s', $error));
     }
 }