/** * Get iDEAL request object * * @param string $requestType Type of request (transaction, status or issuer) * * @return \IdealProRequest */ protected function getIdealRequest($requestType) { $params = $this->getIdealPaymentSettings(); if ('transaction' == $requestType) { $params['returnURL'] = $this->getReturnURL(null, true); } require_once \XLite\Module\XC\IdealPayments\Main::getLibClassesFile(); $className = '\\IdealPro' . ucfirst($requestType) . 'Request'; return new $className($params); }
/** * Send GET/POST data through sockets * * @param string $url * @param string $data * @param integer $timeout * * @return string */ protected function postToHost($url, $data) { $request = new \XLite\Core\HTTP\Request($url); $request->body = $data; $response = $request->sendRequest(); // Log request/response \XLite\Module\XC\IdealPayments\Main::addLog('Post request and response', array('request' => array('url' => $url, 'data' => $data), 'response' => '200' == $response->code ? $response->body : $response)); $result = ''; if ($response->code != '200') { $this->setError('Error while connecting to ' . $url, false, __FILE__, __LINE__); } else { $result = $response->body; } return $result; }