예제 #1
0
<?php

include dirname(__FILE__) . '/../../config/config.inc.php';
include dirname(__FILE__) . '/gopay.php';
require_once _PS_MODULE_DIR_ . 'gopay/gopay_tools.php';
$gopayTools = new GopayTools();
$returnedPaymentSessionId = $_GET['paymentSessionId'];
$returnedGoId = $_GET['eshopGoId'];
$returnedOrderId = $_GET['variableSymbol'];
$returnedEncryptedSignature = $_GET['encryptedSignature'];
$goId = trim(Configuration::get('GOID'));
$gopaySecret = trim(Configuration::get('GOPAY_SECRET'));
$infopageUrl = trim(Configuration::get('GOPAY_INFOPAGE_URL'));
$order = new Order($returnedOrderId);
if (isset($order->id)) {
    $amount = round($order->total_paid * 100);
    $productNameConcat = $gopayTools->concatProductsNames($order);
    if (GopayHelper::checkPaymentIdentity($returnedGoId, $returnedPaymentSessionId, $returnedOrderId, $returnedEncryptedSignature, $goId, $order->id, $gopaySecret)) {
        $result = GopaySoap::isEshopPaymentDone($returnedPaymentSessionId, $goId, $order->id, $amount, $productNameConcat, $gopaySecret);
    } else {
        header('HTTP/1.1 500 Internal Server Error');
        exit(0);
    }
    if ($order->getCurrentState() == _PS_OS_GOPAY_ || $order->getCurrentState() == _PS_OS_OUTOFSTOCK_) {
        $gpErrors = $gopayTools->processPayment($result, $order->id);
    }
} else {
    header('HTTP/1.1 500 Internal Server Error');
    exit(0);
}
예제 #2
0
파일: pay.php 프로젝트: greench/prestashop
<?php

include_once dirname(__FILE__) . '/../../config/config.inc.php';
include_once dirname(__FILE__) . '/gopay.php';
include_once dirname(__FILE__) . '/gopay_tools.php';
include_once dirname(__FILE__) . '/country_code.php';
$gpErrors = '';
$gopay = new Gopay();
$gopayTools = new GopayTools();
// parametry zadane v konfiguraci
$goId = trim(Configuration::get('GOID'));
$gopaySecret = trim(Configuration::get('GOPAY_SECRET'));
$failedUrl = trim(Configuration::get('GOPAY_FAILED_URL'));
$successUrl = trim(Configuration::get('GOPAY_SUCCESS_URL'));
$gwUrl = trim(Configuration::get('GOPAY_GW_URL'));
$infopageUrl = trim(Configuration::get('GOPAY_INFOPAGE_URL'));
// redirect param
$param = $_POST['param'];
// cart z parametru
$cartId = $_POST['cartId'];
$cart = new Cart($cartId);
$paymentChannels = array();
foreach ($_POST as $key) {
    if (substr($key, 0, 13) == "method_gopay_") {
        $paymentChannels[] = substr($key, 13);
    }
}
// castka predavana validateOrder
$cartSummary = $cart->getSummaryDetails();
$nonConvertedAmount = $cartSummary['total_price'];
if ($cart->OrderExists()) {