128 lines
5.7 KiB
PHP
128 lines
5.7 KiB
PHP
|
<?php
|
|||
|
/*
|
|||
|
* 2007-2011 PrestaShop
|
|||
|
*
|
|||
|
* NOTICE OF LICENSE
|
|||
|
*
|
|||
|
* This source file is subject to the Academic Free License (AFL 3.0)
|
|||
|
* that is bundled with this package in the file LICENSE.txt.
|
|||
|
* It is also available through the world-wide-web at this URL:
|
|||
|
* http://opensource.org/licenses/afl-3.0.php
|
|||
|
* If you did not receive a copy of the license and are unable to
|
|||
|
* obtain it through the world-wide-web, please send an email
|
|||
|
* to license@prestashop.com so we can send you a copy immediately.
|
|||
|
*
|
|||
|
* 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 <contact@prestashop.com>
|
|||
|
* @copyright 2007-2011 PrestaShop SA
|
|||
|
* @version Release: $Revision: 8063 $
|
|||
|
* @license http://opensource.org/licenses/afl-3.0.php Academic Free License (AFL 3.0)
|
|||
|
* International Registered Trademark & Property of PrestaShop SA
|
|||
|
*/
|
|||
|
|
|||
|
if (!defined('_PS_VERSION_'))
|
|||
|
exit;
|
|||
|
|
|||
|
if (!in_array('PrepaidServices', get_declared_classes())) include_once(_PS_MODULE_DIR_.'cashticket/PrepaidServices.php');
|
|||
|
|
|||
|
class CashTicket extends PrepaidServices
|
|||
|
{
|
|||
|
public $prefix = 'PS_CT_';
|
|||
|
protected $supported_languages = array('de', 'en', 'gr', 'el', 'es', 'it', 'fr', 'nl', 'pl', 'pt', 'si', 'sk', 'tr');
|
|||
|
protected $allowed_currencies = array();
|
|||
|
|
|||
|
protected $environments = array('P' => 'Production',
|
|||
|
'T' => 'Test');
|
|||
|
|
|||
|
protected $business_types = array('I' => 'Intangible',
|
|||
|
'T' => 'Tangible');
|
|||
|
|
|||
|
protected $payment_url = array('T' => 'https://customer.test.at.cash-ticket.com/ctcustomer/GetCustomerPanelServlet',
|
|||
|
'P' => 'https://customer.cc.at.cash-ticket.com/ctcustomer/GetCustomerPanelServlet');
|
|||
|
|
|||
|
protected $supported_currencies = array('CHF', 'DKK', 'SEK', 'PLN', 'GBP', 'EUR', 'USD', 'CZK');
|
|||
|
|
|||
|
protected $certificat_dir;
|
|||
|
|
|||
|
protected $register_url = array('en' => 'http://www.prestashop.com/partner/url.php?to=http://www.cash-ticket.com/uk',
|
|||
|
'fr' => 'http://www.prestashop.com/partner/url.php?to=http://www.cash-ticket.com/fr',
|
|||
|
'es' => 'http://www.prestashop.com/partner/url.php?to=http://www.cash-ticket.com/es');
|
|||
|
|
|||
|
public function __construct()
|
|||
|
{
|
|||
|
$this->name = 'cashticket';
|
|||
|
$this->tab = 'payments_gateways';
|
|||
|
$this->version = '1.3';
|
|||
|
$this->module_dir = dirname(__FILE__);
|
|||
|
$this->certificat_dir = dirname(__FILE__).'/keyring/';
|
|||
|
$this->need_instance = 0;
|
|||
|
|
|||
|
parent::__construct();
|
|||
|
|
|||
|
$this->displayName = $this->l('CashTicket');
|
|||
|
$this->description = $this->l('Accepts payments by CashTicket');
|
|||
|
|
|||
|
/* For 1.4.3 and less compatibility */
|
|||
|
$updateConfig = array('PS_OS_CHEQUE', 'PS_OS_PAYMENT', 'PS_OS_PREPARATION', 'PS_OS_SHIPPING', 'PS_OS_CANCELED', 'PS_OS_REFUND', 'PS_OS_ERROR', 'PS_OS_OUTOFSTOCK', 'PS_OS_BANKWIRE', 'PS_OS_PAYPAL', 'PS_OS_WS_PAYMENT');
|
|||
|
if (!Configuration::get('PS_OS_PAYMENT'))
|
|||
|
foreach ($updateConfig as $u)
|
|||
|
if (!Configuration::get($u) && defined('_'.$u.'_'))
|
|||
|
Configuration::updateValue($u, constant('_'.$u.'_'));
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
public function getL($key)
|
|||
|
{
|
|||
|
$translations = array(
|
|||
|
'disposition_created' => $this->l('Disposition created. Waiting for debit.'),
|
|||
|
'disposition_invalid' => $this->l('Invalid disposition state:'),
|
|||
|
'payment_error' => $this->l('An error has occurred during payment:'),
|
|||
|
'payment_accepted' => $this->l('Payment accepted.'),
|
|||
|
'curl_required' => $this->l('This module requires the curl PHP extension to function properly.'),
|
|||
|
'not_writable' => $this->l('is not writable!'),
|
|||
|
'currency_required' => $this->l('This module requires the currency: '),
|
|||
|
'configure_currency' => $this->l('Configure each currency individually:'),
|
|||
|
'payment_not_displayed' => $this->l('(The payment module won\'t be displayed for customers using non configured currency.)'),
|
|||
|
'configuration_in' => $this->l('Configuration in '),
|
|||
|
'merchant_id' => $this->l('Merchant ID'),
|
|||
|
'keyring_certificate' => $this->l('Keyring Certificate'),
|
|||
|
'keyring_pw' => $this->l('Keyring PW'),
|
|||
|
'configuration' => $this->l('Configuration'),
|
|||
|
'environment' => $this->l('Environment'),
|
|||
|
'business_type' => $this->l('Business Type'),
|
|||
|
'immediat_payment' => $this->l('Immediate Payment'),
|
|||
|
'update_configuration' => $this->l('Update configuration'),
|
|||
|
'certificate_required' => $this->l('You must provide a certificate for MERCHANT ID'),
|
|||
|
'invalid_file' => $this->l('Invalid file'),
|
|||
|
'invalid_merchant_id' => $this->l('Invalid Merchant ID'),
|
|||
|
'invalid_business_type' => $this->displayError('Invalid business type'),
|
|||
|
'invalid_environment' => $this->displayError('Invalid environment'),
|
|||
|
'settings_updated' => $this->l('Settings updated'),
|
|||
|
'file_partialy_uploaded' => $this->l('The file was partially uploaded'),
|
|||
|
'file_empty' => $this->l('The file is empty'),
|
|||
|
'cant_create_dispo' => $this->l('Transaction could not be initiated due to connection problems. If the problem persists, please contact our support.'),
|
|||
|
'disposition_consumed' => $this->l('Disposition consumed'),
|
|||
|
'payment_released' => $this->l('Disposition released'),
|
|||
|
'release_error' => $this->l('An error has occurred during the release.'),
|
|||
|
'introduction' => $this->l('Accept prepaid payments in your webshop. All that is required is the Cash-Ticket’s 16 digit pin code. This way, consumers can make online payments without a credit card or a bank account.'),
|
|||
|
'register' => $this->l('Learn more')
|
|||
|
);
|
|||
|
|
|||
|
return $translations[$key];
|
|||
|
}
|
|||
|
|
|||
|
protected function _getErrorMsgFromErrorCode($error_code)
|
|||
|
{
|
|||
|
$error_msg = array(1 => $this->l('An error has occurred, check Messages for more info.'),
|
|||
|
2 => $this->l('Invalid amount'));
|
|||
|
|
|||
|
return $error_msg[$error_code];
|
|||
|
}
|
|||
|
}
|
|||
|
|