Example #1
0
* DISCLAIMER
*
* Do not edit or add to this file if you wish to upgrade PrestaShop to newer
* versions in the future. If you wish to customize PrestaShop for your
* needs please refer to http://www.prestashop.com for more information.
*
*  @author PrestaShop SA <*****@*****.**>
*  @copyright  2007-2011 PrestaShop SA
*  @version  Release: $Revision: 6594 $
*  @license    http://opensource.org/licenses/afl-3.0.php  Academic Free License (AFL 3.0)
*  International Registered Trademark & Property of PrestaShop SA
*/
include dirname(__FILE__) . '/../../config/config.inc.php';
include dirname(__FILE__) . '/../../init.php';
include dirname(__FILE__) . '/paysafecard.php';
$module = new PaysafeCard();
if (!$cart->id or $cart->id_customer == 0 or $cart->id_address_delivery == 0 or $cart->id_address_invoice == 0 or !$module->active) {
    Tools::redirect('order.php?step=3');
}
$currency = new Currency($cart->id_currency);
if (!$module->isCurrencyActive($currency->iso_code)) {
    Tools::redirect('order.php?step=3');
}
$result = $module->createDisposition($cart);
if ($result['return_code'] != 0) {
    include dirname(__FILE__) . '/../../header.php';
    echo $module->getL('cant_create_dispo');
    include dirname(__FILE__) . '/../../footer.php';
} else {
    Tools::redirectLink($result['message']);
}
Example #2
0
if (!$module->isCurrencyActive($currency->iso_code)) {
    Tools::redirect('order.php?step=3');
}
$amount = number_format((double) $cart->getOrderTotal(true, Cart::BOTH), 2, '.', '');
if (Tools::getValue('hash') != md5(Configuration::get($module->prefix . 'SALT') + $amount + $currency->iso_code)) {
    die(Tools::displayError());
}
$result = $module->getDispositionState((int) $cart->id);
$state = Configuration::get('PS_OS_ERROR');
$disposition = PSCDisposition::getByCartId((int) $cart->id);
$message = 'Transaction ID #' . $disposition['mtid'] . ': ' . $disposition['amount'] . $disposition['currency'] . '<br />' . date('Y-m-d') . ' ';
if ($result[0] == 0) {
    list($rc, $errorcode, $error_message, $amount, $used_currency, $state) = $result;
    if ($state == PSCPrepaidServicesAPI::DISPOSITION_DISPOSED || $state == PSCPrepaidServicesAPI::DISPOSITION_DEBITED) {
        $state = Configuration::get('PS_OS_PAYMENT');
        $message .= $module->getL('disposition_created');
    } else {
        $message .= $module->getL('disposition_invalid') . ' ' . $state;
    }
} else {
    $message .= 'payment_error' . ' ' . $result[2];
}
if ($state != Configuration::get('PS_OS_ERROR')) {
    $state = (int) Configuration::get($module->prefix . 'ORDER_STATE_ID');
    if (Configuration::get($module->prefix . 'IMMEDIAT_PAYMENT')) {
        $message .= '<br />' . date('Y-m-d') . ' ';
        $result = $module->executeDebit((int) $cart->id);
        if ($result[0] != 0) {
            $message .= $module->getL('payment_error') . ' ' . $result[2];
            $state = Configuration::get('PS_OS_ERROR');
        } else {