| @@ 867-910 (lines=44) @@ | ||
| 864 | return $params; |
|
| 865 | } |
|
| 866 | ||
| 867 | function sendTransactionToGateway($url, $parameters) { |
|
| 868 | $server = parse_url($url); |
|
| 869 | ||
| 870 | if (isset($server['port']) === false) { |
|
| 871 | $server['port'] = ($server['scheme'] == 'https') ? 443 : 80; |
|
| 872 | } |
|
| 873 | ||
| 874 | if (isset($server['path']) === false) { |
|
| 875 | $server['path'] = '/'; |
|
| 876 | } |
|
| 877 | ||
| 878 | $curl = curl_init($server['scheme'] . '://' . $server['host'] . $server['path'] . (isset($server['query']) ? '?' . $server['query'] : '')); |
|
| 879 | curl_setopt($curl, CURLOPT_PORT, $server['port']); |
|
| 880 | curl_setopt($curl, CURLOPT_HEADER, false); |
|
| 881 | curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); |
|
| 882 | curl_setopt($curl, CURLOPT_FORBID_REUSE, true); |
|
| 883 | curl_setopt($curl, CURLOPT_FRESH_CONNECT, true); |
|
| 884 | curl_setopt($curl, CURLOPT_POST, true); |
|
| 885 | curl_setopt($curl, CURLOPT_POSTFIELDS, $parameters); |
|
| 886 | ||
| 887 | if ( MODULE_PAYMENT_SAGE_PAY_DIRECT_VERIFY_SSL == 'True' ) { |
|
| 888 | curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true); |
|
| 889 | curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); |
|
| 890 | ||
| 891 | if ( is_file(OSCOM::getConfig('dir_root', 'Shop') . 'ext/modules/payment/sage_pay/sagepay.com.crt') ) { |
|
| 892 | curl_setopt($curl, CURLOPT_CAINFO, OSCOM::getConfig('dir_root', 'Shop') . 'ext/modules/payment/sage_pay/sagepay.com.crt'); |
|
| 893 | } elseif ( is_file(OSCOM::getConfig('dir_root', 'Shop') . 'includes/cacert.pem') ) { |
|
| 894 | curl_setopt($curl, CURLOPT_CAINFO, OSCOM::getConfig('dir_root', 'Shop') . 'includes/cacert.pem'); |
|
| 895 | } |
|
| 896 | } else { |
|
| 897 | curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); |
|
| 898 | } |
|
| 899 | ||
| 900 | if ( tep_not_null(MODULE_PAYMENT_SAGE_PAY_DIRECT_PROXY) ) { |
|
| 901 | curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, true); |
|
| 902 | curl_setopt($curl, CURLOPT_PROXY, MODULE_PAYMENT_SAGE_PAY_DIRECT_PROXY); |
|
| 903 | } |
|
| 904 | ||
| 905 | $result = curl_exec($curl); |
|
| 906 | ||
| 907 | curl_close($curl); |
|
| 908 | ||
| 909 | return $result; |
|
| 910 | } |
|
| 911 | ||
| 912 | // format prices without currency formatting |
|
| 913 | function format_raw($number, $currency_code = '', $currency_value = '') { |
|
| @@ 478-521 (lines=44) @@ | ||
| 475 | return $params; |
|
| 476 | } |
|
| 477 | ||
| 478 | function sendTransactionToGateway($url, $parameters) { |
|
| 479 | $server = parse_url($url); |
|
| 480 | ||
| 481 | if (isset($server['port']) === false) { |
|
| 482 | $server['port'] = ($server['scheme'] == 'https') ? 443 : 80; |
|
| 483 | } |
|
| 484 | ||
| 485 | if (isset($server['path']) === false) { |
|
| 486 | $server['path'] = '/'; |
|
| 487 | } |
|
| 488 | ||
| 489 | $curl = curl_init($server['scheme'] . '://' . $server['host'] . $server['path'] . (isset($server['query']) ? '?' . $server['query'] : '')); |
|
| 490 | curl_setopt($curl, CURLOPT_PORT, $server['port']); |
|
| 491 | curl_setopt($curl, CURLOPT_HEADER, false); |
|
| 492 | curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); |
|
| 493 | curl_setopt($curl, CURLOPT_FORBID_REUSE, true); |
|
| 494 | curl_setopt($curl, CURLOPT_FRESH_CONNECT, true); |
|
| 495 | curl_setopt($curl, CURLOPT_POST, true); |
|
| 496 | curl_setopt($curl, CURLOPT_POSTFIELDS, $parameters); |
|
| 497 | ||
| 498 | if ( MODULE_PAYMENT_SAGE_PAY_SERVER_VERIFY_SSL == 'True' ) { |
|
| 499 | curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true); |
|
| 500 | curl_setopt($curl, CURLOPT_SSL_VERIFYHOST, 2); |
|
| 501 | ||
| 502 | if ( is_file(OSCOM::getConfig('dir_root', 'Shop') . 'ext/modules/payment/sage_pay/sagepay.com.crt') ) { |
|
| 503 | curl_setopt($curl, CURLOPT_CAINFO, OSCOM::getConfig('dir_root', 'Shop') . 'ext/modules/payment/sage_pay/sagepay.com.crt'); |
|
| 504 | } elseif ( is_file(OSCOM::getConfig('dir_root', 'Shop') . 'includes/cacert.pem') ) { |
|
| 505 | curl_setopt($curl, CURLOPT_CAINFO, OSCOM::getConfig('dir_root', 'Shop') . 'includes/cacert.pem'); |
|
| 506 | } |
|
| 507 | } else { |
|
| 508 | curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); |
|
| 509 | } |
|
| 510 | ||
| 511 | if ( tep_not_null(MODULE_PAYMENT_SAGE_PAY_SERVER_PROXY) ) { |
|
| 512 | curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, true); |
|
| 513 | curl_setopt($curl, CURLOPT_PROXY, MODULE_PAYMENT_SAGE_PAY_SERVER_PROXY); |
|
| 514 | } |
|
| 515 | ||
| 516 | $result = curl_exec($curl); |
|
| 517 | ||
| 518 | curl_close($curl); |
|
| 519 | ||
| 520 | return $result; |
|
| 521 | } |
|
| 522 | ||
| 523 | // format prices without currency formatting |
|
| 524 | function format_raw($number, $currency_code = '', $currency_value = '') { |
|