Version Notes
Fixed API inheritance issue introduced with Magento 1.8.1.0/1.13.1.0, which broke PayFlow billing agreements
Download this release
Release Info
| Developer | Classy Llama |
| Extension | CLS_Paypal_Credit_Card_Tokenization |
| Version | 1.0.9 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.8 to 1.0.9
- app/code/community/CLS/Paypal/CHANGELOG.txt +4 -0
- app/code/community/CLS/Paypal/Model/Paypaluk/Api/Express/Nvp.php +136 -0
- app/code/community/CLS/Paypal/Model/Paypaluk/Api/Nvp.php +26 -94
- app/code/community/CLS/Paypal/Model/Paypaluk/Api/Nvp/Common.php +236 -0
- app/code/community/CLS/Paypal/Model/Paypaluk/Method/Agreement.php +1 -1
- app/code/community/CLS/Paypal/Model/Paypaluk/Method/Orderstored/Agreement.php +1 -1
- app/code/community/CLS/Paypal/etc/config.xml +3 -2
- package.xml +5 -5
app/code/community/CLS/Paypal/CHANGELOG.txt
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
CLS_Paypal 1.0.8 (3/19/2014)
|
| 2 |
=======================================
|
| 3 |
[ADDED] Implemented support for "Previously Used" methods when re-ordering in admin
|
| 1 |
+
CLS_Paypal 1.0.9 (3/25/2014)
|
| 2 |
+
=======================================
|
| 3 |
+
[FIXED] Fixed API inheritance issue introduced with Magento 1.8.1.0/1.13.1.0, which broke PayFlow billing agreements
|
| 4 |
+
|
| 5 |
CLS_Paypal 1.0.8 (3/19/2014)
|
| 6 |
=======================================
|
| 7 |
[ADDED] Implemented support for "Previously Used" methods when re-ordering in admin
|
app/code/community/CLS/Paypal/Model/Paypaluk/Api/Express/Nvp.php
ADDED
|
@@ -0,0 +1,136 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
/**
|
| 3 |
+
* Classy Llama
|
| 4 |
+
*
|
| 5 |
+
* NOTICE OF LICENSE
|
| 6 |
+
*
|
| 7 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 8 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 9 |
+
* It is also available through the world-wide-web at this URL:
|
| 10 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 11 |
+
* If you did not receive a copy of the license and are unable to
|
| 12 |
+
* obtain it through the world-wide-web, please send an email to us at
|
| 13 |
+
* support+paypal@classyllama.com so we can send you a copy immediately.
|
| 14 |
+
*
|
| 15 |
+
* DISCLAIMER
|
| 16 |
+
*
|
| 17 |
+
* Do not edit or add to this file if you wish to upgrade this module
|
| 18 |
+
* to newer versions in the future. If you require customizations of this
|
| 19 |
+
* module for your needs, please write us at sales@classyllama.com.
|
| 20 |
+
*
|
| 21 |
+
* To report bugs or issues with this module, please email support+paypal@classyllama.com.
|
| 22 |
+
*
|
| 23 |
+
* @category CLS
|
| 24 |
+
* @package Paypal
|
| 25 |
+
* @copyright Copyright (c) 2013 Classy Llama Studios, LLC (http://www.classyllama.com)
|
| 26 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 27 |
+
*/
|
| 28 |
+
|
| 29 |
+
class CLS_Paypal_Model_Paypaluk_Api_Express_Nvp extends Mage_PaypalUk_Model_Api_Express_Nvp
|
| 30 |
+
{
|
| 31 |
+
protected $_commonNvp = null;
|
| 32 |
+
|
| 33 |
+
protected function _construct()
|
| 34 |
+
{
|
| 35 |
+
parent::_construct();
|
| 36 |
+
|
| 37 |
+
$this->_commonNvp = Mage::getModel('cls_paypal/paypaluk_api_nvp_common', array('nvp_instance' => $this));
|
| 38 |
+
|
| 39 |
+
$this->_globalMap = $this->_commonNvp->processGlobalMap($this->_globalMap);
|
| 40 |
+
|
| 41 |
+
$this->_createBillingAgreementRequest = $this->_commonNvp->processTransactionMap('create_ba_request', $this->_createBillingAgreementRequest);
|
| 42 |
+
$this->_createBillingAgreementResponse = $this->_commonNvp->processTransactionMap('create_ba_response', $this->_createBillingAgreementResponse);
|
| 43 |
+
$this->_updateBillingAgreementRequest = $this->_commonNvp->processTransactionMap('update_ba_request', $this->_updateBillingAgreementRequest);
|
| 44 |
+
$this->_updateBillingAgreementResponse = $this->_commonNvp->processTransactionMap('update_ba_response', $this->_updateBillingAgreementResponse);
|
| 45 |
+
$this->_doReferenceTransactionRequest = $this->_commonNvp->processTransactionMap('do_ref_trans_request', $this->_doReferenceTransactionRequest);
|
| 46 |
+
$this->_doReferenceTransactionResponse = $this->_commonNvp->processTransactionMap('do_ref_trans_response', $this->_doReferenceTransactionResponse);
|
| 47 |
+
$this->_debugReplacePrivateDataKeys = $this->_commonNvp->processTransactionMap('debug_replace_private', $this->_debugReplacePrivateDataKeys);
|
| 48 |
+
$this->_setExpressCheckoutRequest = $this->_commonNvp->processTransactionMap('set_expr_checkout_request', $this->_setExpressCheckoutRequest);
|
| 49 |
+
$this->_customerBillingAgreementRequest = $this->_commonNvp->processTransactionMap('customer_ba_request', $this->_customerBillingAgreementRequest);
|
| 50 |
+
}
|
| 51 |
+
|
| 52 |
+
/**
|
| 53 |
+
* Get Paypal info code
|
| 54 |
+
*
|
| 55 |
+
* @return string
|
| 56 |
+
*/
|
| 57 |
+
public function getPaypalInfoCode()
|
| 58 |
+
{
|
| 59 |
+
return $this->_commonNvp->getPaypalInfoCode();
|
| 60 |
+
}
|
| 61 |
+
|
| 62 |
+
/**
|
| 63 |
+
* Return PaypalUk tender based on config data
|
| 64 |
+
*
|
| 65 |
+
* @return string
|
| 66 |
+
*/
|
| 67 |
+
public function getTender()
|
| 68 |
+
{
|
| 69 |
+
$value = $this->_commonNvp->getTender($this->_config);
|
| 70 |
+
if ($value === FALSE) {
|
| 71 |
+
$value = parent::getTender();
|
| 72 |
+
}
|
| 73 |
+
return $value;
|
| 74 |
+
}
|
| 75 |
+
|
| 76 |
+
/**
|
| 77 |
+
* Add method to request array
|
| 78 |
+
*
|
| 79 |
+
* @param string $methodName
|
| 80 |
+
* @param array $request
|
| 81 |
+
* @return array
|
| 82 |
+
*/
|
| 83 |
+
protected function _addMethodToRequest($methodName, $request)
|
| 84 |
+
{
|
| 85 |
+
$txnType = $this->_mapPaypalMethodName($methodName);
|
| 86 |
+
if ($txnType) {
|
| 87 |
+
return parent::_addMethodToRequest($methodName, $request);
|
| 88 |
+
} else {
|
| 89 |
+
if (!is_null($this->_getPaypalUkActionName($methodName))) {
|
| 90 |
+
$request['ACTION'] = $this->_getPaypalUkActionName($methodName);
|
| 91 |
+
}
|
| 92 |
+
return $request;
|
| 93 |
+
}
|
| 94 |
+
}
|
| 95 |
+
|
| 96 |
+
/**
|
| 97 |
+
* Return Payflow Edition
|
| 98 |
+
*
|
| 99 |
+
* @param string
|
| 100 |
+
* @return string | null
|
| 101 |
+
*/
|
| 102 |
+
protected function _getPaypalUkActionName($methodName)
|
| 103 |
+
{
|
| 104 |
+
$value = $this->_commonNvp->getPaypalUkActionName($methodName);
|
| 105 |
+
if ($value === FALSE) {
|
| 106 |
+
$value = parent::_getPaypalUkActionName($methodName);
|
| 107 |
+
}
|
| 108 |
+
return $value;
|
| 109 |
+
}
|
| 110 |
+
|
| 111 |
+
/**
|
| 112 |
+
* Map paypal method names
|
| 113 |
+
*
|
| 114 |
+
* @param string| $methodName
|
| 115 |
+
* @return string
|
| 116 |
+
*/
|
| 117 |
+
protected function _mapPaypalMethodName($methodName)
|
| 118 |
+
{
|
| 119 |
+
$value = $this->_commonNvp->mapPaypalMethodName($methodName, $this->_config);
|
| 120 |
+
if ($value === FALSE) {
|
| 121 |
+
$value = parent::_mapPaypalMethodName($methodName);
|
| 122 |
+
}
|
| 123 |
+
return $value;
|
| 124 |
+
}
|
| 125 |
+
|
| 126 |
+
/**
|
| 127 |
+
* Set Customer Billing Agreement call
|
| 128 |
+
*
|
| 129 |
+
* @link https://cms.paypal.com/us/cgi-bin/?&cmd=_render-content&content_ID=developer/e_howto_api_nvp_r_SetCustomerBillingAgreement
|
| 130 |
+
*/
|
| 131 |
+
public function callSetCustomerBillingAgreement()
|
| 132 |
+
{
|
| 133 |
+
$this->_commonNvp->preCallSetCustomerBillingAgreement();
|
| 134 |
+
parent::callSetCustomerBillingAgreement();
|
| 135 |
+
}
|
| 136 |
+
}
|
app/code/community/CLS/Paypal/Model/Paypaluk/Api/Nvp.php
CHANGED
|
@@ -28,68 +28,25 @@
|
|
| 28 |
|
| 29 |
class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
| 30 |
{
|
| 31 |
-
|
| 32 |
-
* Paypal methods definition
|
| 33 |
-
*/
|
| 34 |
-
const SET_BILLING_AGREEMENT = 'SetCustomerBillingAgreement';
|
| 35 |
-
const CREATE_BILLING_AGREEMENT = 'CreateBillingAgreement';
|
| 36 |
-
const UPDATE_BILLING_AGREEMENT = 'BillAgreementUpdate';
|
| 37 |
-
const DO_REFERENCE_TRANSACTION = 'DoReferenceTransaction';
|
| 38 |
-
|
| 39 |
-
/**
|
| 40 |
-
* Actions
|
| 41 |
-
*/
|
| 42 |
-
const BA_SET = 'S';
|
| 43 |
-
const BA_CREATE = 'X';
|
| 44 |
-
const BA_UPDATE = 'U';
|
| 45 |
-
|
| 46 |
-
const RESPONSE_MSG = 'paypal_response_msg';
|
| 47 |
-
|
| 48 |
-
/**
|
| 49 |
-
* Create Billing Agreement request/response map
|
| 50 |
-
* @var array
|
| 51 |
-
*/
|
| 52 |
-
protected $_createBillingAgreementResponse = array('BAID');
|
| 53 |
-
|
| 54 |
-
/**
|
| 55 |
-
* Update Billing Agreement request/response map
|
| 56 |
-
* @var array
|
| 57 |
-
*/
|
| 58 |
-
protected $_updateBillingAgreementRequest = array(
|
| 59 |
-
'BAID', 'TENDER', 'BA_STATUS',
|
| 60 |
-
);
|
| 61 |
-
protected $_updateBillingAgreementResponse = array(
|
| 62 |
-
'BAID', 'PPREF', 'RESPMSG', 'CORRELATIONID',
|
| 63 |
-
);
|
| 64 |
-
|
| 65 |
-
/**
|
| 66 |
-
* Do Reference Transaction request/response map
|
| 67 |
-
*
|
| 68 |
-
* @var array
|
| 69 |
-
*/
|
| 70 |
-
protected $_doReferenceTransactionRequest = array('BAID', 'TENDER', 'AMT', 'FREIGHTAMT',
|
| 71 |
-
'TAXAMT', 'INVNUM', 'NOTIFYURL'
|
| 72 |
-
);
|
| 73 |
-
protected $_doReferenceTransactionResponse = array('BAID', 'PNREF', 'PPREF', 'PENDINGREASON', 'RESPMSG');
|
| 74 |
|
| 75 |
protected function _construct()
|
| 76 |
{
|
| 77 |
parent::_construct();
|
| 78 |
|
| 79 |
-
$this->
|
| 80 |
-
$this->_globalMap['BAID'] = 'billing_agreement_id';
|
| 81 |
-
$this->_globalMap['RESPMSG'] = 'response_msg';
|
| 82 |
-
$this->_globalMap['BA_STATUS'] = 'billing_agreement_status';
|
| 83 |
-
$this->_globalMap['BUTTONSOURCE'] = 'paypal_info_code';
|
| 84 |
-
|
| 85 |
-
$this->_debugReplacePrivateDataKeys[] = 'BUTTONSOURCE';
|
| 86 |
-
|
| 87 |
-
$this->_setExpressCheckoutRequest[] = 'BILLINGTYPE';
|
| 88 |
|
| 89 |
-
$this->
|
| 90 |
-
$this->_customerBillingAgreementRequest[] = 'AMT';
|
| 91 |
|
| 92 |
-
$this->_createBillingAgreementRequest
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 93 |
}
|
| 94 |
|
| 95 |
/**
|
|
@@ -99,7 +56,7 @@ class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
|
| 99 |
*/
|
| 100 |
public function getPaypalInfoCode()
|
| 101 |
{
|
| 102 |
-
return
|
| 103 |
}
|
| 104 |
|
| 105 |
/**
|
|
@@ -109,14 +66,11 @@ class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
|
| 109 |
*/
|
| 110 |
public function getTender()
|
| 111 |
{
|
| 112 |
-
|
| 113 |
-
|
| 114 |
-
|
| 115 |
-
return Mage_PaypalUk_Model_Api_Nvp::TENDER_PAYPAL;
|
| 116 |
-
|
| 117 |
-
default:
|
| 118 |
-
return parent::getTender();
|
| 119 |
}
|
|
|
|
| 120 |
}
|
| 121 |
|
| 122 |
/**
|
|
@@ -147,22 +101,11 @@ class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
|
| 147 |
*/
|
| 148 |
protected function _getPaypalUkActionName($methodName)
|
| 149 |
{
|
| 150 |
-
|
| 151 |
-
|
| 152 |
-
|
| 153 |
-
|
| 154 |
-
case self::SET_BILLING_AGREEMENT:
|
| 155 |
-
return self::BA_SET;
|
| 156 |
-
|
| 157 |
-
case self::CREATE_BILLING_AGREEMENT:
|
| 158 |
-
return self::BA_CREATE;
|
| 159 |
-
|
| 160 |
-
case self::UPDATE_BILLING_AGREEMENT:
|
| 161 |
-
return self::BA_UPDATE;
|
| 162 |
-
|
| 163 |
-
default:
|
| 164 |
-
return parent::_getPaypalUkActionName($methodName);
|
| 165 |
}
|
|
|
|
| 166 |
}
|
| 167 |
|
| 168 |
/**
|
|
@@ -173,22 +116,11 @@ class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
|
| 173 |
*/
|
| 174 |
protected function _mapPaypalMethodName($methodName)
|
| 175 |
{
|
| 176 |
-
|
| 177 |
-
|
| 178 |
-
|
| 179 |
-
? Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_AUTH_ONLY
|
| 180 |
-
: Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_SALE;
|
| 181 |
-
|
| 182 |
-
case self::SET_BILLING_AGREEMENT:
|
| 183 |
-
case self::CREATE_BILLING_AGREEMENT:
|
| 184 |
-
return Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_AUTH_ONLY;
|
| 185 |
-
|
| 186 |
-
case self::UPDATE_BILLING_AGREEMENT:
|
| 187 |
-
return null;
|
| 188 |
-
|
| 189 |
-
default:
|
| 190 |
-
return parent::_mapPaypalMethodName($methodName);
|
| 191 |
}
|
|
|
|
| 192 |
}
|
| 193 |
|
| 194 |
/**
|
|
@@ -198,7 +130,7 @@ class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
|
| 198 |
*/
|
| 199 |
public function callSetCustomerBillingAgreement()
|
| 200 |
{
|
| 201 |
-
$this->
|
| 202 |
parent::callSetCustomerBillingAgreement();
|
| 203 |
}
|
| 204 |
}
|
| 28 |
|
| 29 |
class CLS_Paypal_Model_Paypaluk_Api_Nvp extends Mage_PaypalUk_Model_Api_Nvp
|
| 30 |
{
|
| 31 |
+
protected $_commonNvp = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 32 |
|
| 33 |
protected function _construct()
|
| 34 |
{
|
| 35 |
parent::_construct();
|
| 36 |
|
| 37 |
+
$this->_commonNvp = Mage::getModel('cls_paypal/paypaluk_api_nvp_common', array('nvp_instance' => $this));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 38 |
|
| 39 |
+
$this->_globalMap = $this->_commonNvp->processGlobalMap($this->_globalMap);
|
|
|
|
| 40 |
|
| 41 |
+
$this->_createBillingAgreementRequest = $this->_commonNvp->processTransactionMap('create_ba_request', $this->_createBillingAgreementRequest);
|
| 42 |
+
$this->_createBillingAgreementResponse = $this->_commonNvp->processTransactionMap('create_ba_response', $this->_createBillingAgreementResponse);
|
| 43 |
+
$this->_updateBillingAgreementRequest = $this->_commonNvp->processTransactionMap('update_ba_request', $this->_updateBillingAgreementRequest);
|
| 44 |
+
$this->_updateBillingAgreementResponse = $this->_commonNvp->processTransactionMap('update_ba_response', $this->_updateBillingAgreementResponse);
|
| 45 |
+
$this->_doReferenceTransactionRequest = $this->_commonNvp->processTransactionMap('do_ref_trans_request', $this->_doReferenceTransactionRequest);
|
| 46 |
+
$this->_doReferenceTransactionResponse = $this->_commonNvp->processTransactionMap('do_ref_trans_response', $this->_doReferenceTransactionResponse);
|
| 47 |
+
$this->_debugReplacePrivateDataKeys = $this->_commonNvp->processTransactionMap('debug_replace_private', $this->_debugReplacePrivateDataKeys);
|
| 48 |
+
$this->_setExpressCheckoutRequest = $this->_commonNvp->processTransactionMap('set_expr_checkout_request', $this->_setExpressCheckoutRequest);
|
| 49 |
+
$this->_customerBillingAgreementRequest = $this->_commonNvp->processTransactionMap('customer_ba_request', $this->_customerBillingAgreementRequest);
|
| 50 |
}
|
| 51 |
|
| 52 |
/**
|
| 56 |
*/
|
| 57 |
public function getPaypalInfoCode()
|
| 58 |
{
|
| 59 |
+
return $this->_commonNvp->getPaypalInfoCode();
|
| 60 |
}
|
| 61 |
|
| 62 |
/**
|
| 66 |
*/
|
| 67 |
public function getTender()
|
| 68 |
{
|
| 69 |
+
$value = $this->_commonNvp->getTender($this->_config);
|
| 70 |
+
if ($value === FALSE) {
|
| 71 |
+
$value = parent::getTender();
|
|
|
|
|
|
|
|
|
|
|
|
|
| 72 |
}
|
| 73 |
+
return $value;
|
| 74 |
}
|
| 75 |
|
| 76 |
/**
|
| 101 |
*/
|
| 102 |
protected function _getPaypalUkActionName($methodName)
|
| 103 |
{
|
| 104 |
+
$value = $this->_commonNvp->getPaypalUkActionName($methodName);
|
| 105 |
+
if ($value === FALSE) {
|
| 106 |
+
$value = parent::_getPaypalUkActionName($methodName);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 107 |
}
|
| 108 |
+
return $value;
|
| 109 |
}
|
| 110 |
|
| 111 |
/**
|
| 116 |
*/
|
| 117 |
protected function _mapPaypalMethodName($methodName)
|
| 118 |
{
|
| 119 |
+
$value = $this->_commonNvp->mapPaypalMethodName($methodName, $this->_config);
|
| 120 |
+
if ($value === FALSE) {
|
| 121 |
+
$value = parent::_mapPaypalMethodName($methodName);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 122 |
}
|
| 123 |
+
return $value;
|
| 124 |
}
|
| 125 |
|
| 126 |
/**
|
| 130 |
*/
|
| 131 |
public function callSetCustomerBillingAgreement()
|
| 132 |
{
|
| 133 |
+
$this->_commonNvp->preCallSetCustomerBillingAgreement();
|
| 134 |
parent::callSetCustomerBillingAgreement();
|
| 135 |
}
|
| 136 |
}
|
app/code/community/CLS/Paypal/Model/Paypaluk/Api/Nvp/Common.php
ADDED
|
@@ -0,0 +1,236 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
/**
|
| 3 |
+
* Classy Llama
|
| 4 |
+
*
|
| 5 |
+
* NOTICE OF LICENSE
|
| 6 |
+
*
|
| 7 |
+
* This source file is subject to the Open Software License (OSL 3.0)
|
| 8 |
+
* that is bundled with this package in the file LICENSE.txt.
|
| 9 |
+
* It is also available through the world-wide-web at this URL:
|
| 10 |
+
* http://opensource.org/licenses/osl-3.0.php
|
| 11 |
+
* If you did not receive a copy of the license and are unable to
|
| 12 |
+
* obtain it through the world-wide-web, please send an email to us at
|
| 13 |
+
* support+paypal@classyllama.com so we can send you a copy immediately.
|
| 14 |
+
*
|
| 15 |
+
* DISCLAIMER
|
| 16 |
+
*
|
| 17 |
+
* Do not edit or add to this file if you wish to upgrade this module
|
| 18 |
+
* to newer versions in the future. If you require customizations of this
|
| 19 |
+
* module for your needs, please write us at sales@classyllama.com.
|
| 20 |
+
*
|
| 21 |
+
* To report bugs or issues with this module, please email support+paypal@classyllama.com.
|
| 22 |
+
*
|
| 23 |
+
* @category CLS
|
| 24 |
+
* @package Paypal
|
| 25 |
+
* @copyright Copyright (c) 2013 Classy Llama Studios, LLC (http://www.classyllama.com)
|
| 26 |
+
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
|
| 27 |
+
*/
|
| 28 |
+
|
| 29 |
+
class CLS_Paypal_Model_Paypaluk_Api_Nvp_Common extends Varien_Object
|
| 30 |
+
{
|
| 31 |
+
protected $_nvpInstance = null;
|
| 32 |
+
|
| 33 |
+
/**
|
| 34 |
+
* Paypal methods definition
|
| 35 |
+
*/
|
| 36 |
+
const SET_BILLING_AGREEMENT = 'SetCustomerBillingAgreement';
|
| 37 |
+
const CREATE_BILLING_AGREEMENT = 'CreateBillingAgreement';
|
| 38 |
+
const UPDATE_BILLING_AGREEMENT = 'BillAgreementUpdate';
|
| 39 |
+
const DO_REFERENCE_TRANSACTION = 'DoReferenceTransaction';
|
| 40 |
+
|
| 41 |
+
/**
|
| 42 |
+
* Actions
|
| 43 |
+
*/
|
| 44 |
+
const BA_SET = 'S';
|
| 45 |
+
const BA_CREATE = 'X';
|
| 46 |
+
const BA_UPDATE = 'U';
|
| 47 |
+
|
| 48 |
+
const RESPONSE_MSG = 'paypal_response_msg';
|
| 49 |
+
|
| 50 |
+
/**
|
| 51 |
+
* Create Billing Agreement request/response map
|
| 52 |
+
* @var array
|
| 53 |
+
*/
|
| 54 |
+
public $createBillingAgreementResponse = array('BAID');
|
| 55 |
+
|
| 56 |
+
/**
|
| 57 |
+
* Update Billing Agreement request/response map
|
| 58 |
+
* @var array
|
| 59 |
+
*/
|
| 60 |
+
public $updateBillingAgreementRequest = array(
|
| 61 |
+
'BAID', 'TENDER', 'BA_STATUS',
|
| 62 |
+
);
|
| 63 |
+
public $updateBillingAgreementResponse = array(
|
| 64 |
+
'BAID', 'PPREF', 'RESPMSG', 'CORRELATIONID',
|
| 65 |
+
);
|
| 66 |
+
|
| 67 |
+
/**
|
| 68 |
+
* Do Reference Transaction request/response map
|
| 69 |
+
*
|
| 70 |
+
* @var array
|
| 71 |
+
*/
|
| 72 |
+
public $doReferenceTransactionRequest = array('BAID', 'TENDER', 'AMT', 'FREIGHTAMT',
|
| 73 |
+
'TAXAMT', 'INVNUM', 'NOTIFYURL'
|
| 74 |
+
);
|
| 75 |
+
public $doReferenceTransactionResponse = array('BAID', 'PNREF', 'PPREF', 'PENDINGREASON', 'RESPMSG');
|
| 76 |
+
|
| 77 |
+
public function __construct($params=array())
|
| 78 |
+
{
|
| 79 |
+
// Initialize common method
|
| 80 |
+
if ( empty($params) || !isset($params['nvp_instance']) ) {
|
| 81 |
+
Mage::throwException(Mage::helper('cls_paypal')->__('Internal error: cannot initialize common PayFlow Pro API model.'));
|
| 82 |
+
}
|
| 83 |
+
|
| 84 |
+
$this->_nvpInstance = $params['nvp_instance'];
|
| 85 |
+
}
|
| 86 |
+
|
| 87 |
+
/**
|
| 88 |
+
* Add necessary components to the global map
|
| 89 |
+
*
|
| 90 |
+
* @param array $map
|
| 91 |
+
* @return array
|
| 92 |
+
*/
|
| 93 |
+
public function processGlobalMap($map)
|
| 94 |
+
{
|
| 95 |
+
$map['BILLINGTYPE'] = 'billing_type';
|
| 96 |
+
$map['BAID'] = 'billing_agreement_id';
|
| 97 |
+
$map['RESPMSG'] = 'response_msg';
|
| 98 |
+
$map['BA_STATUS'] = 'billing_agreement_status';
|
| 99 |
+
$map['BUTTONSOURCE'] = 'paypal_info_code';
|
| 100 |
+
|
| 101 |
+
return $map;
|
| 102 |
+
}
|
| 103 |
+
|
| 104 |
+
/**
|
| 105 |
+
* Add/change components on individual request/response key maps
|
| 106 |
+
*
|
| 107 |
+
* @param string $key
|
| 108 |
+
* @param array $map
|
| 109 |
+
* @return array
|
| 110 |
+
*/
|
| 111 |
+
public function processTransactionMap($key, $map)
|
| 112 |
+
{
|
| 113 |
+
switch ($key) {
|
| 114 |
+
case 'create_ba_request':
|
| 115 |
+
$map[] = 'TENDER';
|
| 116 |
+
break;
|
| 117 |
+
case 'create_ba_response':
|
| 118 |
+
$map = $this->createBillingAgreementResponse;
|
| 119 |
+
break;
|
| 120 |
+
case 'update_ba_request':
|
| 121 |
+
$map = $this->updateBillingAgreementRequest;
|
| 122 |
+
break;
|
| 123 |
+
case 'update_ba_response':
|
| 124 |
+
$map = $this->updateBillingAgreementResponse;
|
| 125 |
+
break;
|
| 126 |
+
case 'do_ref_trans_request':
|
| 127 |
+
$map = $this->doReferenceTransactionRequest;
|
| 128 |
+
break;
|
| 129 |
+
case 'do_ref_trans_response':
|
| 130 |
+
$map = $this->doReferenceTransactionResponse;
|
| 131 |
+
break;
|
| 132 |
+
case 'debug_replace_private':
|
| 133 |
+
$map[] = 'BUTTONSOURCE';
|
| 134 |
+
break;
|
| 135 |
+
case 'set_expr_checkout_request':
|
| 136 |
+
$map[] = 'BILLINGTYPE';
|
| 137 |
+
break;
|
| 138 |
+
case 'customer_ba_request':
|
| 139 |
+
$map[] = 'TENDER';
|
| 140 |
+
$map[] = 'AMT';
|
| 141 |
+
break;
|
| 142 |
+
default:
|
| 143 |
+
}
|
| 144 |
+
|
| 145 |
+
return $map;
|
| 146 |
+
}
|
| 147 |
+
|
| 148 |
+
/**
|
| 149 |
+
* Get Paypal info code
|
| 150 |
+
*
|
| 151 |
+
* @return string
|
| 152 |
+
*/
|
| 153 |
+
public function getPaypalInfoCode()
|
| 154 |
+
{
|
| 155 |
+
return Mage::helper('cls_paypal')->getPaypalInfoCode();
|
| 156 |
+
}
|
| 157 |
+
|
| 158 |
+
/**
|
| 159 |
+
* Return PaypalUk tender based on config data
|
| 160 |
+
*
|
| 161 |
+
* @param Mage_Paypal_Model_Config $config
|
| 162 |
+
* @return string | bool
|
| 163 |
+
*/
|
| 164 |
+
public function getTender($config)
|
| 165 |
+
{
|
| 166 |
+
switch ($config->getMethodCode()) {
|
| 167 |
+
case CLS_Paypal_Model_Paypal_Config::METHOD_PAYFLOW_BILLING_AGREEMENT:
|
| 168 |
+
case CLS_Paypal_Model_Paypal_Config::METHOD_PAYFLOW_ORDERSTORED_AGREEMENT:
|
| 169 |
+
return Mage_PaypalUk_Model_Api_Nvp::TENDER_PAYPAL;
|
| 170 |
+
|
| 171 |
+
default:
|
| 172 |
+
return false;
|
| 173 |
+
}
|
| 174 |
+
}
|
| 175 |
+
|
| 176 |
+
/**
|
| 177 |
+
* Return Payflow Edition
|
| 178 |
+
*
|
| 179 |
+
* @param string
|
| 180 |
+
* @return string | bool
|
| 181 |
+
*/
|
| 182 |
+
public function getPaypalUkActionName($methodName)
|
| 183 |
+
{
|
| 184 |
+
switch($methodName) {
|
| 185 |
+
case self::DO_REFERENCE_TRANSACTION:
|
| 186 |
+
return Mage_PaypalUk_Model_Api_Nvp::EXPRESS_DO_PAYMENT;
|
| 187 |
+
|
| 188 |
+
case self::SET_BILLING_AGREEMENT:
|
| 189 |
+
return self::BA_SET;
|
| 190 |
+
|
| 191 |
+
case self::CREATE_BILLING_AGREEMENT:
|
| 192 |
+
return self::BA_CREATE;
|
| 193 |
+
|
| 194 |
+
case self::UPDATE_BILLING_AGREEMENT:
|
| 195 |
+
return self::BA_UPDATE;
|
| 196 |
+
|
| 197 |
+
default:
|
| 198 |
+
return false;
|
| 199 |
+
}
|
| 200 |
+
}
|
| 201 |
+
|
| 202 |
+
/**
|
| 203 |
+
* Map paypal method names
|
| 204 |
+
*
|
| 205 |
+
* @param string| $methodName
|
| 206 |
+
* @param Mage_Paypal_Model_Config $config
|
| 207 |
+
* @return string
|
| 208 |
+
*/
|
| 209 |
+
public function mapPaypalMethodName($methodName, $config)
|
| 210 |
+
{
|
| 211 |
+
switch ($methodName) {
|
| 212 |
+
case self::DO_REFERENCE_TRANSACTION:
|
| 213 |
+
return ($config->payment_action == Mage_Paypal_Model_Config::PAYMENT_ACTION_AUTH)
|
| 214 |
+
? Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_AUTH_ONLY
|
| 215 |
+
: Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_SALE;
|
| 216 |
+
|
| 217 |
+
case self::SET_BILLING_AGREEMENT:
|
| 218 |
+
case self::CREATE_BILLING_AGREEMENT:
|
| 219 |
+
return Mage_PaypalUk_Model_Api_Nvp::TRXTYPE_AUTH_ONLY;
|
| 220 |
+
|
| 221 |
+
case self::UPDATE_BILLING_AGREEMENT:
|
| 222 |
+
return null;
|
| 223 |
+
|
| 224 |
+
default:
|
| 225 |
+
return false;
|
| 226 |
+
}
|
| 227 |
+
}
|
| 228 |
+
|
| 229 |
+
/***
|
| 230 |
+
* Processing before the "set billing agreement" request is sent
|
| 231 |
+
*/
|
| 232 |
+
public function preCallSetCustomerBillingAgreement()
|
| 233 |
+
{
|
| 234 |
+
$this->_nvpInstance->setAmount(0);
|
| 235 |
+
}
|
| 236 |
+
}
|
app/code/community/CLS/Paypal/Model/Paypaluk/Method/Agreement.php
CHANGED
|
@@ -117,7 +117,7 @@ class CLS_Paypal_Model_Paypaluk_Method_Agreement extends Mage_Paypal_Model_Metho
|
|
| 117 |
$this->_pro->importPaymentInfo($api, $payment);
|
| 118 |
|
| 119 |
$payment
|
| 120 |
-
->setAdditionalInformation(
|
| 121 |
->setPreparedMessage(Mage::helper('cls_paypal')->__('Payflow PNREF: #%s.', $api->getTransactionId()))
|
| 122 |
->setTransactionAdditionalInfo(Mage_PaypalUk_Model_Pro::TRANSPORT_PAYFLOW_TXN_ID, $api->getTransactionId());
|
| 123 |
|
| 117 |
$this->_pro->importPaymentInfo($api, $payment);
|
| 118 |
|
| 119 |
$payment
|
| 120 |
+
->setAdditionalInformation(CLS_Paypal_Model_Paypaluk_Api_Nvp_Common::RESPONSE_MSG, $api->getResponseMsg())
|
| 121 |
->setPreparedMessage(Mage::helper('cls_paypal')->__('Payflow PNREF: #%s.', $api->getTransactionId()))
|
| 122 |
->setTransactionAdditionalInfo(Mage_PaypalUk_Model_Pro::TRANSPORT_PAYFLOW_TXN_ID, $api->getTransactionId());
|
| 123 |
|
app/code/community/CLS/Paypal/Model/Paypaluk/Method/Orderstored/Agreement.php
CHANGED
|
@@ -91,7 +91,7 @@ class CLS_Paypal_Model_Paypaluk_Method_Orderstored_Agreement extends CLS_Paypal_
|
|
| 91 |
$this->_pro->importPaymentInfo($api, $payment);
|
| 92 |
|
| 93 |
$payment
|
| 94 |
-
->setAdditionalInformation(
|
| 95 |
->setPreparedMessage(Mage::helper('cls_paypal')->__('Payflow PNREF: #%s.', $api->getTransactionId()))
|
| 96 |
->setTransactionAdditionalInfo(Mage_PaypalUk_Model_Pro::TRANSPORT_PAYFLOW_TXN_ID, $api->getTransactionId());
|
| 97 |
|
| 91 |
$this->_pro->importPaymentInfo($api, $payment);
|
| 92 |
|
| 93 |
$payment
|
| 94 |
+
->setAdditionalInformation(CLS_Paypal_Model_Paypaluk_Api_Nvp_Common::RESPONSE_MSG, $api->getResponseMsg())
|
| 95 |
->setPreparedMessage(Mage::helper('cls_paypal')->__('Payflow PNREF: #%s.', $api->getTransactionId()))
|
| 96 |
->setTransactionAdditionalInfo(Mage_PaypalUk_Model_Pro::TRANSPORT_PAYFLOW_TXN_ID, $api->getTransactionId());
|
| 97 |
|
app/code/community/CLS/Paypal/etc/config.xml
CHANGED
|
@@ -30,7 +30,7 @@
|
|
| 30 |
<config>
|
| 31 |
<modules>
|
| 32 |
<CLS_Paypal>
|
| 33 |
-
<version>1.0.
|
| 34 |
</CLS_Paypal>
|
| 35 |
</modules>
|
| 36 |
|
|
@@ -84,7 +84,8 @@
|
|
| 84 |
|
| 85 |
<paypaluk>
|
| 86 |
<rewrite>
|
| 87 |
-
<
|
|
|
|
| 88 |
<express>CLS_Paypal_Model_Paypaluk_Express</express>
|
| 89 |
<express_checkout>CLS_Paypal_Model_Paypaluk_Express_Checkout</express_checkout>
|
| 90 |
</rewrite>
|
| 30 |
<config>
|
| 31 |
<modules>
|
| 32 |
<CLS_Paypal>
|
| 33 |
+
<version>1.0.9</version>
|
| 34 |
</CLS_Paypal>
|
| 35 |
</modules>
|
| 36 |
|
| 84 |
|
| 85 |
<paypaluk>
|
| 86 |
<rewrite>
|
| 87 |
+
<api_express_nvp>CLS_Paypal_Model_Paypaluk_Api_Express_Nvp</api_express_nvp>
|
| 88 |
+
<api_nvp>CLS_Paypal_Model_Paypaluk_Api_Nvp</api_nvp><!-- Necessary for 1.13.0 and below, when this model was also used for Express -->
|
| 89 |
<express>CLS_Paypal_Model_Paypaluk_Express</express>
|
| 90 |
<express_checkout>CLS_Paypal_Model_Paypaluk_Express_Checkout</express_checkout>
|
| 91 |
</rewrite>
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>CLS_Paypal_Credit_Card_Tokenization</name>
|
| 4 |
-
<version>1.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -73,11 +73,11 @@ Enable the module's various features from these groups, as well as setting
|
|
| 73 |
their configuration options independently of the standard credit card
|
| 74 |
and billing agreement configurations.
|
| 75 |
</description>
|
| 76 |
-
<notes>
|
| 77 |
<authors><author><name>Classy Llama</name><user>classyllama</user><email>info@classyllama.com</email></author></authors>
|
| 78 |
-
<date>2014-03-
|
| 79 |
-
<time>
|
| 80 |
-
<contents><target name="magecommunity"><dir name="CLS"><dir name="Paypal"><dir name="Block"><dir name="Adminhtml"><dir name="Sales"><dir name="Order"><dir name="Create"><file name="Customer.php" hash="bdda7f26580da00836dc14c760ce7bd4"/></dir></dir></dir></dir><dir name="Customer"><file name="Storedcard.php" hash="1f0ea64d4d88d8acc69b491ad157013d"/></dir><dir name="Payment"><dir name="Form"><file name="Cc.php" hash="bd28bf5a1476b6d000f7ddcfc8097520"/></dir></dir><dir name="Paypal"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="Location.php" hash="51a66bf4179183e15d74e2dd60867d08"/></dir></dir></dir></dir><dir name="Payflow"><dir name="Advanced"><file name="Form.php" hash="431cc885b585b3a6ae44b3e63b4a3500"/></dir><dir name="Link"><file name="Form.php" hash="803988293c751db8be065174648ea789"/></dir></dir><dir name="Payment"><dir name="Form"><file name="Customerstored.php" hash="705a1066768956fa2757aa6974df6a90"/><dir name="Orderstored"><file name="Agreement.php" hash="51a809dde7da3c5fb7adaccfc94583fe"/></dir><file name="Orderstored.php" hash="aae8127491dcace2d2800879b2743157"/></dir></dir></dir><dir name="Paypaluk"><dir name="Payment"><dir name="Form"><dir name="Orderstored"><file name="Agreement.php" hash="f2cefe3e8fc148a628b8c7275401845d"/></dir></dir></dir></dir></dir><file name="CHANGELOG.txt" hash="
|
| 81 |
<compatible/>
|
| 82 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
| 83 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>CLS_Paypal_Credit_Card_Tokenization</name>
|
| 4 |
+
<version>1.0.9</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
| 7 |
<channel>community</channel>
|
| 73 |
their configuration options independently of the standard credit card
|
| 74 |
and billing agreement configurations.
|
| 75 |
</description>
|
| 76 |
+
<notes>Fixed API inheritance issue introduced with Magento 1.8.1.0/1.13.1.0, which broke PayFlow billing agreements</notes>
|
| 77 |
<authors><author><name>Classy Llama</name><user>classyllama</user><email>info@classyllama.com</email></author></authors>
|
| 78 |
+
<date>2014-03-25</date>
|
| 79 |
+
<time>18:29:40</time>
|
| 80 |
+
<contents><target name="magecommunity"><dir name="CLS"><dir name="Paypal"><dir name="Block"><dir name="Adminhtml"><dir name="Sales"><dir name="Order"><dir name="Create"><file name="Customer.php" hash="bdda7f26580da00836dc14c760ce7bd4"/></dir></dir></dir></dir><dir name="Customer"><file name="Storedcard.php" hash="1f0ea64d4d88d8acc69b491ad157013d"/></dir><dir name="Payment"><dir name="Form"><file name="Cc.php" hash="bd28bf5a1476b6d000f7ddcfc8097520"/></dir></dir><dir name="Paypal"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Fieldset"><file name="Location.php" hash="51a66bf4179183e15d74e2dd60867d08"/></dir></dir></dir></dir><dir name="Payflow"><dir name="Advanced"><file name="Form.php" hash="431cc885b585b3a6ae44b3e63b4a3500"/></dir><dir name="Link"><file name="Form.php" hash="803988293c751db8be065174648ea789"/></dir></dir><dir name="Payment"><dir name="Form"><file name="Customerstored.php" hash="705a1066768956fa2757aa6974df6a90"/><dir name="Orderstored"><file name="Agreement.php" hash="51a809dde7da3c5fb7adaccfc94583fe"/></dir><file name="Orderstored.php" hash="aae8127491dcace2d2800879b2743157"/></dir></dir></dir><dir name="Paypaluk"><dir name="Payment"><dir name="Form"><dir name="Orderstored"><file name="Agreement.php" hash="f2cefe3e8fc148a628b8c7275401845d"/></dir></dir></dir></dir></dir><file name="CHANGELOG.txt" hash="678941626b28b3594096873246fa3f57"/><dir name="Helper"><file name="Data.php" hash="0d3f45c57c94284712bd91aa4b19351b"/><dir name="Orderstored"><file name="Agreement.php" hash="2fad52d6d80fb4ece74dbfe6c4b3fc1a"/></dir><dir name="Paypal"><file name="Data.php" hash="f60bf2892eb63645f2eab96bc7dc6b4a"/></dir><file name="Storedcard.php" hash="874a70e486c9b8ed353167245f9ed07a"/></dir><file name="LICENSE.txt" hash="71db18446bebc23ced8dd62644d16b5f"/><dir name="Model"><file name="Customerstored.php" hash="8be7c468362ad43b6a09d4c223d36515"/><file name="Observer.php" hash="457631f86139aa7666657e9b6658af89"/><dir name="Paypal"><dir name="Api"><file name="Nvp.php" hash="74be53d000dfb2a9c0884403059d7e4d"/></dir><file name="Config.php" hash="dc8223a0fc3b8d6659184d1fe6c0330b"/><file name="Direct.php" hash="9f551d5e14e99451ca02f79d2f78f4ab"/><dir name="Express"><file name="Checkout.php" hash="021cbbf4e0985106ab24bfa8bd62abb4"/></dir><file name="Express.php" hash="67b5631bf57b2797050c73c7378aee9c"/><file name="Info.php" hash="d6d8415242d2a63eb831cac84f276701"/><dir name="Method"><dir name="Orderstored"><file name="Agreement.php" hash="294bf176eabbd2c6dac52497c3bdc5ba"/></dir></dir><file name="Payflowadvanced.php" hash="333a909b6b48c6c3c864e591d5ee0a4d"/><file name="Payflowlink.php" hash="98129dfc3d9a5236e8c5a94cddbeb6d3"/><file name="Payflowpro.php" hash="dbfa4f171934f4f26d05515ca5ae36b1"/><dir name="Stored"><file name="Abstract.php" hash="946b41be7b003f821fa091e25974e2e1"/><dir name="Customerstored"><file name="Direct.php" hash="1fb16f32ce53c7825d9460c57de571ef"/><file name="Payflow.php" hash="b01eba2260d72dc3dc60efa6277502b1"/><file name="Payflowadvanced.php" hash="5d5b02436cf305412bfec098eea85e09"/><file name="Payflowlink.php" hash="83a4de2a5192635c48af3aac8b2cb7e2"/><file name="Payflowpro.php" hash="394ec117863b90196f141d1df367b068"/></dir><file name="Customerstored.php" hash="f9fe1df0936372d6abcb30b3129c080b"/><dir name="Orderstored"><file name="Direct.php" hash="403bd0b06c2f235c9480eaf05d449b3b"/><file name="Payflow.php" hash="98fae36789f67423db4a520b7feaa01f"/><file name="Payflowadvanced.php" hash="8dd64cf3c2b9ae5560b3a06204d59751"/><file name="Payflowlink.php" hash="71b134111dc49d20692c3ffae3bfa1c7"/><file name="Payflowpro.php" hash="08bac93661b9234b0546ab429f4a3931"/></dir><file name="Orderstored.php" hash="47b0f39b6f334fd987bfc238eb06ed7f"/><file name="Payflow.php" hash="288f16ab9d9d2b0d8957c8887f528b99"/></dir></dir><dir name="Paypaluk"><dir name="Api"><dir name="Express"><file name="Nvp.php" hash="730e90ff8c15e988459776477fbe04a4"/></dir><dir name="Nvp"><file name="Common.php" hash="af309169674e7714e4d30cfa4a070855"/></dir><file name="Nvp.php" hash="0a8faacb663b9668608a99fb482a1bb5"/></dir><dir name="Express"><file name="Checkout.php" hash="6a2a85e0acb0645d025c8823a5b3cd2f"/></dir><file name="Express.php" hash="b491f2d6acf89a29f4a23dc573f8e44f"/><dir name="Method"><file name="Agreement.php" hash="edf9951f5feb1b49fcb85cf13b935395"/><dir name="Orderstored"><file name="Agreement.php" hash="22d736a97a1a2a293484e4241b545230"/></dir></dir></dir><dir name="Resource"><dir name="Customerstored"><file name="Collection.php" hash="818889cb1eedd1e2047d09f6270f9b30"/></dir><file name="Customerstored.php" hash="0dd4ba6646ffbd32efbe6e4f0bc4e3c7"/></dir></dir><file name="README.md" hash="b2736f6dbadb03a660bd5a7021391d4c"/><dir name="controllers"><dir name="Adminhtml"><dir name="Sales"><dir name="Order"><file name="CreateController.php" hash="edd90db7fcc89ccfd5519864debed3ad"/></dir></dir></dir><dir name="Customer"><file name="StoredcardController.php" hash="60c3403cd13a9ff1805506f5988cabdb"/></dir><dir name="Paypal"><file name="ExpressController.php" hash="53f83f79f948ffc0eb6abdfc5d8f60b0"/></dir><dir name="PaypalUk"><file name="ExpressController.php" hash="639821dc1c01a0276052579c5507a599"/></dir></dir><dir name="etc"><file name="config.xml" hash="5cb629cbb0d869d2d85da3a92f0a5855"/><file name="system.xml" hash="4d5998c927b5739a52c078c99644bd32"/></dir><dir name="sql"><dir name="cls_paypal_setup"><file name="install-0.0.1.php" hash="33f870045a3cc0da094eed143adaf57b"/><file name="upgrade-0.3.0-0.3.1.php" hash="240dd4eae586f033ec6efad99773fbce"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="cls_paypal.xml" hash="6747dd281152c450e1511f9d551c9766"/></dir><dir name="template"><dir name="cls_paypal"><dir name="payment"><dir name="form"><file name="cc.phtml" hash="a23359ef60f0cf4041f4dd406c1cb286"/><file name="customer_stored.phtml" hash="6004f23604bb7de0a409494bb0c0c439"/><file name="order_stored.phtml" hash="7620eacd6d2351df7e827eb168d03236"/></dir></dir><dir name="sales"><dir name="order"><dir name="create"><dir name="form"><file name="address.phtml" hash="a452ddc2a6e812f0872e82ad931b9dac"/></dir></dir></dir><dir name="payment"><dir name="form"><dir name="orderstored"><file name="agreement.phtml" hash="5a080925e336f505381cba5e43f70e07"/></dir></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="cls_paypal.xml" hash="0e2a6af1135e6fb29dda4b267797a6bd"/></dir><dir name="template"><dir name="cls_paypal"><dir name="customer"><file name="storedcard.phtml" hash="4756af996c65fb83a09ab0312a66bd1f"/></dir><dir name="payment"><dir name="form"><file name="cc.phtml" hash="bd55fa445bea026721116b29dfadbb73"/><file name="customer_stored.phtml" hash="591d82906294e37f5c2e317f71144a0f"/></dir></dir><dir name="paypal"><dir name="payflow"><file name="info.phtml" hash="548f1b761782c2351482dd1d1f44a7af"/></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="CLS_Paypal.xml" hash="9e629aac18f2e5f2c9feb266985c912f"/></dir></target><target name="magelocale"><dir name="en_US"><file name="CLS_Paypal.csv" hash="ab57482877d914bb1d02021d95c65520"/></dir></target></contents>
|
| 81 |
<compatible/>
|
| 82 |
<dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
|
| 83 |
</package>
|
