public function doRequest($url, $params = array())
 {
     $client = new Zend_Http_Client(trim($url), array());
     if (array_key_exists('raw', $params)) {
         $client->setRawData(json_encode($params['raw']), 'application/json');
     } else {
         $client->setParameterPost($params);
     }
     if (extension_loaded('curl')) {
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, true);
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, 2);
         $client->setAdapter($adapter);
     }
     $response = $client->request('POST');
     $res = $response->getBody();
     if ($response->isError()) {
         $this->log("Request fail. Http code : " . $response->getStatus() . ' Message : ' . $res, 'ERROR');
         $this->log("Request data : " . print_r($params, 1), 'ERROR');
         if (array_key_exists('raw', $params)) {
             return $response;
         }
     }
     if (array_key_exists('raw', $params)) {
         return json_decode($res, true);
     }
     $result = null;
     parse_str($res, $result);
     return $result;
 }
Exemplo n.º 2
0
 public function __construct()
 {
     $curl = new Zend_Http_Client_Adapter_Curl();
     $curl->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
     $curl->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
     $client = new Zend_Http_Client(null, array('adapter' => $curl));
     parent::__construct(null, $client);
 }
Exemplo n.º 3
0
 /**
  * @return Zend_Http_Client
  */
 public function getHttpClient()
 {
     $username = '******';
     $password = sha1('demo');
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setConfig(array('curloptions' => array(CURLOPT_HTTPAUTH => CURLAUTH_DIGEST, CURLOPT_USERPWD => "{$username}:{$password}")));
     $client = new Zend_Http_Client();
     $client->setAdapter($adapter);
     return $client;
 }
Exemplo n.º 4
0
 /**
  * Constructor
  * 
  * @param array $options
  */
 public function __construct(array $options)
 {
     $this->setOptions($options);
     // Force the curl adapter if it's available
     if (extension_loaded('curl')) {
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
         //$adapter->setCurlOption(CURLOPT_VERBOSE, false);
         $this->getHttpClient()->setAdapter($adapter);
     }
     $this->getHttpClient()->setConfig(array('timeout' => 15));
 }
Exemplo n.º 5
0
 protected function _getAdapter()
 {
     $email = $this->getHelper()->getAdminEmail();
     $apiKey = $this->getHelper()->getAdminApiKey();
     if (!$email && !$apiKey) {
         $this->throwException($this->getHelper()->__('Error Freshdesk email or API key'));
     }
     if ($apiKey) {
         $username = $apiKey;
         $password = self::DEFAULT_PASSWORD;
     } else {
         $username = $email;
         $password = $this->getHelper()->getPassword();
         if (!$password) {
             $this->throwException($this->getHelper()->__('Error Freshdesk password'));
         }
     }
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setCurlOption(CURLOPT_POST, true);
     $adapter->setCurlOption(CURLOPT_USERPWD, $username . ':' . $password);
     $adapter->setCurlOption(CURLOPT_RETURNTRANSFER, true);
     $adapter->setCurlOption(CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, 0);
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, 0);
     return $adapter;
 }
Exemplo n.º 6
0
 public function __construct()
 {
     $curl = new Zend_Http_Client_Adapter_Curl();
     $curl->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
     $curl->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
     /*$curl->setCurlOption(CURLOPT_FOLLOWLOCATION,true);
       $curl->setCurlOption(CURLOPT_PROTOCOLS,array(
           CURLPROTO_HTTP | CURLPROTO_HTTPS
       ));
       $curl->setCurlOption(CURLOPT_REDIR_PROTOCOLS,array(
           CURLPROTO_HTTP | CURLPROTO_HTTPS
       ));
       $curl->setCurlOption(CURLOPT_MAXREDIRS,30);*/
     $client = new Zend_Http_Client(null, array('adapter' => $curl));
     parent::__construct(null, $client);
 }
Exemplo n.º 7
0
 /**
  * Connect to the remote server
  *
  * Will try to connect to the proxy server. If no proxy was set, will
  * fall back to the target server (behave like regular Socket adapter)
  *
  * @param string  $host
  * @param int     $port
  * @param boolean $secure
  * @param int     $timeout
  */
 public function connect($host, $port = 80, $secure = false)
 {
     // If no proxy is set, fall back to Socket adapter
     if (!$this->config['proxy_host']) {
         return parent::connect($host, $port, $secure);
     }
     // If we are connected to a different server or port, disconnect first
     if ($this->curl && is_array($this->connected_to) && ($this->connected_to[0] != $host || $this->connected_to[1] != $port)) {
         $this->close();
     }
     // Do the actual connection
     $this->curl = curl_init();
     if ($port != 80) {
         curl_setopt($this->curl, CURLOPT_PORT, intval($port));
     }
     // Go through a proxy - the connection is actually to the proxy server
     $host = $this->config['proxy_host'];
     $port = $this->config['proxy_port'];
     //        curl_setopt ($this->curl, CURLOPT_HTTPPROXYTUNNEL, TRUE);
     //        curl_setopt ($this->curl, CURLOPT_PROXYTYPE, CURLPROXY_HTTP);
     curl_setopt($this->curl, CURLOPT_PROXY, $host . ":" . $port);
     if (!$this->curl) {
         $this->close();
         throw new Zend_Http_Client_Adapter_Exception('Unable to Connect to use proxy' . $host . ':' . $port);
     }
     // Update connected_to
     $this->connected_to = array($host, $port);
 }
 /**
  * Initialize curl
  *
  * @param  string  $host
  * @param  int     $port
  * @param  boolean $secure
  * @return void
  * @throws Zend_Http_Client_Adapter_Exception if unable to connect
  */
 public function connect($host, $port = 80, $secure = false)
 {
     parent::connect($host, $port, $secure);
     // for some reason the zend_http_client_adapter_curl only sets a timeout on
     // connecting, not on the reading.
     // So we override and set the same timeout being used for connecting as
     // the timeout for reading / writing.
     curl_setopt($this->_curl, CURLOPT_TIMEOUT, (int) $this->_config['timeout']);
 }
Exemplo n.º 9
0
 /**
  * @return Zend_Http_Client_Adapter_Curl
  */
 protected function _getAdapter()
 {
     $adapter = new Zend_Http_Client_Adapter_Curl();
     #$adapter->setCurlOption(CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, 2);
     $adapter->setCurlOption(CURLOPT_SSLVERSION, 1);
     $sslCiphersuiteList = $this->getSslCiphersuiteList();
     if (null !== $sslCiphersuiteList) {
         $this->set(CURLOPT_SSL_CIPHER_LIST, $sslCiphersuiteList);
     }
     $this->set(CURLOPT_CAINFO, Mage::getBaseDir('lib') . '/mpbackup/dropbox/certs/trusted-certs.crt');
     $this->set(CURLOPT_CAPATH, Mage::getBaseDir('lib') . '/mpbackup/dropbox/certs/');
     if (defined('CURLOPT_PROTOCOLS')) {
         $this->set(CURLOPT_PROTOCOLS, CURLPROTO_HTTPS);
     }
     if (defined('CURLOPT_REDIR_PROTOCOLS')) {
         $this->set(CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTPS);
     }
     return $adapter;
 }
Exemplo n.º 10
0
 /**
  * Get Zend_Http_Client with curl based adapter if
  * there is no openssl extension and curl extension is loaded
  * Returns Zend_Http_Client with default adapter otherwise
  * (so if there is a openssl extension, or non of ssl extension is loaded)
  *
  * @param bool $curlAllowAnyCertificate Should curl allow to connect using ssl without checking peer's certificate and host
  * @return Zend_Http_Client
  */
 public static function factoryGetZendHttpClient($curlAllowAnyCertificate = false)
 {
     $oZendHttpClient = new Zend_Http_Client();
     $aSslExtensions = self::getAvailableSSLExtensions();
     // get empty array if false
     $aSslExtensions = $aSslExtensions ? $aSslExtensions : array();
     $hasCurl = in_array('curl', $aSslExtensions);
     $hasOpenssl = in_array('openssl', $aSslExtensions);
     if ($hasCurl && !$hasOpenssl) {
         $oAdapter = new Zend_Http_Client_Adapter_Curl();
         $oAdapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
         // This CA file is also used in OA_XML_RPC_Client
         $oAdapter->setCurlOption(CURLOPT_CAINFO, MAX_PATH . '/etc/curl-ca-bundle.crt');
         if ($curlAllowAnyCertificate) {
             // Change curl option to turn off checking peer's host
             $oAdapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
         }
         $oZendHttpClient->setAdapter($oAdapter);
     }
     return $oZendHttpClient;
 }
Exemplo n.º 11
0
 /**
  * Delete content of media/js and media/css folders to refresh with updated compressed/minified js/css content
  * If disabled, the updates are done each time an original file is updated. Can be resource overload on live website.
  * 
  * @param Mage_Core_Model_Observer $observer
  */
 public function regenerateMediaFiles($observer)
 {
     if (Mage::getStoreConfigFlag('uioptimization/general/cronupdate') && (Mage::getStoreConfigFlag('uioptimization/csscompression/enabled') || Mage::getStoreConfigFlag('uioptimization/jscompression/enabled'))) {
         // Clean up media/css and media/js folders and recreate the folders if necessary
         try {
             Mage::getModel('core/design_package')->cleanMergedJsCss();
             Mage::dispatchEvent('clean_media_cache_after');
         } catch (Exception $e) {
             Mage::logException($e);
             return;
         }
         $stores = Mage::app()->getStores();
         foreach ($stores as $id => $v) {
             $url = Zend_Uri_Http::fromString(Mage::app()->getStore($id)->getBaseUrl());
             // Recreate the js and css compressed file by using the normal process
             try {
                 $curl = new Zend_Http_Client_Adapter_Curl();
                 $curl->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
                 $curl->setCurlOption(CURLOPT_SSL_VERIFYHOST, 1);
                 $curl->connect($url->getHost(), $url->getPort(), Mage_Core_Model_Store::isCurrentlySecure());
                 $curl->write(Zend_Http_Client::GET, $url);
                 $curl->close();
                 Mage::log('[Diglin_UIOptimization_Model_Observer] Update media js/css content for the different stores', ZEND_LOG::DEBUG);
             } catch (Exception $e) {
                 Mage::logException($e);
                 return;
             }
         }
     }
 }
 /**
  * @param Enlight_Config $config
  * @see https://github.com/paypal/sdk-core-php
  * @return Zend_Http_Client_Adapter_Curl|Zend_Http_Client_Adapter_Socket
  */
 public static function createAdapterFromConfig($config)
 {
     $curl = $config->get('paypalCurl', true);
     $sslVersion = $config->get('paypalSslVersion', 0);
     $timeout = $config->get('paypalTimeout') ?: 60;
     $userAgent = 'Shopware/' . Shopware::VERSION;
     if ($curl && extension_loaded('curl')) {
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setConfig(array('useragent' => $userAgent, 'timeout' => $timeout));
         if (!empty($config->paypalSandbox)) {
             $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
             $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
         }
         $adapter->setCurlOption(CURLOPT_TIMEOUT, $timeout);
         $adapter->setCurlOption(CURLOPT_SSLVERSION, $sslVersion);
         //$adapter->setCurlOption(CURLOPT_SSL_CIPHER_LIST, 'TLSv1');
         //$adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, 1);
         //$adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, 2);
     } else {
         $adapter = new Zend_Http_Client_Adapter_Socket();
         $adapter->setConfig(array('useragent' => $userAgent, 'timeout' => $timeout, 'ssltransport' => $sslVersion > 3 || $sslVersion == 1 ? 'tls' : 'ssl'));
     }
     return $adapter;
 }
Exemplo n.º 13
0
  /**
	 * Do request method
	 *
	 * @param string $url
	 * @param array $params
	 * @return array
	 */
	public function doRequest($url, $params=array(), $doParse = true)/*{{{*/
	{
		$client = new Zend_Http_Client($url, array(
			'useragent' => 'Shopware/' . Shopware()->Config()->Version
		));
		$client->setParameterPost($params);
		if (extension_loaded('curl')) {
			$adapter = new Zend_Http_Client_Adapter_Curl();
			$adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
			$adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
			$client->setAdapter($adapter);
		}
		$respone = $client->request('POST');
		$respone = $respone->getBody();

		//$respone = file_get_contents($url . '?' . http_build_query($params, '', '&'));

		$result = null;
    //$respone = str_replace('%2B' , ' ', $respone);
    if ($doParse){
      parse_str($respone, $result);
    } else {
      $result = $respone;
    }
		return $result;
	}/*}}}*/
 /**
  * Get package updaes
  * 
  * @param array $pkgList
  * @return boolean
  */
 public function getUpdates($pkgList = array())
 {
     $param = array();
     if ($pkgList) {
         foreach ($pkgList as $pkg) {
             $param[] = $pkg["key"];
         }
     }
     $config = $this->getConfig()->getConfiguration();
     $client = new Zend_Http_Client();
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setConfig(array('curloptions' => array(CURLOPT_BINARYTRANSFER => 1, CURLOPT_RETURNTRANSFER => FALSE, CURLOPT_FOLLOWLOCATION => TRUE, CURLOPT_SSL_VERIFYPEER => FALSE, CURLOPT_TIMEOUT => 10)));
     $client->setAdapter($adapter);
     $client->setUri($config->downloader->updates_url);
     $client->setMethod("POST");
     /* Paramater to post request */
     $client->setParameterPost(array('keys' => implode(",", $param)));
     $response = $client->request("POST");
     $result = Zend_Json::decode($response->getBody());
     if ($result["success"]) {
         return $result["updates"];
     } else {
         return FALSE;
     }
 }
Exemplo n.º 15
0
 /**
  * Attempt to download the extension archive file to var directory
  *
  * @param  Ash_Up_Model_Extension $extension
  * @return Ash_Up_Helper_Data
  */
 public function downloadArchive(Ash_Up_Model_Extension $extension)
 {
     $uri = $extension->getDownloadUri();
     $path = Mage::getConfig()->getVarDir('ash_installer/downloads');
     Mage::getConfig()->createDirIfNotExists($path);
     $archivePath = $path . DIRECTORY_SEPARATOR . $extension->getExtensionName() . '.zip';
     // configure client to download archive file
     $client = new Zend_Http_Client($uri);
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setConfig(array('curloptions' => array(CURLOPT_BINARYTRANSFER => true)));
     $client->setAdapter($adapter);
     $client->setStream($archivePath);
     // stream file to specified path
     $response = $client->request(Zend_Http_Client::GET);
     if ($response->getStatus() != 200) {
         Mage::throwException($this->__('Error downloading archive (%s): %s', $extension->getExtensionName(), $response->getMessage()));
     }
     // set archive path
     $extension->setLastDownloaded(time())->setArchivePath($archivePath)->save();
     return $this;
 }
Exemplo n.º 16
0
 /**
  * Constructor method
  * 
  * Expects a configuration parameter.
  *
  * @param Enlight_Config $config
  */
 public function __construct($config)
 {
     if(!empty($config->paypalSandbox)) {
         $url = self::URL_SANDBOX;
     } else {
         $url = self::URL_LIVE;
     }
     $this->apiUsername = $config->get('paypalUsername');
     $this->apiPassword = $config->get('paypalPassword');
     $this->apiSignature = $config->get('paypalSignature');
     $this->apiVersion = $config->get('paypalVersion');
     parent::__construct($url, array(
         'useragent' => 'Shopware/' . Shopware()->Config()->Version,
         'timeout' => 5,
     ));
     if (extension_loaded('curl')) {
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
         $adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
         $this->setAdapter($adapter);
     }
 }
Exemplo n.º 17
0
    /**
     * Returns xml rpc client
     *
     * @return Zend_XmlRpc_Client
     */
    protected function getClient()
    {
    	if($this->client === null) {
    		$this->client = new Zend_XmlRpc_Client($this->serverAddress);
    		if (extension_loaded('curl')) {
				$adapter = new Zend_Http_Client_Adapter_Curl();
				$adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
				$adapter->setCurlOption(CURLOPT_SSL_VERIFYHOST, false);
				$this->client->getHttpClient()->setAdapter($adapter);
			}
    	}
        return $this->client;
    }
Exemplo n.º 18
0
 /** DIBS API TOOLS END **/
 public function callDibsApi($payment, $amount, $action)
 {
     // We must have HMAC code for every transaction
     if (!($hmacCode = $this->helper_dibs_tools_conf('HMAC'))) {
         Mage::throwException('Error with HMAC code, please check HMAC code in module config');
     }
     // Create and set params for Http curl client
     $httpClient = new Zend_Http_Client();
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setCurlOption(CURLOPT_SSLVERSION, 3);
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
     $httpClient->setHeaders(array('Content-Type: text/json'));
     $httpClient->setUri(self::BASE_TRANSACTION_URL . "/{$action}");
     $httpClient->setMethod(Zend_Http_Client::POST);
     $httpClient->setAdapter($adapter);
     // prepare data for request
     $data = array('merchantId' => $this->helper_dibs_tools_conf('mid'), 'amount' => self::api_dibs_round($amount), 'transactionId' => self::getTransactionId($payment->getOrder()->getRealOrderId()));
     // We don't need to include amount in a MAC
     // calculation in a case of Cancel transaction
     if ($action == 'CancelTransaction') {
         unset($data['amount']);
     }
     $data['MAC'] = $this->api_dibs_calcMAC($data, $hmacCode);
     $httpClient->setParameterPost('json', Zend_Json::encode($data));
     // Do request and handle results
     try {
         $response = $httpClient->request();
         $phpNative = Zend_Json::decode($response->getBody());
         $status = $phpNative['status'];
         $message = $phpNative['declineReason'];
     } catch (Exception $e) {
         $message = ":  " . $e->getMessage();
     }
     return array('status' => $status, 'transaction_id' => $data['transactionId'], 'message' => $message);
 }
Exemplo n.º 19
0
 /**
  * @group ZF-7040
  */
 public function testGetCurlHandle()
 {
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setConfig(array('timeout' => 2, 'maxredirects' => 1));
     $adapter->connect("http://framework.zend.com");
     $this->assertTrue(is_resource($adapter->getHandle()));
 }
Exemplo n.º 20
0
 function shipping($arrDatosFinish)
 {
     $arrDatos['I1'] = $arrDatosFinish[0];
     $arrDatos['I2'] = $arrDatosFinish[1];
     $arrDatos['I3'] = $arrDatosFinish[2];
     $arrDatos['I4'] = $arrDatosFinish[3];
     $arrDatos['I5'] = $arrDatosFinish[4];
     $arrDatos['I6'] = $arrDatosFinish[5];
     $arrDatos['I7'] = $arrDatosFinish[6];
     $arrDatos['I8'] = $arrDatosFinish[7];
     $arrDatos['I9'] = $arrDatosFinish[8];
     $arrDatos['I10'] = $arrDatosFinish[9];
     try {
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setConfig($this->_config['curl']['pasarela']['options']);
         $client = new Zend_Http_Client($this->_config['curl']['pasarela']['url']);
         $client->setAdapter($adapter);
         $client->setParameterPost($arrDatos);
         $response = $client->request(Zend_Http_Client::POST);
         if (strpos($response, "<h5>Successfully subscribed:</h5>") !== false) {
             echo "<p>Added  to trainee email list successfully.</p>";
             exit;
         } else {
             if (strpos($response, "Already a member") !== false) {
                 echo "<p>Already a member of the trainee email list";
             } else {
                 var_dump($response);
                 exit;
                 echo 'enviado saltifactoriamente';
                 exit;
             }
         }
     } catch (Zend_Http_Client_Adapter_Curl_Exception $e) {
         echo $e;
         exit;
     } catch (Exception $ex) {
         echo $ex;
         exit;
     }
 }
 /**
  * Prepare package information
  * 
  * @return Fox_Extensionmanager_Model_Package 
  */
 public function _prepareInfo()
 {
     $this->setStatus(Fox_Extensionmanager_Model_Package_Status::PREPARING);
     try {
         $client = new Zend_Http_Client();
         $adapter = new Zend_Http_Client_Adapter_Curl();
         $adapter->setConfig(array('curloptions' => array(CURLOPT_BINARYTRANSFER => 1, CURLOPT_RETURNTRANSFER => FALSE, CURLOPT_FOLLOWLOCATION => TRUE, CURLOPT_SSL_VERIFYPEER => FALSE, CURLOPT_TIMEOUT => 10)));
         $client->setAdapter($adapter);
         $client->setUri($this->packageKey);
         $client->setMethod("POST");
         /* Paramater to post request */
         $client->setParameterPost(array('packageKey' => $this->packageKey, 'hashKey' => $this->getConfig()->getHashKey()));
         $response = $client->request("POST");
         $pkgInfo = Zend_Json::decode($response->getBody());
         if (isset($pkgInfo['success']) && $pkgInfo['success']) {
             $this->setPackageInfo($pkgInfo);
             $this->setStatus(Fox_Extensionmanager_Model_Package_Status::PREPARED);
             /* setting package to package session */
             $this->save();
         } else {
             $this->errors[] = "Access Denied!";
         }
     } catch (Exception $e) {
         /* $this->errors[] = $e->getMessage(); */
         $this->errors[] = "Unable to connect package store";
         $this->setStatus(Fox_Extensionmanager_Model_Package_Status::DEFAULT_STATUS);
     }
     return $this;
 }
Exemplo n.º 22
0
 public function doVerifyTransaction(array $options = array())
 {
     $this->setOptions($options);
     $this->_checkRequiredOptions(array('reservationnumber', 'merchantcode', 'amount', 'key'));
     $signedData = $this->_signRequest();
     $adapter = new Zend_Http_Client_Adapter_Curl();
     $adapter->setCurlOption(CURLOPT_SSL_VERIFYPEER, false);
     $client = new Zend_Http_Client(APPLICATION_ENV == 'production' ? $this->_VERIFY : $this->_TEST_VERIFY, array('adapter' => $adapter));
     $client->setMethod(Zend_Http_Client::POST);
     $client->setParameterPost('x_fp_hash', $signedData);
     $client->setParameterPost('x_login', $this->merchantcode);
     $client->setParameterPost('x_amount', $this->amount);
     $client->setParameterPost('x_currency_code', self::CURRENCY);
     $client->setParameterPost('x_fp_sequence', $this->reservationnumber);
     $client->setParameterPost('x_fp_timestamp', $this->x_fp_timestamp);
     $client->setParameterPost('x_description', "ADP");
     $result = $client->request();
     $body = $result->getBody();
     $contents = explode("\r\n", $body);
     preg_match_all('|(?<key>\\w+)=(?<value>\\w+)?&?|', $contents[0], $response);
     $response = array_combine($response['key'], $response['value']);
     if ($this->_validateHash($response) && $response['x_response_code'] == '1') {
         return 1;
     } else {
         return 0;
     }
 }