Skip to content

Commit

Permalink
Add protection against redifinition of payline options
Browse files Browse the repository at this point in the history
  • Loading branch information
trecouvr committed Nov 4, 2013
1 parent 917d783 commit 6e97b8c
Showing 1 changed file with 40 additions and 36 deletions.
76 changes: 40 additions & 36 deletions src/Payutc/Bom/Payline.php
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,46 @@
use \Payutc\Bom\Transaction;
use \Payutc\Wrapper\PaylineSdkWrapper;


if (!defined('__PAYUTC_PAYLINE_OPTIONS')) {
define('PAYMENT_CURRENCY', 978); // Default payment currency (ex: 978 = EURO)
define('ORDER_CURRENCY', PAYMENT_CURRENCY);
define('SECURITY_MODE', ''); // Protocol (ex: SSL = HTTPS)
define('LANGUAGE_CODE', ''); // Payline pages language
define('PAYMENT_ACTION', 101); // Default payment method
define('PAYMENT_MODE', 'CPT'); // Default payment mode
define('CANCEL_URL', ''); // Default cancel URL
define('NOTIFICATION_URL',''); // Default notification URL
define('RETURN_URL', ''); // Default return URL
define('CUSTOM_PAYMENT_TEMPLATE_URL', ''); // Default payment template URL
define('CUSTOM_PAYMENT_PAGE_CODE', '');
define('CONTRACT_NUMBER', Config::get('payline_contract_number')); // Contract type default (ex: 001 = CB, 003 = American Express...)
define('CONTRACT_NUMBER_LIST', '' ); // Contract type multiple values (separator: ;)
define('SECOND_CONTRACT_NUMBER_LIST', ''); // Contract type multiple values (separator: ;)

// Durées du timeout d'appel des webservices
define('PRIMARY_CALL_TIMEOUT', 15);
define('SECONDARY_CALL_TIMEOUT', 15);

// Nombres de tentatives sur les chaines primaire et secondaire par transaction
define('PRIMARY_MAX_FAIL_RETRY', 1);
define('SECONDARY_MAX_FAIL_RETRY', 2);

// Durées d'attente avant le rejoue de la transaction
define('PRIMARY_REPLAY_TIMER', 15);
define('SECONDARY_REPLAY_TIMER', 15);

define('PAYLINE_ERR_CODE', '02101,02102,02103'); // Codes erreurs payline qui signifie l'échec de la transaction
define('PAYLINE_WS_SWITCH_ENABLE', ''); // Nom des services web autorisés à basculer
define('PAYLINE_SWITCH_BACK_TIMER', 600); // Durées d'attente pour rebasculer en mode nominal
define('PRIMARY_TOKEN_PREFIX', '1'); // Préfixe du token sur le site primaire
define('SECONDARY_TOKEN_PREFIX', '2'); // Préfixe du token sur le site secondaire
define('INI_FILE' , __DIR__ . '/../../../vendor/payline/HighDefinition.ini'); // Chemin du fichier ini
define('PAYLINE_ERR_TOKEN', '02317,02318'); // Préfixe du token sur le site primaire
define('__PAYUTC_PAYLINE_OPTIONS', '__PAYUTC_PAYLINE_OPTIONS');
}


class Payline {

protected $payline = null;
Expand All @@ -27,42 +67,6 @@ class Payline {
* $service => Permet de loguer le service utilisé pour effectuer la requete (MADMIN / VENTEWEB ?)
*/
public function __construct($app_id, $service) {
// DEFINITION DES PARAMETRES DE CONFIG DE PAYLINE
define('PAYMENT_CURRENCY', 978); // Default payment currency (ex: 978 = EURO)
define('ORDER_CURRENCY', PAYMENT_CURRENCY);
define('SECURITY_MODE', ''); // Protocol (ex: SSL = HTTPS)
define('LANGUAGE_CODE', ''); // Payline pages language
define('PAYMENT_ACTION', 101); // Default payment method
define('PAYMENT_MODE', 'CPT'); // Default payment mode
define('CANCEL_URL', ''); // Default cancel URL
define('NOTIFICATION_URL',''); // Default notification URL
define('RETURN_URL', ''); // Default return URL
define('CUSTOM_PAYMENT_TEMPLATE_URL', ''); // Default payment template URL
define('CUSTOM_PAYMENT_PAGE_CODE', '');
define('CONTRACT_NUMBER', Config::get('payline_contract_number')); // Contract type default (ex: 001 = CB, 003 = American Express...)
define('CONTRACT_NUMBER_LIST', '' ); // Contract type multiple values (separator: ;)
define('SECOND_CONTRACT_NUMBER_LIST', ''); // Contract type multiple values (separator: ;)

// Durées du timeout d'appel des webservices
define('PRIMARY_CALL_TIMEOUT', 15);
define('SECONDARY_CALL_TIMEOUT', 15);

// Nombres de tentatives sur les chaines primaire et secondaire par transaction
define('PRIMARY_MAX_FAIL_RETRY', 1);
define('SECONDARY_MAX_FAIL_RETRY', 2);

// Durées d'attente avant le rejoue de la transaction
define('PRIMARY_REPLAY_TIMER', 15);
define('SECONDARY_REPLAY_TIMER', 15);

define('PAYLINE_ERR_CODE', '02101,02102,02103'); // Codes erreurs payline qui signifie l'échec de la transaction
define('PAYLINE_WS_SWITCH_ENABLE', ''); // Nom des services web autorisés à basculer
define('PAYLINE_SWITCH_BACK_TIMER', 600); // Durées d'attente pour rebasculer en mode nominal
define('PRIMARY_TOKEN_PREFIX', '1'); // Préfixe du token sur le site primaire
define('SECONDARY_TOKEN_PREFIX', '2'); // Préfixe du token sur le site secondaire
define('INI_FILE' , __DIR__ . '/../../../vendor/payline/HighDefinition.ini'); // Chemin du fichier ini
define('PAYLINE_ERR_TOKEN', '02317,02318'); // Préfixe du token sur le site primaire

// Appel du constructeur de paylineSDK
$this->payline = new PaylineSdkWrapper(
Config::get('payline_merchant_id'),
Expand Down

0 comments on commit 6e97b8c

Please sign in to comment.