Creativestyle_AmazonPayments - Version 1.3.4

Version Notes

ADDED: gift messages support
MODIFIED: improved customer address handling for DE and AT (extract company name from the address)
FIXED: missing order item's original_price and base_original_price fields
FIXED: enabled "Place order" button issue when payment method is not selected
FIXED: disabled "Place order" button issue for virtual orders

Download this release

Release Info

Developer creativestyle GmbH
Extension Creativestyle_AmazonPayments
Version 1.3.4
Comparing to
See all releases


Code changes from version 1.3.2 to 1.3.4

Files changed (26) hide show
  1. app/code/community/Creativestyle/AmazonPayments/Block/Abstract.php +19 -4
  2. app/code/community/Creativestyle/AmazonPayments/Block/Adminhtml/IpnUrl.php +14 -6
  3. app/code/community/Creativestyle/AmazonPayments/Block/Checkout.php +1 -1
  4. app/code/community/Creativestyle/AmazonPayments/Block/Login/Redirect.php +39 -0
  5. app/code/community/Creativestyle/AmazonPayments/Helper/Data.php +1 -1
  6. app/code/community/Creativestyle/AmazonPayments/Model/Checkout.php +1 -1
  7. app/code/community/Creativestyle/AmazonPayments/Model/Config.php +19 -6
  8. app/code/community/Creativestyle/AmazonPayments/Model/Lookup/Authentication.php +30 -0
  9. app/code/community/Creativestyle/AmazonPayments/Model/Manager.php +77 -27
  10. app/code/community/Creativestyle/AmazonPayments/Model/Observer.php +11 -0
  11. app/code/community/Creativestyle/AmazonPayments/Model/Simulator.php +1 -1
  12. app/code/community/Creativestyle/AmazonPayments/controllers/Advanced/CheckoutController.php +15 -4
  13. app/code/community/Creativestyle/AmazonPayments/controllers/Advanced/LoginController.php +32 -4
  14. app/code/community/Creativestyle/AmazonPayments/etc/config.xml +14 -3
  15. app/code/community/Creativestyle/AmazonPayments/etc/system.xml +12 -0
  16. app/design/frontend/base/default/layout/amazonpayments.xml +11 -1
  17. app/design/frontend/base/default/template/creativestyle/amazonpayments/button/js.phtml +15 -6
  18. app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout.phtml +15 -13
  19. app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout/js.phtml +26 -25
  20. app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout/shipping_method.phtml +3 -8
  21. app/design/frontend/base/default/template/creativestyle/amazonpayments/login/js.phtml +1 -0
  22. app/design/frontend/base/default/template/creativestyle/amazonpayments/login/logout.phtml +1 -0
  23. app/design/frontend/base/default/template/creativestyle/amazonpayments/login/redirect.phtml +25 -0
  24. js/creativestyle/apa_checkout.js +61 -13
  25. js/creativestyle/apa_checkout.min.js +1 -1
  26. package.xml +9 -13
app/code/community/Creativestyle/AmazonPayments/Block/Abstract.php CHANGED
@@ -32,7 +32,9 @@ abstract class Creativestyle_AmazonPayments_Block_Abstract extends Mage_Core_Blo
32
 
33
  protected function _isConnectionSecure() {
34
  if ($this->_getConfig()->isActive() & Creativestyle_AmazonPayments_Model_Config::LOGIN_WITH_AMAZON_ACTIVE) {
35
- return Mage::app()->getStore()->isCurrentlySecure();
 
 
36
  }
37
  return true;
38
  }
@@ -74,11 +76,17 @@ abstract class Creativestyle_AmazonPayments_Block_Abstract extends Mage_Core_Blo
74
  if ($this->_isOnepageCheckout()) {
75
  return $this->getPayRedirectUrl();
76
  }
77
- return Mage::getUrl('amazonpayments/advanced_login');
 
 
 
78
  }
79
 
80
  public function getPayRedirectUrl() {
81
- return Mage::getUrl('amazonpayments/advanced_login', array('target' => 'checkout'));
 
 
 
82
  }
83
 
84
  public function getMerchantId() {
@@ -89,6 +97,9 @@ abstract class Creativestyle_AmazonPayments_Block_Abstract extends Mage_Core_Blo
89
  return $this->_getConfig()->getRegion();
90
  }
91
 
 
 
 
92
  public function getEnvironment() {
93
  return $this->_getConfig()->getEnvironment();
94
  }
@@ -113,7 +124,7 @@ abstract class Creativestyle_AmazonPayments_Block_Abstract extends Mage_Core_Blo
113
  }
114
 
115
  public function isLive() {
116
- return $this->getEnvironment() != 'sandbox';
117
  }
118
 
119
  public function isVirtual() {
@@ -136,4 +147,8 @@ abstract class Creativestyle_AmazonPayments_Block_Abstract extends Mage_Core_Blo
136
  return '';
137
  }
138
 
 
 
 
 
139
  }
32
 
33
  protected function _isConnectionSecure() {
34
  if ($this->_getConfig()->isActive() & Creativestyle_AmazonPayments_Model_Config::LOGIN_WITH_AMAZON_ACTIVE) {
35
+ if ($this->isPopup()) {
36
+ return Mage::app()->getStore()->isCurrentlySecure();
37
+ }
38
  }
39
  return true;
40
  }
76
  if ($this->_isOnepageCheckout()) {
77
  return $this->getPayRedirectUrl();
78
  }
79
+ if ($this->isPopup()) {
80
+ return Mage::getUrl('amazonpayments/advanced_login');
81
+ }
82
+ return Mage::getUrl('amazonpayments/advanced_login/redirect');
83
  }
84
 
85
  public function getPayRedirectUrl() {
86
+ if ($this->isPopup()) {
87
+ return Mage::getUrl('amazonpayments/advanced_login', array('target' => 'checkout'));
88
+ }
89
+ return Mage::getUrl('amazonpayments/advanced_login/redirect', array('target' => 'checkout'));
90
  }
91
 
92
  public function getMerchantId() {
97
  return $this->_getConfig()->getRegion();
98
  }
99
 
100
+ /**
101
+ * @deprecated deprecated since 1.3.4
102
+ */
103
  public function getEnvironment() {
104
  return $this->_getConfig()->getEnvironment();
105
  }
124
  }
125
 
126
  public function isLive() {
127
+ return !$this->_getConfig()->isSandbox();
128
  }
129
 
130
  public function isVirtual() {
147
  return '';
148
  }
149
 
150
+ public function isPopup() {
151
+ return $this->_getConfig()->isPopupAuthenticationExperience();
152
+ }
153
+
154
  }
app/code/community/Creativestyle/AmazonPayments/Block/Adminhtml/IpnUrl.php CHANGED
@@ -15,15 +15,23 @@
15
  */
16
  class Creativestyle_AmazonPayments_Block_Adminhtml_IpnUrl extends Mage_Adminhtml_Block_System_Config_Form_Field {
17
 
 
 
 
 
18
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) {
19
  if (Mage::app()->isSingleStoreMode() || strtolower($element->getScope()) == 'stores') {
20
  $storeId = strtolower($element->getScope()) == 'stores' ? $element->getScopeId() : null;
21
- $url = Mage::getModel('core/url')->setStore($storeId)->getUrl('amazonpayments/advanced_ipn',
22
- array(
23
- '_current' => false,
24
- '_nosid' => true,
25
- '_store' => $storeId
26
- ));
 
 
 
 
27
  return sprintf('<a class="nobr" href="%s">%s</a>', $url, $url) . '<input type="hidden" id="' . $element->getHtmlId() . '"/>';
28
  } else {
29
  return sprintf('<span style="font-weight:bold;color:red;">%s</span>', $this->__('Select appropriate store view scope to display IPN endpoint URL')) . '<input type="hidden" id="' . $element->getHtmlId() . '"/>';
15
  */
16
  class Creativestyle_AmazonPayments_Block_Adminhtml_IpnUrl extends Mage_Adminhtml_Block_System_Config_Form_Field {
17
 
18
+ protected function _getConfig() {
19
+ return Mage::getSingleton('amazonpayments/config');
20
+ }
21
+
22
  protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) {
23
  if (Mage::app()->isSingleStoreMode() || strtolower($element->getScope()) == 'stores') {
24
  $storeId = strtolower($element->getScope()) == 'stores' ? $element->getScopeId() : null;
25
+ $urlParams = array(
26
+ '_current' => false,
27
+ '_nosid' => true,
28
+ '_store' => $storeId,
29
+ '_forced_secure' => !$this->_getConfig()->isSandbox($storeId)
30
+ );
31
+ if ($this->_getConfig()->isSandbox($storeId)) {
32
+ $urlParams['_secure'] = false;
33
+ }
34
+ $url = Mage::getModel('core/url')->setStore($storeId)->getUrl('amazonpayments/advanced_ipn/', $urlParams);
35
  return sprintf('<a class="nobr" href="%s">%s</a>', $url, $url) . '<input type="hidden" id="' . $element->getHtmlId() . '"/>';
36
  } else {
37
  return sprintf('<span style="font-weight:bold;color:red;">%s</span>', $this->__('Select appropriate store view scope to display IPN endpoint URL')) . '<input type="hidden" id="' . $element->getHtmlId() . '"/>';
app/code/community/Creativestyle/AmazonPayments/Block/Checkout.php CHANGED
@@ -32,7 +32,7 @@ class Creativestyle_AmazonPayments_Block_Checkout extends Mage_Checkout_Block_On
32
  }
33
 
34
  public function isLive() {
35
- return $this->_getConfig()->getEnvironment() != 'sandbox';
36
  }
37
 
38
  public function isVirtual() {
32
  }
33
 
34
  public function isLive() {
35
+ return !$this->_getConfig()->isSandbox();
36
  }
37
 
38
  public function isVirtual() {
app/code/community/Creativestyle/AmazonPayments/Block/Login/Redirect.php ADDED
@@ -0,0 +1,39 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * This file is part of the official Amazon Payments Advanced extension
5
+ * for Magento (c) creativestyle GmbH <amazon@creativestyle.de>
6
+ * All rights reserved
7
+ *
8
+ * Reuse or modification of this source code is not allowed
9
+ * without written permission from creativestyle GmbH
10
+ *
11
+ * @category Creativestyle
12
+ * @package Creativestyle_AmazonPayments
13
+ * @copyright Copyright (c) 2015 creativestyle GmbH
14
+ * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
15
+ */
16
+ class Creativestyle_AmazonPayments_Block_Login_Redirect extends Creativestyle_AmazonPayments_Block_Login_Abstract {
17
+
18
+ public function getAccessTokenParamName() {
19
+ if ($this->hasData('access_token_param_name')) {
20
+ return $this->getData('access_token_param_name');
21
+ }
22
+ return 'access_token';
23
+ }
24
+
25
+ public function getRedirectUrl() {
26
+ if ($this->hasData('redirect_url')) {
27
+ return $this->getData('redirect_url');
28
+ }
29
+ return $this->getFailureUrl();
30
+ }
31
+
32
+ public function getFailureUrl() {
33
+ if ($this->hasData('failure_url')) {
34
+ return $this->getData('failure_url');
35
+ }
36
+ return $this->getUrl('customer/account/login');
37
+ }
38
+
39
+ }
app/code/community/Creativestyle/AmazonPayments/Helper/Data.php CHANGED
@@ -133,7 +133,7 @@ class Creativestyle_AmazonPayments_Helper_Data extends Mage_Core_Helper_Abstract
133
 
134
  public function getHeadJs() {
135
  if ($this->_getConfig()->isActive()) {
136
- if ($this->_getConfig()->getEnvironment() == 'sandbox') {
137
  return 'creativestyle/apa_checkout.js';
138
  }
139
  return 'creativestyle/apa_checkout.min.js';
133
 
134
  public function getHeadJs() {
135
  if ($this->_getConfig()->isActive()) {
136
+ if ($this->_getConfig()->isSandbox()) {
137
  return 'creativestyle/apa_checkout.js';
138
  }
139
  return 'creativestyle/apa_checkout.min.js';
app/code/community/Creativestyle/AmazonPayments/Model/Checkout.php CHANGED
@@ -20,7 +20,7 @@ class Creativestyle_AmazonPayments_Model_Checkout extends Mage_Checkout_Model_Ty
20
  }
21
 
22
  protected function _getPaymentMethod() {
23
- if ($this->_getConfig()->getEnvironment() == 'sandbox') {
24
  return array('method' => 'amazonpayments_advanced_sandbox');
25
  }
26
  return array('method' => 'amazonpayments_advanced');
20
  }
21
 
22
  protected function _getPaymentMethod() {
23
+ if ($this->_getConfig()->isSandbox()) {
24
  return array('method' => 'amazonpayments_advanced_sandbox');
25
  }
26
  return array('method' => 'amazonpayments_advanced');
app/code/community/Creativestyle/AmazonPayments/Model/Config.php CHANGED
@@ -30,6 +30,7 @@ class Creativestyle_AmazonPayments_Model_Config {
30
 
31
  const XML_PATH_LOGIN_ACTIVE = 'amazonpayments/login/active';
32
  const XML_PATH_LOGIN_CLIENT_ID = 'amazonpayments/login/client_id';
 
33
 
34
  const XML_PATH_EMAIL_ORDER_CONFIRMATION = 'amazonpayments/email/order_confirmation';
35
  const XML_PATH_EMAIL_DECLINED_TEMPLATE = 'amazonpayments/email/authorization_declined_template';
@@ -64,13 +65,13 @@ class Creativestyle_AmazonPayments_Model_Config {
64
  protected function _getConfig($store = null) {
65
  if (!array_key_exists($store, $this->_config)) {
66
  $this->_config[$store] = array(
67
- 'merchantId' => trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_MERCHANT_ID, $store)),
68
  'accessKey' => trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_ACCESS_KEY, $store)),
69
  'secretKey' => trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_SECRET_KEY, $store)),
70
  'applicationName' => 'Creativestyle Amazon Payments Advanced Magento Extension',
71
  'applicationVersion' => Mage::getConfig()->getNode('modules/Creativestyle_AmazonPayments/version'),
72
- 'region' => Mage::getStoreConfig(self::XML_PATH_ACCOUNT_REGION, $store),
73
- 'environment' => Mage::getStoreConfigFlag(self::XML_PATH_GENERAL_SANDBOX, $store) ? 'sandbox' : 'live',
74
  'serviceURL' => '',
75
  'widgetURL' => '',
76
  'caBundleFile' => '',
@@ -142,12 +143,16 @@ class Creativestyle_AmazonPayments_Model_Config {
142
  return Mage::getStoreConfigFlag(self::XML_PATH_DEVELOPER_LOG_ACTIVE, $store);
143
  }
144
 
 
 
 
 
145
  public function getMerchantId($store = null) {
146
- return $this->getConnectionData('merchantId', $store);
147
  }
148
 
149
  public function getRegion($store = null) {
150
- return $this->getConnectionData('region', $store);
151
  }
152
 
153
  public function getEnvironment($store = null) {
@@ -158,6 +163,14 @@ class Creativestyle_AmazonPayments_Model_Config {
158
  return Mage::getStoreConfig(self::XML_PATH_LOGIN_CLIENT_ID, $store);
159
  }
160
 
 
 
 
 
 
 
 
 
161
  public function getWidgetUrl($store = null) {
162
  if ($this->isActive() & self::LOGIN_WITH_AMAZON_ACTIVE) {
163
  return $this->getMerchantValues()->getWidgetUrl();
@@ -190,7 +203,7 @@ class Creativestyle_AmazonPayments_Model_Config {
190
  }
191
 
192
  public function showSandboxToolbox($store = null) {
193
- return $this->getEnvironment($store) == 'sandbox' && Mage::getStoreConfigFlag(self::XML_PATH_GENERAL_SANDBOX_TOOLBOX, $store);
194
  }
195
 
196
 
30
 
31
  const XML_PATH_LOGIN_ACTIVE = 'amazonpayments/login/active';
32
  const XML_PATH_LOGIN_CLIENT_ID = 'amazonpayments/login/client_id';
33
+ const XML_PATH_LOGIN_AUTHENTICATION = 'amazonpayments/login/authentication';
34
 
35
  const XML_PATH_EMAIL_ORDER_CONFIRMATION = 'amazonpayments/email/order_confirmation';
36
  const XML_PATH_EMAIL_DECLINED_TEMPLATE = 'amazonpayments/email/authorization_declined_template';
65
  protected function _getConfig($store = null) {
66
  if (!array_key_exists($store, $this->_config)) {
67
  $this->_config[$store] = array(
68
+ 'merchantId' => $this->getMerchantId($store),
69
  'accessKey' => trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_ACCESS_KEY, $store)),
70
  'secretKey' => trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_SECRET_KEY, $store)),
71
  'applicationName' => 'Creativestyle Amazon Payments Advanced Magento Extension',
72
  'applicationVersion' => Mage::getConfig()->getNode('modules/Creativestyle_AmazonPayments/version'),
73
+ 'region' => $this->getRegion($store),
74
+ 'environment' => $this->isSandbox($store) ? 'sandbox' : 'live',
75
  'serviceURL' => '',
76
  'widgetURL' => '',
77
  'caBundleFile' => '',
143
  return Mage::getStoreConfigFlag(self::XML_PATH_DEVELOPER_LOG_ACTIVE, $store);
144
  }
145
 
146
+ public function isSandbox($store = null) {
147
+ return Mage::getStoreConfigFlag(self::XML_PATH_GENERAL_SANDBOX, $store);
148
+ }
149
+
150
  public function getMerchantId($store = null) {
151
+ return trim(Mage::getStoreConfig(self::XML_PATH_ACCOUNT_MERCHANT_ID, $store));
152
  }
153
 
154
  public function getRegion($store = null) {
155
+ return Mage::getStoreConfig(self::XML_PATH_ACCOUNT_REGION, $store);
156
  }
157
 
158
  public function getEnvironment($store = null) {
163
  return Mage::getStoreConfig(self::XML_PATH_LOGIN_CLIENT_ID, $store);
164
  }
165
 
166
+ public function getAuthenticationExperience($store = null) {
167
+ return Mage::getStoreConfig(self::XML_PATH_LOGIN_AUTHENTICATION, $store);
168
+ }
169
+
170
+ public function isPopupAuthenticationExperience($store = null) {
171
+ return $this->getAuthenticationExperience($store) == Creativestyle_AmazonPayments_Model_Lookup_Authentication::POPUP_EXPERIENCE;
172
+ }
173
+
174
  public function getWidgetUrl($store = null) {
175
  if ($this->isActive() & self::LOGIN_WITH_AMAZON_ACTIVE) {
176
  return $this->getMerchantValues()->getWidgetUrl();
203
  }
204
 
205
  public function showSandboxToolbox($store = null) {
206
+ return $this->isSandbox($store) && Mage::getStoreConfigFlag(self::XML_PATH_GENERAL_SANDBOX_TOOLBOX, $store);
207
  }
208
 
209
 
app/code/community/Creativestyle/AmazonPayments/Model/Lookup/Authentication.php ADDED
@@ -0,0 +1,30 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * This file is part of the official Amazon Payments Advanced extension
5
+ * for Magento (c) creativestyle GmbH <amazon@creativestyle.de>
6
+ * All rights reserved
7
+ *
8
+ * Reuse or modification of this source code is not allowed
9
+ * without written permission from creativestyle GmbH
10
+ *
11
+ * @category Creativestyle
12
+ * @package Creativestyle_AmazonPayments
13
+ * @copyright Copyright (c) 2015 creativestyle GmbH
14
+ * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
15
+ */
16
+ class Creativestyle_AmazonPayments_Model_Lookup_Authentication extends Creativestyle_AmazonPayments_Model_Lookup_Abstract {
17
+
18
+ const POPUP_EXPERIENCE = 'popup';
19
+ const REDIRECT_EXPERIENCE = 'redirect';
20
+
21
+ public function toOptionArray() {
22
+ if (null === $this->_options) {
23
+ $this->_options = array(
24
+ array('value' => self::POPUP_EXPERIENCE, 'label' => Mage::helper('amazonpayments')->__('Pop-up')),
25
+ array('value' => self::REDIRECT_EXPERIENCE, 'label' => Mage::helper('amazonpayments')->__('Redirect')),
26
+ );
27
+ }
28
+ return $this->_options;
29
+ }
30
+ }
app/code/community/Creativestyle/AmazonPayments/Model/Manager.php CHANGED
@@ -50,25 +50,14 @@ class Creativestyle_AmazonPayments_Model_Manager {
50
  * @return bool
51
  */
52
  protected function _compareAddresses($address1st, $address2nd) {
53
-
54
- // if 2nd address is incomplete do not compare
55
- if (!isset($address2nd['firstname'])
56
- || !isset($address2nd['lastname'])
57
- || !isset($address2nd['city'])
58
- || !isset($address2nd['postcode'])
59
- || !isset($address2nd['country_id'])
60
- || !isset($address2nd['street']))
61
- {
62
- return false;
63
- }
64
-
65
  // compare both addresses, but streets due their array nature in a separate call
66
  $streetDiff = array_diff($address2nd['street'], $address1st->getStreet());
67
- return (($address1st->getFirstname() != $address2nd['firstname'])
68
- || ($address1st->getLastname() != $address2nd['lastname'])
69
- || ($address1st->getCity() != $address2nd['city'])
70
- || ($address1st->getPostcode() != $address2nd['postcode'])
71
- || ($address1st->getCountryId() != $address2nd['country_id'])
 
72
  || (!empty($streetDiff)));
73
  }
74
 
@@ -85,6 +74,9 @@ class Creativestyle_AmazonPayments_Model_Manager {
85
  if (isset($newAddress['lastname'])) {
86
  $address->setLastname($newAddress['lastname']);
87
  }
 
 
 
88
  if (isset($newAddress['street'])) {
89
  $address->setStreet($newAddress['street']);
90
  }
@@ -161,6 +153,68 @@ class Creativestyle_AmazonPayments_Model_Manager {
161
  return $customerNameUpdated;
162
  }
163
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
164
  /**
165
  * Converts Amazon address object to the array
166
  *
@@ -168,21 +222,17 @@ class Creativestyle_AmazonPayments_Model_Manager {
168
  * @return array
169
  */
170
  protected function _convertAmazonAddressToArray($amazonAddress) {
171
- $address = array('street' => array());
 
 
 
 
 
172
  if ($amazonAddress->isSetName()) {
173
  $customerName = Mage::helper('amazonpayments')->explodeCustomerName($amazonAddress->getName());
174
  $address['firstname'] = $customerName->getFirstname();
175
  $address['lastname'] = $customerName->getLastname();
176
  }
177
- if ($amazonAddress->isSetAddressLine1()) {
178
- $address['street'][] = $amazonAddress->getAddressLine1();
179
- }
180
- if ($amazonAddress->isSetAddressLine2()) {
181
- $address['street'][] = $amazonAddress->getAddressLine2();
182
- }
183
- if ($amazonAddress->isSetAddressLine3()) {
184
- $address['street'][] = $amazonAddress->getAddressLine3();
185
- }
186
  if ($amazonAddress->isSetCity()) {
187
  $address['city'] = $amazonAddress->getCity();
188
  }
50
  * @return bool
51
  */
52
  protected function _compareAddresses($address1st, $address2nd) {
 
 
 
 
 
 
 
 
 
 
 
 
53
  // compare both addresses, but streets due their array nature in a separate call
54
  $streetDiff = array_diff($address2nd['street'], $address1st->getStreet());
55
+ return ((isset($address2nd['firstname']) && $address1st->getFirstname() != $address2nd['firstname'])
56
+ || (isset($address2nd['lastname']) && $address1st->getLastname() != $address2nd['lastname'])
57
+ || (isset($address2nd['company']) && $address1st->getCompany() != $address2nd['company'])
58
+ || (isset($address2nd['city']) && $address1st->getCity() != $address2nd['city'])
59
+ || (isset($address2nd['postcode']) && $address1st->getPostcode() != $address2nd['postcode'])
60
+ || (isset($address2nd['country_id']) && $address1st->getCountryId() != $address2nd['country_id'])
61
  || (!empty($streetDiff)));
62
  }
63
 
74
  if (isset($newAddress['lastname'])) {
75
  $address->setLastname($newAddress['lastname']);
76
  }
77
+ if (isset($newAddress['company'])) {
78
+ $address->setCompany($newAddress['company']);
79
+ }
80
  if (isset($newAddress['street'])) {
81
  $address->setStreet($newAddress['street']);
82
  }
153
  return $customerNameUpdated;
154
  }
155
 
156
+ /**
157
+ * Check whether provided address lines contain PO Box data
158
+ */
159
+ protected function _isPoBox($addressLine1, $addressLine2 = null) {
160
+ if (is_numeric($addressLine1)) {
161
+ return true;
162
+ }
163
+ if (strpos(strtolower($addressLine1), 'packstation') !== false) {
164
+ return true;
165
+ }
166
+ if (strpos(strtolower($addressLine2), 'packstation') !== false) {
167
+ return true;
168
+ }
169
+ return false;
170
+ }
171
+
172
+ /**
173
+ * Convert Amazon AddressLine fields to the array
174
+ * Try to guess if address lines contain company name or PO Box
175
+ *
176
+ * @param string $addressLine1
177
+ * @param string $addressLine2
178
+ * @param string $addressLine3
179
+ * @param string $countryId
180
+ *
181
+ * @return array
182
+ */
183
+ protected function _convertAmazonAddressLinesToArray($addressLine1, $addressLine2 = null, $addressLine3 = null, $countryId = null) {
184
+ $data = array('street' => array());
185
+ if ($countryId && in_array($countryId, array('DE', 'AT'))) {
186
+ if ($addressLine3) {
187
+ if ($this->_isPoBox($addressLine1, $addressLine2)) {
188
+ $data['street'][] = $addressLine1;
189
+ $data['street'][] = $addressLine2;
190
+ } else {
191
+ $data['company'] = trim($addressLine1 . ' ' . $addressLine2);
192
+ }
193
+ $data['street'][] = $addressLine3;
194
+ } else if ($addressLine2) {
195
+ if ($this->_isPoBox($addressLine1)) {
196
+ $data['street'][] = $addressLine1;
197
+ } else {
198
+ $data['company'] = $addressLine1;
199
+ }
200
+ $data['street'][] = $addressLine2;
201
+ } else {
202
+ $data['street'][] = $addressLine1;
203
+ }
204
+ } else {
205
+ if ($addressLine1) {
206
+ $data['street'][] = $addressLine1;
207
+ }
208
+ if ($addressLine2) {
209
+ $data['street'][] = $addressLine2;
210
+ }
211
+ if ($addressLine3) {
212
+ $data['street'][] = $addressLine3;
213
+ }
214
+ }
215
+ return $data;
216
+ }
217
+
218
  /**
219
  * Converts Amazon address object to the array
220
  *
222
  * @return array
223
  */
224
  protected function _convertAmazonAddressToArray($amazonAddress) {
225
+ $address = $this->_convertAmazonAddressLinesToArray(
226
+ $amazonAddress->getAddressLine1(),
227
+ $amazonAddress->getAddressLine2(),
228
+ $amazonAddress->getAddressLine3(),
229
+ $amazonAddress->getCountryCode()
230
+ );
231
  if ($amazonAddress->isSetName()) {
232
  $customerName = Mage::helper('amazonpayments')->explodeCustomerName($amazonAddress->getName());
233
  $address['firstname'] = $customerName->getFirstname();
234
  $address['lastname'] = $customerName->getLastname();
235
  }
 
 
 
 
 
 
 
 
 
236
  if ($amazonAddress->isSetCity()) {
237
  $address['city'] = $amazonAddress->getCity();
238
  }
app/code/community/Creativestyle/AmazonPayments/Model/Observer.php CHANGED
@@ -261,6 +261,17 @@ class Creativestyle_AmazonPayments_Model_Observer {
261
  return $this;
262
  }
263
 
 
 
 
 
 
 
 
 
 
 
 
264
 
265
 
266
  // **********************************************************************
261
  return $this;
262
  }
263
 
264
+ public function setSecureUrls($observer) {
265
+ $secureUrlsConfigNode = Mage::getConfig()->getNode('frontend/secure_url');
266
+ if ($this->_getConfig()->isPopupAuthenticationExperience()) {
267
+ $secureUrlsConfigNode->addChild('amazonpayments_cart', '/checkout/cart');
268
+ }
269
+ if ($this->_getConfig()->isSandbox()) {
270
+ unset($secureUrlsConfigNode->amazonpayments_ipn);
271
+ }
272
+ return $this;
273
+ }
274
+
275
 
276
 
277
  // **********************************************************************
app/code/community/Creativestyle/AmazonPayments/Model/Simulator.php CHANGED
@@ -81,7 +81,7 @@ class Creativestyle_AmazonPayments_Model_Simulator {
81
  */
82
  public static function simulate(Varien_Object $payment, $transactionType = null) {
83
  // object state simulations are available only in the sandbox mode
84
- if (null !== $transactionType && self::_getConfig()->getEnvironment() == 'sandbox') {
85
  $availableSimulations = self::getAvailableSimulations();
86
  // check if the requested transaction type is on the list of allowed simulations
87
  if (array_key_exists($transactionType, $availableSimulations)) {
81
  */
82
  public static function simulate(Varien_Object $payment, $transactionType = null) {
83
  // object state simulations are available only in the sandbox mode
84
+ if (null !== $transactionType && self::_getConfig()->isSandbox()) {
85
  $availableSimulations = self::getAvailableSimulations();
86
  // check if the requested transaction type is on the list of allowed simulations
87
  if (array_key_exists($transactionType, $availableSimulations)) {
app/code/community/Creativestyle/AmazonPayments/controllers/Advanced/CheckoutController.php CHANGED
@@ -72,9 +72,9 @@ class Creativestyle_AmazonPayments_Advanced_CheckoutController extends Mage_Core
72
  return false;
73
  }
74
  }
75
- if (!$this->_getQuote()->getPayment()->getMethod()) {
76
- return false;
77
- }
78
  return true;
79
  }
80
 
@@ -155,7 +155,6 @@ class Creativestyle_AmazonPayments_Advanced_CheckoutController extends Mage_Core
155
  return;
156
  }
157
 
158
- $this->_getCheckout()->savePayment(null);
159
  $this->_getCheckoutSession()->setCartWasUpdated(false);
160
 
161
  $this->_saveOrderReferenceInSessionData();
@@ -271,6 +270,18 @@ class Creativestyle_AmazonPayments_Advanced_CheckoutController extends Mage_Core
271
  }
272
  }
273
 
 
 
 
 
 
 
 
 
 
 
 
 
274
  $this->_getQuote()->getPayment()->setTransactionId($this->_getOrderReferenceId());
275
  $simulation = $this->getRequest()->getPost('simulation', array());
276
  if (!empty($simulation)) {
72
  return false;
73
  }
74
  }
75
+
76
+ // TODO add checking if customer selected payment method in the Amazon Wallet widget
77
+
78
  return true;
79
  }
80
 
155
  return;
156
  }
157
 
 
158
  $this->_getCheckoutSession()->setCartWasUpdated(false);
159
 
160
  $this->_saveOrderReferenceInSessionData();
270
  }
271
  }
272
 
273
+ $giftMessages = $this->getRequest()->getPost('giftmessage');
274
+ if (is_array($giftMessages)) {
275
+ Mage::dispatchEvent('checkout_controller_onepage_save_shipping_method',
276
+ array(
277
+ 'request' => $this->getRequest(),
278
+ 'quote' => $this->_getQuote()
279
+ )
280
+ );
281
+ }
282
+
283
+ $this->_getCheckout()->savePayment(null);
284
+
285
  $this->_getQuote()->getPayment()->setTransactionId($this->_getOrderReferenceId());
286
  $simulation = $this->getRequest()->getPost('simulation', array());
287
  if (!empty($simulation)) {
app/code/community/Creativestyle/AmazonPayments/controllers/Advanced/LoginController.php CHANGED
@@ -15,6 +15,12 @@
15
  */
16
  class Creativestyle_AmazonPayments_Advanced_LoginController extends Mage_Core_Controller_Front_Action {
17
 
 
 
 
 
 
 
18
  private function _getApi() {
19
  return Mage::getModel('amazonpayments/api_login');
20
  }
@@ -27,10 +33,22 @@ class Creativestyle_AmazonPayments_Advanced_LoginController extends Mage_Core_Co
27
  return Mage::getSingleton('customer/session');
28
  }
29
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  protected function _getTargetUrl() {
31
- $target = $this->getRequest()->getParam('target', null);
32
- if (strtolower($target) == 'checkout') {
33
- $accessToken = $this->getRequest()->getParam('access_token', null);
34
  return Mage::getUrl('amazonpayments/advanced_checkout/', array('accessToken' => $accessToken));
35
  }
36
  return Mage::getUrl('customer/account/');
@@ -52,7 +70,7 @@ class Creativestyle_AmazonPayments_Advanced_LoginController extends Mage_Core_Co
52
  }
53
 
54
  public function indexAction() {
55
- $accessToken = $this->getRequest()->getParam('access_token', null);
56
  if (null !== $accessToken) {
57
  $accessToken = urldecode($accessToken);
58
  try {
@@ -159,4 +177,14 @@ class Creativestyle_AmazonPayments_Advanced_LoginController extends Mage_Core_Co
159
  $this->_forward('noRoute');
160
  }
161
 
 
 
 
 
 
 
 
 
 
 
162
  }
15
  */
16
  class Creativestyle_AmazonPayments_Advanced_LoginController extends Mage_Core_Controller_Front_Action {
17
 
18
+ const ACCESS_TOKEN_PARAM_NAME = 'access_token';
19
+
20
+ private function _extractAccessTokenFromUrl() {
21
+ return $this->getRequest()->getParam(self::ACCESS_TOKEN_PARAM_NAME, null);
22
+ }
23
+
24
  private function _getApi() {
25
  return Mage::getModel('amazonpayments/api_login');
26
  }
33
  return Mage::getSingleton('customer/session');
34
  }
35
 
36
+ protected function _getRedirectUrl() {
37
+ return Mage::getUrl('*/*/index', array(
38
+ self::ACCESS_TOKEN_PARAM_NAME => '%s',
39
+ 'target' => $this->getRequest()->getParam('target', null)
40
+ ));
41
+ }
42
+
43
+ protected function _getRedirectFailureUrl() {
44
+ if (strtolower($this->getRequest()->getParam('target', null)) == 'checkout') {
45
+ return Mage::getUrl('checkout/cart');
46
+ }
47
+ return Mage::getUrl('customer/account/login');
48
+ }
49
  protected function _getTargetUrl() {
50
+ if (strtolower($this->getRequest()->getParam('target', null)) == 'checkout') {
51
+ $accessToken = $this->_extractAccessTokenFromUrl();
 
52
  return Mage::getUrl('amazonpayments/advanced_checkout/', array('accessToken' => $accessToken));
53
  }
54
  return Mage::getUrl('customer/account/');
70
  }
71
 
72
  public function indexAction() {
73
+ $accessToken = $this->_extractAccessTokenFromUrl();
74
  if (null !== $accessToken) {
75
  $accessToken = urldecode($accessToken);
76
  try {
177
  $this->_forward('noRoute');
178
  }
179
 
180
+ public function redirectAction() {
181
+ $this->loadLayout();
182
+ $this->getLayout()->getBlock('head')->setTitle($this->__('Login with Amazon'));
183
+ $this->getLayout()->getBlock('amazonpayments_login_redirect')
184
+ ->setAccessTokenParamName(self::ACCESS_TOKEN_PARAM_NAME)
185
+ ->setRedirectUrl($this->_getRedirectUrl())
186
+ ->setFailureUrl($this->_getRedirectFailureUrl());
187
+ $this->renderLayout();
188
+ }
189
+
190
  }
app/code/community/Creativestyle/AmazonPayments/etc/config.xml CHANGED
@@ -17,7 +17,7 @@
17
  <config>
18
  <modules>
19
  <Creativestyle_AmazonPayments>
20
- <version>1.3.2</version>
21
  </Creativestyle_AmazonPayments>
22
  </modules>
23
  <global>
@@ -103,6 +103,15 @@
103
  </amazonpayments_advanced_observer>
104
  </observers>
105
  </sales_order_payment_transaction_save_after>
 
 
 
 
 
 
 
 
 
106
  </events>
107
  <payment>
108
  <groups>
@@ -347,8 +356,9 @@
347
  </modules>
348
  </translate>
349
  <secure_url>
350
- <amazonpayments>/amazonpayments</amazonpayments>
351
- <amazon_cart>/checkout/cart</amazon_cart>
 
352
  </secure_url>
353
  </frontend>
354
  <admin>
@@ -424,6 +434,7 @@
424
  </general>
425
  <login>
426
  <active>0</active>
 
427
  </login>
428
  <email>
429
  <order_confirmation>1</order_confirmation>
17
  <config>
18
  <modules>
19
  <Creativestyle_AmazonPayments>
20
+ <version>1.3.4</version>
21
  </Creativestyle_AmazonPayments>
22
  </modules>
23
  <global>
103
  </amazonpayments_advanced_observer>
104
  </observers>
105
  </sales_order_payment_transaction_save_after>
106
+ <controller_front_init_before>
107
+ <observers>
108
+ <amazonpayments_advanced_observer>
109
+ <type>singleton</type>
110
+ <class>Creativestyle_AmazonPayments_Model_Observer</class>
111
+ <method>setSecureUrls</method>
112
+ </amazonpayments_advanced_observer>
113
+ </observers>
114
+ </controller_front_init_before>
115
  </events>
116
  <payment>
117
  <groups>
356
  </modules>
357
  </translate>
358
  <secure_url>
359
+ <amazonpayments_checkout>/amazonpayments/advanced_checkout</amazonpayments_checkout>
360
+ <amazonpayments_login>/amazonpayments/advanced_login</amazonpayments_login>
361
+ <amazonpayments_ipn>/amazonpayments/advanced_ipn</amazonpayments_ipn>
362
  </secure_url>
363
  </frontend>
364
  <admin>
434
  </general>
435
  <login>
436
  <active>0</active>
437
+ <authentication>popup</authentication>
438
  </login>
439
  <email>
440
  <order_confirmation>1</order_confirmation>
app/code/community/Creativestyle/AmazonPayments/etc/system.xml CHANGED
@@ -223,6 +223,18 @@
223
  <show_in_store>1</show_in_store>
224
  <depends><active>1</active></depends>
225
  </client_id>
 
 
 
 
 
 
 
 
 
 
 
 
226
  </fields>
227
  </login>
228
  <email translate="label">
223
  <show_in_store>1</show_in_store>
224
  <depends><active>1</active></depends>
225
  </client_id>
226
+ <!--
227
+ <authentication>
228
+ <label>Authentication Experience</label>
229
+ <frontend_type>select</frontend_type>
230
+ <source_model>amazonpayments/lookup_authentication</source_model>
231
+ <sort_order>30</sort_order>
232
+ <show_in_default>1</show_in_default>
233
+ <show_in_website>1</show_in_website>
234
+ <show_in_store>1</show_in_store>
235
+ <depends><active>1</active></depends>
236
+ </authentication>
237
+ -->
238
  </fields>
239
  </login>
240
  <email translate="label">
app/design/frontend/base/default/layout/amazonpayments.xml CHANGED
@@ -73,7 +73,7 @@
73
  <block type="amazonpayments/checkout" name="amazonpayments.checkout" as="checkout" template="creativestyle/amazonpayments/checkout.phtml">
74
  <block type="amazonpayments/checkout_notice" name="amazonpayments.checkout.capture_notice" as="capture_notice" template="creativestyle/amazonpayments/checkout/capture_notice.phtml"/>
75
  <block type="checkout/onepage_shipping_method" name="amazonpayments.checkout.shipping_method" as="shipping_method" template="creativestyle/amazonpayments/checkout/shipping_method.phtml"/>
76
- <!--<block type="checkout/onepage_shipping_method_additional" name="amazonpayments.checkout.shipping_method.additional" as="additional" template="checkout/onepage/shipping_method/additional.phtml"/>-->
77
  <block type="amazonpayments/checkout_sandboxToolbox" name="amazonpayments.checkout.sandbox_toolbox" as="sandbox_toolbox" template="creativestyle/amazonpayments/checkout/sandbox_toolbox.phtml"/>
78
  <block type="checkout/onepage_review_info" name="amazonpayments_advanced.checkout.review" as="review" template="checkout/onepage/review/info.phtml">
79
  <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/onepage/review/item.phtml</template></action>
@@ -138,6 +138,16 @@
138
  <action method="setTemplate"><template>page/1column.phtml</template></action>
139
  </reference>
140
  </amazonpayments_advanced_login_index>
 
 
 
 
 
 
 
 
 
 
141
  <amazonpayments_account_confirm>
142
  <reference name="content">
143
  <block type="amazonpayments/login_account_confirm" name="amazonpayments_login_account_confirm" template="creativestyle/amazonpayments/login/form/account_confirm.phtml" />
73
  <block type="amazonpayments/checkout" name="amazonpayments.checkout" as="checkout" template="creativestyle/amazonpayments/checkout.phtml">
74
  <block type="amazonpayments/checkout_notice" name="amazonpayments.checkout.capture_notice" as="capture_notice" template="creativestyle/amazonpayments/checkout/capture_notice.phtml"/>
75
  <block type="checkout/onepage_shipping_method" name="amazonpayments.checkout.shipping_method" as="shipping_method" template="creativestyle/amazonpayments/checkout/shipping_method.phtml"/>
76
+ <block type="checkout/onepage_shipping_method_additional" name="amazonpayments.checkout.shipping_method.additional" as="additional" template="checkout/onepage/shipping_method/additional.phtml"/>
77
  <block type="amazonpayments/checkout_sandboxToolbox" name="amazonpayments.checkout.sandbox_toolbox" as="sandbox_toolbox" template="creativestyle/amazonpayments/checkout/sandbox_toolbox.phtml"/>
78
  <block type="checkout/onepage_review_info" name="amazonpayments_advanced.checkout.review" as="review" template="checkout/onepage/review/info.phtml">
79
  <action method="addItemRender"><type>default</type><block>checkout/cart_item_renderer</block><template>checkout/onepage/review/item.phtml</template></action>
138
  <action method="setTemplate"><template>page/1column.phtml</template></action>
139
  </reference>
140
  </amazonpayments_advanced_login_index>
141
+ <amazonpayments_advanced_login_redirect>
142
+ <remove name="right"/>
143
+ <remove name="left"/>
144
+ <reference name="root">
145
+ <action method="setTemplate"><template>page/1column.phtml</template></action>
146
+ </reference>
147
+ <reference name="content">
148
+ <block type="amazonpayments/login_redirect" name="amazonpayments_login_redirect" template="creativestyle/amazonpayments/login/redirect.phtml" />
149
+ </reference>
150
+ </amazonpayments_advanced_login_redirect>
151
  <amazonpayments_account_confirm>
152
  <reference name="content">
153
  <block type="amazonpayments/login_account_confirm" name="amazonpayments_login_account_confirm" template="creativestyle/amazonpayments/login/form/account_confirm.phtml" />
app/design/frontend/base/default/template/creativestyle/amazonpayments/button/js.phtml CHANGED
@@ -13,12 +13,21 @@
13
  * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
14
  */
15
  ?>
16
- APA.initialize(
17
- '<?php echo $this->getMerchantId(); ?>', null, <?php echo ($this->isLive() ? 'true' : 'false'); ?>, <?php echo ($this->isVirtual() ? 'true' : 'false'); ?>, <?php echo $this->getUrlParams(); ?>, null, <?php echo $this->getDesignParams(); ?>
18
- ).renderButtonWidget(
19
  <?php if ($this->isVirtual()): ?>
20
- '<img src="<?php echo $this->getSkinUrl('creativestyle/images/logo_a-glyph_1x.png'); ?>" alt="<?php echo $this->__('Pay with Amazon'); ?>"/><?php echo $this->__('<strong>Amazon Payments</strong> helps you shop quickly, safely and securely. You can pay on our website without re-entering your payment and address details.'); ?>'
21
  <?php else: ?>
22
- '<img src="<?php echo $this->getSkinUrl('creativestyle/images/logo_a-glyph_1x.png'); ?>" alt="<?php echo $this->__('Pay with Amazon'); ?>"/><?php echo $this->__('<strong>Amazon Payments</strong> helps you shop quickly, safely and securely. You can pay on our website without re-entering your payment and address details. All Amazon transactions are protected by Amazon&apos;s A-to-z Guarantee.'); ?>'
23
  <?php endif; ?>
24
- );
 
 
 
 
 
 
 
 
 
 
 
 
13
  * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
14
  */
15
  ?>
 
 
 
16
  <?php if ($this->isVirtual()): ?>
17
+ var amazonButtonTooltip = '<img src="<?php echo $this->getSkinUrl('creativestyle/images/logo_a-glyph_1x.png'); ?>" alt="<?php echo $this->__('Pay with Amazon'); ?>"/><?php echo $this->__('<strong>Amazon Payments</strong> helps you shop quickly, safely and securely. You can pay on our website without re-entering your payment and address details.'); ?>';
18
  <?php else: ?>
19
+ var amazonButtonTooltip = '<img src="<?php echo $this->getSkinUrl('creativestyle/images/logo_a-glyph_1x.png'); ?>" alt="<?php echo $this->__('Pay with Amazon'); ?>"/><?php echo $this->__('<strong>Amazon Payments</strong> helps you shop quickly, safely and securely. You can pay on our website without re-entering your payment and address details. All Amazon transactions are protected by Amazon&apos;s A-to-z Guarantee.'); ?>';
20
  <?php endif; ?>
21
+
22
+ APA.setup('<?php echo $this->getMerchantId(); ?>', {
23
+ live: <?php echo ($this->isLive() ? 'true' : 'false'); ?>,
24
+ popup: <?php echo ($this->isPopup() ? 'true' : 'false'); ?>,
25
+ virtual: <?php echo ($this->isVirtual() ? 'true' : 'false'); ?>,
26
+ layers: {
27
+ payButtons: '.payButtonWidget',
28
+ loginButtons: '.loginButtonWidget',
29
+ },
30
+ urls: <?php echo $this->getUrlParams(); ?>,
31
+ design: <?php echo $this->getDesignParams(); ?>
32
+
33
+ }).renderButtonWidget(amazonButtonTooltip);
app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout.phtml CHANGED
@@ -35,21 +35,23 @@
35
  <div id="walletWidgetDiv"></div>
36
  </li>
37
  <?php if (!$this->isVirtual()): ?>
38
- <li id="apa-shipping_method" class="section narrow-section store-widget">
39
- <div class="step-title">
40
- <h2><?php echo $this->helper('checkout')->__('Shipping Method'); ?></h2>
41
- </div>
42
- <div class="section-content"><?php echo $this->getChildHtml('shipping_method'); ?></div>
43
- <div class="section-please-wait"></div>
44
- </li>
45
- <?php if ($additional = $this->getChildHtml('additional')): ?>
46
- <li id="apa-shipping_method_additional" class="section store-widget">
47
- <div class="step-title"></div>
48
- <div class="section-content" id="amazonpayments-checkout-shipping-method-additional-load">
49
- <?php echo $additional; ?>
50
  </div>
 
 
51
  </li>
52
- <?php endif; ?>
 
 
 
 
 
 
 
 
53
  <?php endif; ?>
54
  <li id="apa-review" class="section review-section store-widget">
55
  <div class="step-title">
35
  <div id="walletWidgetDiv"></div>
36
  </li>
37
  <?php if (!$this->isVirtual()): ?>
38
+ <form id="co-shipping-method-form" action="">
39
+ <li id="apa-shipping_method" class="section narrow-section store-widget">
40
+ <div class="step-title">
41
+ <h2><?php echo $this->helper('checkout')->__('Shipping Method'); ?></h2>
 
 
 
 
 
 
 
 
42
  </div>
43
+ <div class="section-content"><?php echo $this->getChildHtml('shipping_method'); ?></div>
44
+ <div class="section-please-wait"></div>
45
  </li>
46
+ <?php if ($additional = $this->getChildHtml('additional')): ?>
47
+ <li id="apa-shipping_method_additional" class="section store-widget">
48
+ <div class="step-title"></div>
49
+ <div class="section-content" id="amazonpayments-checkout-shipping-method-additional-load">
50
+ <?php echo $additional; ?>
51
+ </div>
52
+ </li>
53
+ <?php endif; ?>
54
+ </form>
55
  <?php endif; ?>
56
  <li id="apa-review" class="section review-section store-widget">
57
  <div class="step-title">
app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout/js.phtml CHANGED
@@ -21,34 +21,35 @@ var lastPrice;
21
  if (typeof Translator != 'undefined') {
22
  Translator.add('There was an error processing your order. Please contact us or try again later.', '<?php echo $this->__('There was an error processing your order. Please contact us or try again later.'); ?>');
23
  }
24
- APA.initialize('<?php echo $this->getMerchantId(); ?>', <?php echo $orderReferenceId ? '\'' . $orderReferenceId . '\'' : 'null'; ?>,
25
- <?php echo ($this->isLive() ? 'true' : 'false'); ?>, <?php echo ($this->isVirtual() ? 'true' : 'false'); ?>, {
26
- saveShipping: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveShipping'); ?>',
 
 
 
 
 
27
  saveShippingMethod: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveShippingMethod'); ?>',
28
- saveOrder: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveOrder'); ?>',
29
- success: '<?php echo $this->getUrl('checkout/onepage/success'); ?>',
30
- failure: '<?php echo $this->getUrl('checkout/cart') ?>'
31
- }, {
32
- addressBook: 'addressBookWidgetDiv',
33
- wallet: 'walletWidgetDiv',
34
- shippingMethod: 'shippingMethodWidgetDiv',
35
- review: 'reviewWidgetDiv'
36
- }, {
37
- <?php if ($this->isResponsive()): ?>
38
- responsive: true,
39
- <?php else: ?>
 
40
  addressBook: {
41
- size: {
42
- width: '<?php echo $this->getAddressBookWidgetSize()->getWidth(); ?>',
43
- height: '<?php echo $this->getAddressBookWidgetSize()->getHeight(); ?>'
44
- }
45
  },
46
  wallet: {
47
- size: {
48
- width: '<?php echo $this->getWalletWidgetSize()->getWidth(); ?>',
49
- height: '<?php echo $this->getWalletWidgetSize()->getHeight(); ?>'
50
- }
51
  }
52
- <?php endif; ?>
 
53
  }
54
- ).initCheckout();
21
  if (typeof Translator != 'undefined') {
22
  Translator.add('There was an error processing your order. Please contact us or try again later.', '<?php echo $this->__('There was an error processing your order. Please contact us or try again later.'); ?>');
23
  }
24
+
25
+ APA.setup('<?php echo $this->getMerchantId(); ?>', {
26
+ orderReferenceId: <?php echo $orderReferenceId ? '\'' . $orderReferenceId . '\'' : 'null'; ?>,
27
+ live: <?php echo ($this->isLive() ? 'true' : 'false'); ?>,
28
+ popup: <?php echo ($this->isPopup() ? 'true' : 'false'); ?>,
29
+ virtual: <?php echo ($this->isVirtual() ? 'true' : 'false'); ?>,
30
+ urls: {
31
+ saveShipping: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveShipping'); ?>',
32
  saveShippingMethod: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveShippingMethod'); ?>',
33
+ saveOrder: '<?php echo $this->getUrl('amazonpayments/advanced_checkout/saveOrder'); ?>',
34
+ success: '<?php echo $this->getUrl('checkout/onepage/success'); ?>',
35
+ failure: '<?php echo $this->getUrl('checkout/cart') ?>'
36
+ },
37
+ layers: {
38
+ addressBook: 'addressBookWidgetDiv',
39
+ wallet: 'walletWidgetDiv',
40
+ shippingMethod: 'shippingMethodWidgetDiv',
41
+ review: 'reviewWidgetDiv'
42
+ },
43
+ design: {
44
+ responsive: <?php echo ($this->isResponsive() ? 'true' : 'false'); ?>,
45
+ <?php if (!$this->isResponsive()): ?>
46
  addressBook: {
47
+ size: {width: '<?php echo $this->getAddressBookWidgetSize()->getWidth(); ?>', height: '<?php echo $this->getAddressBookWidgetSize()->getHeight(); ?>'}
 
 
 
48
  },
49
  wallet: {
50
+ size: {width: '<?php echo $this->getWalletWidgetSize()->getWidth(); ?>', height: '<?php echo $this->getWalletWidgetSize()->getHeight(); ?>'}
 
 
 
51
  }
52
+ <?php endif; ?>
53
+
54
  }
55
+ }).initCheckout();
app/design/frontend/base/default/template/creativestyle/amazonpayments/checkout/shipping_method.phtml CHANGED
@@ -13,11 +13,6 @@
13
  * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
14
  */
15
  ?>
16
- <form id="co-shipping-method-form" action="">
17
- <div id="shippingMethodWidgetDiv">
18
- <!-- Content loaded dynamically -->
19
- </div>
20
- <div id="amazonpayments-checkout-shipping-method-additional-load">
21
- <?php echo $this->getChildHtml('additional') ?>
22
- </div>
23
- </form>
13
  * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
14
  */
15
  ?>
16
+ <div id="shippingMethodWidgetDiv">
17
+ <!-- Content loaded dynamically -->
18
+ </div>
 
 
 
 
 
app/design/frontend/base/default/template/creativestyle/amazonpayments/login/js.phtml CHANGED
@@ -14,3 +14,4 @@
14
  */
15
  ?>
16
  amazon.Login.setClientId('<?php echo $this->getClientId(); ?>');
 
14
  */
15
  ?>
16
  amazon.Login.setClientId('<?php echo $this->getClientId(); ?>');
17
+ amazon.Login.setUseCookie(true);
app/design/frontend/base/default/template/creativestyle/amazonpayments/login/logout.phtml CHANGED
@@ -14,3 +14,4 @@
14
  */
15
  ?>
16
  amazon.Login.logout();
 
14
  */
15
  ?>
16
  amazon.Login.logout();
17
+ Mage.Cookies.clear('amazon_Login_accessToken');
app/design/frontend/base/default/template/creativestyle/amazonpayments/login/redirect.phtml ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * This file is part of the official Amazon Payments Advanced extension
4
+ * for Magento (c) creativestyle GmbH <amazon@creativestyle.de>
5
+ * All rights reserved
6
+ *
7
+ * Reuse or modification of this source code is not allowed
8
+ * without written permission from creativestyle GmbH
9
+ *
10
+ * @category Creativestyle
11
+ * @package Creativestyle_AmazonPayments
12
+ * @copyright Copyright (c) 2015 creativestyle GmbH
13
+ * @author Marek Zabrowarny / creativestyle GmbH <amazon@creativestyle.de>
14
+ */
15
+ ?>
16
+ <h1><?php echo $this->__('Redirecting, please wait...'); ?></h1>
17
+ <script type="text/javascript">//<![CDATA[
18
+ var accessToken = (new RegExp('[?|&|#]<?php echo $this->getAccessTokenParamName(); ?>=([^&;]+?)(&|#|;|$)').exec(location.hash) || [,""])[1].replace(/\+/g,'%20') || null;
19
+ if (typeof accessToken === 'string' && accessToken.match(/^Atza/)) {
20
+ Mage.Cookies.set('amazon_Login_accessToken', decodeURIComponent(accessToken), null, '/', null, true);
21
+ setLocation('<?php echo $this->getRedirectUrl(); ?>'.replace(/%s/, accessToken));
22
+ } else {
23
+ setLocation('<?php echo $this->getFailureUrl(); ?>');
24
+ }
25
+ //]]></script>
js/creativestyle/apa_checkout.js CHANGED
@@ -17,9 +17,8 @@ if (!window.Review)
17
 
18
  var APA = {
19
 
20
- live: true,
21
- virtual: false,
22
  submitAllowed: false,
 
23
 
24
  Widgets: {
25
  ShippingMethod: Class.create({
@@ -105,13 +104,13 @@ var APA = {
105
  if ($('checkoutSteps') && $('checkoutSteps').down('.amazon-widget-overlay')) {
106
  $('checkoutSteps').down('.amazon-widget-overlay').remove();
107
  }
108
- this.enableSubmit();
109
  },
110
 
111
  initCheckout: function() {
112
  this.disableSubmit().scaffoldPaymentWidget();
113
  if (this.virtual) {
114
- return this.setLoadWaiting(APA.layers.wallet).renderWalletWidget();
115
  }
116
  if (!this.orderReferenceId) {
117
  return this.setLoadWaiting(APA.layers.shippingMethod, APA.layers.wallet, APA.layers.review).renderAddressBookWidget();
@@ -141,7 +140,7 @@ var APA = {
141
  authorization: function() {
142
  amazon.Login.authorize({
143
  scope: 'profile payments:widget payments:shipping_address',
144
- popup: true
145
  }, APA.urls.pay);
146
  },
147
  onError: APA.amazonErrorCallback
@@ -155,7 +154,7 @@ var APA = {
155
  authorization: function() {
156
  amazon.Login.authorize({
157
  scope: 'profile payments:widget payments:shipping_address',
158
- popup: true
159
  }, APA.urls.login);
160
  },
161
  onError: APA.amazonErrorCallback
@@ -231,6 +230,7 @@ var APA = {
231
  },
232
 
233
  addressSelectCallback: function() {
 
234
  APA.setLoadWaiting(APA.layers.shippingMethod, APA.layers.review);
235
  new Ajax.Request(APA.urls.saveShipping, {
236
  method: 'post',
@@ -273,16 +273,21 @@ var APA = {
273
  onOrderReferenceCreate: APA.orderReferenceCreateCallback,
274
  amazonOrderReferenceId: APA.orderReferenceId,
275
  design: (APA.design.responsive ? {designMode: 'responsive'} : APA.design.wallet),
 
276
  onError: APA.amazonErrorCallback
277
  }).bind(APA.layers.wallet);
278
  return this;
279
  },
280
 
 
 
 
 
281
  renderReviewWidget: function(html) {
282
  new APA.Widgets.Review({
283
  onError: APA.magentoErrorCallback
284
  }).update(html);
285
- this.submitAllowed ? this.enableSubmit() : this.disableSubmit();
286
  return this;
287
  },
288
 
@@ -351,11 +356,19 @@ var APA = {
351
 
352
  allowSubmit: function(allowed) {
353
  this.submitAllowed = allowed;
354
- if (allowed) {
 
 
 
 
 
 
 
 
 
355
  return this.enableSubmit();
356
- } else {
357
- return this.disableSubmit();
358
  }
 
359
  },
360
 
361
  disableSubmit: function() {
@@ -373,7 +386,7 @@ var APA = {
373
  },
374
 
375
  enableSubmit: function() {
376
- if (this.submitAllowed) {
377
  var buttonContainers = $(this.layers.review).select('div.buttons-set');
378
  if (buttonContainers) {
379
  buttonContainers.each(function(buttonContainer) {
@@ -401,8 +414,9 @@ var APA = {
401
  getSaveOrderParams: function() {
402
  var params = '';
403
  if (APA.virtual) {
 
404
  if ($('checkout-agreements')) {
405
- params += Form.serialize($('checkout-agreements'));
406
  }
407
  } else {
408
  params = Form.serialize($('co-shipping-method-form'));
@@ -459,7 +473,41 @@ var APA = {
459
  }
460
  }, design)
461
  });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
462
  }
463
 
464
  };
465
-
17
 
18
  var APA = {
19
 
 
 
20
  submitAllowed: false,
21
+ paymentSelected: false,
22
 
23
  Widgets: {
24
  ShippingMethod: Class.create({
104
  if ($('checkoutSteps') && $('checkoutSteps').down('.amazon-widget-overlay')) {
105
  $('checkoutSteps').down('.amazon-widget-overlay').remove();
106
  }
107
+ this.toggleSubmit();
108
  },
109
 
110
  initCheckout: function() {
111
  this.disableSubmit().scaffoldPaymentWidget();
112
  if (this.virtual) {
113
+ return this.setLoadWaiting(APA.layers.wallet).renderWalletWidget().allowSubmit(true);
114
  }
115
  if (!this.orderReferenceId) {
116
  return this.setLoadWaiting(APA.layers.shippingMethod, APA.layers.wallet, APA.layers.review).renderAddressBookWidget();
140
  authorization: function() {
141
  amazon.Login.authorize({
142
  scope: 'profile payments:widget payments:shipping_address',
143
+ popup: APA.popup
144
  }, APA.urls.pay);
145
  },
146
  onError: APA.amazonErrorCallback
154
  authorization: function() {
155
  amazon.Login.authorize({
156
  scope: 'profile payments:widget payments:shipping_address',
157
+ popup: APA.popup
158
  }, APA.urls.login);
159
  },
160
  onError: APA.amazonErrorCallback
230
  },
231
 
232
  addressSelectCallback: function() {
233
+ APA.selectPayment(false);
234
  APA.setLoadWaiting(APA.layers.shippingMethod, APA.layers.review);
235
  new Ajax.Request(APA.urls.saveShipping, {
236
  method: 'post',
273
  onOrderReferenceCreate: APA.orderReferenceCreateCallback,
274
  amazonOrderReferenceId: APA.orderReferenceId,
275
  design: (APA.design.responsive ? {designMode: 'responsive'} : APA.design.wallet),
276
+ onPaymentSelect: APA.paymentSelectCallback,
277
  onError: APA.amazonErrorCallback
278
  }).bind(APA.layers.wallet);
279
  return this;
280
  },
281
 
282
+ paymentSelectCallback: function() {
283
+ APA.selectPayment(true);
284
+ },
285
+
286
  renderReviewWidget: function(html) {
287
  new APA.Widgets.Review({
288
  onError: APA.magentoErrorCallback
289
  }).update(html);
290
+ this.toggleSubmit();
291
  return this;
292
  },
293
 
356
 
357
  allowSubmit: function(allowed) {
358
  this.submitAllowed = allowed;
359
+ return this.toggleSubmit();
360
+ },
361
+
362
+ selectPayment: function(selected) {
363
+ this.paymentSelected = selected;
364
+ return this.toggleSubmit();
365
+ },
366
+
367
+ toggleSubmit: function() {
368
+ if (this.submitAllowed && this.paymentSelected) {
369
  return this.enableSubmit();
 
 
370
  }
371
+ return this.disableSubmit();
372
  },
373
 
374
  disableSubmit: function() {
386
  },
387
 
388
  enableSubmit: function() {
389
+ if (this.submitAllowed && this.paymentSelected) {
390
  var buttonContainers = $(this.layers.review).select('div.buttons-set');
391
  if (buttonContainers) {
392
  buttonContainers.each(function(buttonContainer) {
414
  getSaveOrderParams: function() {
415
  var params = '';
416
  if (APA.virtual) {
417
+ params += Object.toQueryString({orderReferenceId: APA.orderReferenceId});
418
  if ($('checkout-agreements')) {
419
+ params += '&' + Form.serialize($('checkout-agreements'));
420
  }
421
  } else {
422
  params = Form.serialize($('co-shipping-method-form'));
473
  }
474
  }, design)
475
  });
476
+ },
477
+
478
+ setup: function(sellerId, options) {
479
+ return Object.extend(APA, {
480
+ sellerId: sellerId,
481
+ orderReferenceId: typeof options.orderReferenceId == 'undefined' ? null : options.orderReferenceId,
482
+ live: typeof options.live == 'undefined' ? true : options.live,
483
+ popup: typeof options.popup == 'undefined' ? true : options.popup,
484
+ virtual: typeof options.virtual == 'undefined' ? false : options.virtual,
485
+ layers: Object.extend({
486
+ payButtons: '.payButtonWidget',
487
+ loginButtons: '.loginButtonWidget',
488
+ addressBook: 'addressBookWidgetDiv',
489
+ wallet: 'walletWidgetDiv',
490
+ shippingMethod: 'shippingMethodWidgetDiv',
491
+ review: 'reviewWidgetDiv'
492
+ }, options.layers),
493
+ urls: Object.extend({
494
+ login: null,
495
+ pay: null,
496
+ checkout: null,
497
+ saveShipping: null,
498
+ saveShippingMethod: null,
499
+ saveOrder: null,
500
+ success: null,
501
+ failure: null
502
+ }, options.urls),
503
+ design: Object.extend({
504
+ responsive: true,
505
+ addressBook: {size: {width: '440px', height: '260px'}},
506
+ wallet: {size: {width: '440px', height: '260px'}},
507
+ payButton: {type: 'PwA'},
508
+ loginButton: {type: 'LwA'}
509
+ }, options.design)
510
+ });
511
  }
512
 
513
  };
 
js/creativestyle/apa_checkout.min.js CHANGED
@@ -1 +1 @@
1
- if(!window.Review){var Review=function(){}}var APA={live:true,virtual:false,submitAllowed:false,Widgets:{ShippingMethod:Class.create({initialize:function(a){this.layer=$(APA.layers.shippingMethod);Object.extend(this,a);Event.stopObserving(this.layer,"widget:update").observe("widget:update",this.onUpdate.bindAsEventListener(this))},update:function(b){try{Element.update(this.layer,b);if(!this.layer.down("input[type=radio]:checked")){var a=this.layer.down("input[type=radio]");if(a){a.checked=true}}Event.stopObserving(this.layer,"change").observe("change",this.onShippingMethodSelect.bindAsEventListener(this));Event.stopObserving(this.layer,"widget:checked").observe("widget:checked",this.onShippingMethodSelect.bindAsEventListener(this));Event.fire(this.layer,"widget:update")}catch(c){this.onError(c)}}}),Review:Class.create({initialize:function(a){this.layer=$(APA.layers.review);Object.extend(this,a)},update:function(a){try{Element.update(this.layer,a)}catch(b){this.onError(b)}}})},setLoadWaiting:function(){for(var b=0;b<arguments.length;b++){if($(arguments[b])){var a=$(arguments[b]).up("li");a.addClassName("loading")}}return this},unsetLoadWaiting:function(){for(var b=0;b<arguments.length;b++){if($(arguments[b])){var a=$(arguments[b]).up("li");a.removeClassName("loading")}}return this},setOrderSaveWaiting:function(){if($(APA.layers.review)){var a=$(APA.layers.review).down(".please-wait");if(a){Element.show(a)}}if($("checkoutSteps")){$("checkoutSteps").insert({top:new Element("div",{"class":"amazon-widget-overlay"})})}this.disableSubmit()},unsetOrderSaveWaiting:function(){if($(APA.layers.review)){var a=$(APA.layers.review).down(".please-wait");if(a){Element.hide(a)}}if($("checkoutSteps")&&$("checkoutSteps").down(".amazon-widget-overlay")){$("checkoutSteps").down(".amazon-widget-overlay").remove()}this.enableSubmit()},initCheckout:function(){this.disableSubmit().scaffoldPaymentWidget();if(this.virtual){return this.setLoadWaiting(APA.layers.wallet).renderWalletWidget()}if(!this.orderReferenceId){return this.setLoadWaiting(APA.layers.shippingMethod,APA.layers.wallet,APA.layers.review).renderAddressBookWidget()}return this.setLoadWaiting(APA.layers.shippingMethod,APA.layers.wallet,APA.layers.review).renderAddressBookWidget().renderWalletWidget()},scaffoldPaymentWidget:function(){if(typeof APA.design.wallet.size!="undefined"&&!APA.design.responsive){if(APA.design.wallet.size.width){$(APA.layers.wallet).up().setStyle({width:APA.design.wallet.size.width})}if(APA.design.wallet.size.height){$(APA.layers.wallet).up().setStyle({height:APA.design.wallet.size.height})}}return this},renderButtonWidget:function(c){if(APA.urls.login!=null){$$(APA.layers.payButtons).each(function(d){new OffAmazonPayments.Button(d.identify(),APA.sellerId,{type:d.buttonType||APA.design.payButton.type||"PwA",size:d.buttonSize||APA.design.payButton.size,color:d.buttonColor||APA.design.payButton.color,authorization:function(){amazon.Login.authorize({scope:"profile payments:widget payments:shipping_address",popup:true},APA.urls.pay)},onError:APA.amazonErrorCallback})});$$(APA.layers.loginButtons).each(function(d){new OffAmazonPayments.Button(d.identify(),APA.sellerId,{type:d.buttonType||APA.design.loginButton.type||"LwA",size:d.buttonSize||APA.design.loginButton.size,color:d.buttonColor||APA.design.loginButton.color,authorization:function(){amazon.Login.authorize({scope:"profile payments:widget payments:shipping_address",popup:true},APA.urls.login)},onError:APA.amazonErrorCallback})})}else{$$(APA.layers.payButtons).each(function(d){new OffAmazonPayments.Widgets.Button({sellerId:APA.sellerId,useAmazonAddressBook:!APA.virtual,onSignIn:APA.signInCallback,onError:APA.amazonErrorCallback}).bind(d.identify())})}if(c&&typeof Tooltip!="undefined"){var b=$$(APA.layers.payButtons+","+APA.layers.loginButtons).findAll(function(d){return d.hasClassName("with-tooltip")});if(b.length){var a=document.createElement("div");a.setAttribute("id","pay-with-amazon-tooltip");a.addClassName("pay-with-amazon-tooltip");a.setStyle({display:"none",zIndex:10});a.update(c);document.body.appendChild(a);b.each(function(d){var e=d.down("img");if(e){new Tooltip(e,a)}})}}},signInCallback:function(a){var c=document.createElement("input");c.setAttribute("type","hidden");c.setAttribute("name","orderReferenceId");c.setAttribute("value",a.getAmazonOrderReferenceId());var b=document.createElement("form");b.setAttribute("method","post");b.setAttribute("action",APA.urls.checkout);b.appendChild(c);document.body.appendChild(b);b.submit();return},renderAddressBookWidget:function(){APA.setLoadWaiting(APA.layers.shippingMethod,APA.layers.review);new OffAmazonPayments.Widgets.AddressBook({sellerId:APA.sellerId,onOrderReferenceCreate:APA.orderReferenceCreateCallback,amazonOrderReferenceId:APA.orderReferenceId,design:(APA.design.responsive?{designMode:"responsive"}:APA.design.addressBook),onAddressSelect:APA.addressSelectCallback,onError:APA.amazonErrorCallback}).bind(APA.layers.addressBook);return this},orderReferenceCreateCallback:function(a){if(!APA.orderReferenceId){APA.orderReferenceId=a.getAmazonOrderReferenceId();if(!APA.virtual){APA.renderWalletWidget()}}},addressSelectCallback:function(){APA.setLoadWaiting(APA.layers.shippingMethod,APA.layers.review);new Ajax.Request(APA.urls.saveShipping,{method:"post",parameters:{orderReferenceId:APA.orderReferenceId},evalScripts:true,onSuccess:APA.successCallback,onFailure:APA.ajaxFailureCallback})},renderShippingMethodWidget:function(a){APA.setLoadWaiting(APA.layers.review);new APA.Widgets.ShippingMethod({onShippingMethodSelect:APA.shippingMethodSelectCallback,onUpdate:APA.shippingMethodUpdateCallback,onError:APA.magentoErrorCallback}).update(a);return this},shippingMethodSelectCallback:function(a){APA.setLoadWaiting(APA.layers.review);new Ajax.Request(APA.urls.saveShippingMethod,{method:"post",parameters:Form.serialize($("co-shipping-method-form")),evalScripts:true,onSuccess:APA.successCallback,onFailure:APA.ajaxFailureCallback})},shippingMethodUpdateCallback:function(b){var a=Event.element(b);Event.fire(a,"widget:checked")},renderWalletWidget:function(){new OffAmazonPayments.Widgets.Wallet({sellerId:APA.sellerId,onOrderReferenceCreate:APA.orderReferenceCreateCallback,amazonOrderReferenceId:APA.orderReferenceId,design:(APA.design.responsive?{designMode:"responsive"}:APA.design.wallet),onError:APA.amazonErrorCallback}).bind(APA.layers.wallet);return this},renderReviewWidget:function(a){new APA.Widgets.Review({onError:APA.magentoErrorCallback}).update(a);this.submitAllowed?this.enableSubmit():this.disableSubmit();return this},successCallback:function(transport){response=eval("("+transport.responseText+")");if(response.error){APA.magentoErrorCallback(response.error_messages)}if(response.render_widget){$H(response.render_widget).each(function(pair){APA["render"+pair.key.capitalize().camelize()+"Widget"](pair.value);if(pair.value){APA.unsetLoadWaiting(APA.layers[pair.key.camelize()])}})}if(response.allow_submit){APA.allowSubmit(true)}else{APA.allowSubmit(false)}},saveOrderCallback:function(transport){response=eval("("+transport.responseText+")");if(response.success){window.location=APA.urls.success}if(response.redirect){window.location=response.redirect}if(response.error){APA.unsetOrderSaveWaiting();APA.magentoErrorCallback(response.error_messages)}},ajaxFailureCallback:function(){window.location.href=APA.urls.failure},amazonErrorCallback:function(a){if(!APA.live){console.trace();alert(a.getErrorMessage())}var b=["BuyerNotAssociated","BuyerSessionExpired","StaleOrderReference"];if(b.any(function(c){return c==a.getErrorCode()})){window.location.href=APA.urls.failure}},magentoErrorCallback:function(a){if(!APA.live){console.trace()}if(typeof(a)=="object"){a=a.join("\n")}if(a){alert(a)}},allowSubmit:function(a){this.submitAllowed=a;if(a){return this.enableSubmit()}else{return this.disableSubmit()}},disableSubmit:function(){var a=$(this.layers.review).select("div.buttons-set");if(a){a.each(function(b){b.addClassName("disabled");var c=b.down("button[type=submit].button");if(c){c.disabled=true}})}return this},enableSubmit:function(){if(this.submitAllowed){var a=$(this.layers.review).select("div.buttons-set");if(a){a.each(function(b){b.removeClassName("disabled");var c=b.down("button[type=submit].button");if(c){c.disabled=false}})}}return this},saveOrder:function(){APA.setOrderSaveWaiting();new Ajax.Request(APA.urls.saveOrder,{method:"post",parameters:APA.getSaveOrderParams(),onSuccess:APA.saveOrderCallback,onFailure:APA.ajaxFailureCallback})},getSaveOrderParams:function(){var a="";if(APA.virtual){if($("checkout-agreements")){a+=Form.serialize($("checkout-agreements"))}}else{a=Form.serialize($("co-shipping-method-form"));if($("checkout-agreements")){a+="&"+Form.serialize($("checkout-agreements"))}}a.save=true;return a},initialize:function(c,a,d,g,f,e,b){return Object.extend(APA,{sellerId:c,orderReferenceId:a,live:d,virtual:g,urls:Object.extend({login:null,pay:null,checkout:null,saveShipping:null,saveShippingMethod:null,saveOrder:null,success:null,failure:null},f),layers:Object.extend({payButtons:".payButtonWidget",loginButtons:".loginButtonWidget",addressBook:"addressBookWidgetDiv",wallet:"walletWidgetDiv",shippingMethod:"shippingMethodWidgetDiv",review:"reviewWidgetDiv"},e),design:Object.extend({addressBook:{size:{width:"440px",height:"260px"}},wallet:{size:{width:"440px",height:"260px"}},payButton:{type:"PwA"},loginButton:{type:"LwA"}},b)})}};
1
+ if(!window.Review){var Review=function(){}}var APA={submitAllowed:false,paymentSelected:false,Widgets:{ShippingMethod:Class.create({initialize:function(a){this.layer=$(APA.layers.shippingMethod);Object.extend(this,a);Event.stopObserving(this.layer,"widget:update").observe("widget:update",this.onUpdate.bindAsEventListener(this))},update:function(b){try{Element.update(this.layer,b);if(!this.layer.down("input[type=radio]:checked")){var a=this.layer.down("input[type=radio]");if(a){a.checked=true}}Event.stopObserving(this.layer,"change").observe("change",this.onShippingMethodSelect.bindAsEventListener(this));Event.stopObserving(this.layer,"widget:checked").observe("widget:checked",this.onShippingMethodSelect.bindAsEventListener(this));Event.fire(this.layer,"widget:update")}catch(c){this.onError(c)}}}),Review:Class.create({initialize:function(a){this.layer=$(APA.layers.review);Object.extend(this,a)},update:function(a){try{Element.update(this.layer,a)}catch(b){this.onError(b)}}})},setLoadWaiting:function(){for(var b=0;b<arguments.length;b++){if($(arguments[b])){var a=$(arguments[b]).up("li");a.addClassName("loading")}}return this},unsetLoadWaiting:function(){for(var b=0;b<arguments.length;b++){if($(arguments[b])){var a=$(arguments[b]).up("li");a.removeClassName("loading")}}return this},setOrderSaveWaiting:function(){if($(APA.layers.review)){var a=$(APA.layers.review).down(".please-wait");if(a){Element.show(a)}}if($("checkoutSteps")){$("checkoutSteps").insert({top:new Element("div",{"class":"amazon-widget-overlay"})})}this.disableSubmit()},unsetOrderSaveWaiting:function(){if($(APA.layers.review)){var a=$(APA.layers.review).down(".please-wait");if(a){Element.hide(a)}}if($("checkoutSteps")&&$("checkoutSteps").down(".amazon-widget-overlay")){$("checkoutSteps").down(".amazon-widget-overlay").remove()}this.toggleSubmit()},initCheckout:function(){this.disableSubmit().scaffoldPaymentWidget();if(this.virtual){return this.setLoadWaiting(APA.layers.wallet).renderWalletWidget().allowSubmit(true)}if(!this.orderReferenceId){return this.setLoadWaiting(APA.layers.shippingMethod,APA.layers.wallet,APA.layers.review).renderAddressBookWidget()}return this.setLoadWaiting(APA.layers.shippingMethod,APA.layers.wallet,APA.layers.review).renderAddressBookWidget().renderWalletWidget()},scaffoldPaymentWidget:function(){if(typeof APA.design.wallet.size!="undefined"&&!APA.design.responsive){if(APA.design.wallet.size.width){$(APA.layers.wallet).up().setStyle({width:APA.design.wallet.size.width})}if(APA.design.wallet.size.height){$(APA.layers.wallet).up().setStyle({height:APA.design.wallet.size.height})}}return this},renderButtonWidget:function(c){if(APA.urls.login!=null){$$(APA.layers.payButtons).each(function(d){new OffAmazonPayments.Button(d.identify(),APA.sellerId,{type:d.buttonType||APA.design.payButton.type||"PwA",size:d.buttonSize||APA.design.payButton.size,color:d.buttonColor||APA.design.payButton.color,authorization:function(){amazon.Login.authorize({scope:"profile payments:widget payments:shipping_address",popup:APA.popup},APA.urls.pay)},onError:APA.amazonErrorCallback})});$$(APA.layers.loginButtons).each(function(d){new OffAmazonPayments.Button(d.identify(),APA.sellerId,{type:d.buttonType||APA.design.loginButton.type||"LwA",size:d.buttonSize||APA.design.loginButton.size,color:d.buttonColor||APA.design.loginButton.color,authorization:function(){amazon.Login.authorize({scope:"profile payments:widget payments:shipping_address",popup:APA.popup},APA.urls.login)},onError:APA.amazonErrorCallback})})}else{$$(APA.layers.payButtons).each(function(d){new OffAmazonPayments.Widgets.Button({sellerId:APA.sellerId,useAmazonAddressBook:!APA.virtual,onSignIn:APA.signInCallback,onError:APA.amazonErrorCallback}).bind(d.identify())})}if(c&&typeof Tooltip!="undefined"){var b=$$(APA.layers.payButtons+","+APA.layers.loginButtons).findAll(function(d){return d.hasClassName("with-tooltip")});if(b.length){var a=document.createElement("div");a.setAttribute("id","pay-with-amazon-tooltip");a.addClassName("pay-with-amazon-tooltip");a.setStyle({display:"none",zIndex:10});a.update(c);document.body.appendChild(a);b.each(function(d){var e=d.down("img");if(e){new Tooltip(e,a)}})}}},signInCallback:function(a){var c=document.createElement("input");c.setAttribute("type","hidden");c.setAttribute("name","orderReferenceId");c.setAttribute("value",a.getAmazonOrderReferenceId());var b=document.createElement("form");b.setAttribute("method","post");b.setAttribute("action",APA.urls.checkout);b.appendChild(c);document.body.appendChild(b);b.submit();return},renderAddressBookWidget:function(){APA.setLoadWaiting(APA.layers.shippingMethod,APA.layers.review);new OffAmazonPayments.Widgets.AddressBook({sellerId:APA.sellerId,onOrderReferenceCreate:APA.orderReferenceCreateCallback,amazonOrderReferenceId:APA.orderReferenceId,design:(APA.design.responsive?{designMode:"responsive"}:APA.design.addressBook),onAddressSelect:APA.addressSelectCallback,onError:APA.amazonErrorCallback}).bind(APA.layers.addressBook);return this},orderReferenceCreateCallback:function(a){if(!APA.orderReferenceId){APA.orderReferenceId=a.getAmazonOrderReferenceId();if(!APA.virtual){APA.renderWalletWidget()}}},addressSelectCallback:function(){APA.selectPayment(false);APA.setLoadWaiting(APA.layers.shippingMethod,APA.layers.review);new Ajax.Request(APA.urls.saveShipping,{method:"post",parameters:{orderReferenceId:APA.orderReferenceId},evalScripts:true,onSuccess:APA.successCallback,onFailure:APA.ajaxFailureCallback})},renderShippingMethodWidget:function(a){APA.setLoadWaiting(APA.layers.review);new APA.Widgets.ShippingMethod({onShippingMethodSelect:APA.shippingMethodSelectCallback,onUpdate:APA.shippingMethodUpdateCallback,onError:APA.magentoErrorCallback}).update(a);return this},shippingMethodSelectCallback:function(a){APA.setLoadWaiting(APA.layers.review);new Ajax.Request(APA.urls.saveShippingMethod,{method:"post",parameters:Form.serialize($("co-shipping-method-form")),evalScripts:true,onSuccess:APA.successCallback,onFailure:APA.ajaxFailureCallback})},shippingMethodUpdateCallback:function(b){var a=Event.element(b);Event.fire(a,"widget:checked")},renderWalletWidget:function(){new OffAmazonPayments.Widgets.Wallet({sellerId:APA.sellerId,onOrderReferenceCreate:APA.orderReferenceCreateCallback,amazonOrderReferenceId:APA.orderReferenceId,design:(APA.design.responsive?{designMode:"responsive"}:APA.design.wallet),onPaymentSelect:APA.paymentSelectCallback,onError:APA.amazonErrorCallback}).bind(APA.layers.wallet);return this},paymentSelectCallback:function(){APA.selectPayment(true)},renderReviewWidget:function(a){new APA.Widgets.Review({onError:APA.magentoErrorCallback}).update(a);this.toggleSubmit();return this},successCallback:function(transport){response=eval("("+transport.responseText+")");if(response.error){APA.magentoErrorCallback(response.error_messages)}if(response.render_widget){$H(response.render_widget).each(function(pair){APA["render"+pair.key.capitalize().camelize()+"Widget"](pair.value);if(pair.value){APA.unsetLoadWaiting(APA.layers[pair.key.camelize()])}})}if(response.allow_submit){APA.allowSubmit(true)}else{APA.allowSubmit(false)}},saveOrderCallback:function(transport){response=eval("("+transport.responseText+")");if(response.success){window.location=APA.urls.success}if(response.redirect){window.location=response.redirect}if(response.error){APA.unsetOrderSaveWaiting();APA.magentoErrorCallback(response.error_messages)}},ajaxFailureCallback:function(){window.location.href=APA.urls.failure},amazonErrorCallback:function(a){if(!APA.live){console.trace();alert(a.getErrorMessage())}var b=["BuyerNotAssociated","BuyerSessionExpired","StaleOrderReference"];if(b.any(function(c){return c==a.getErrorCode()})){window.location.href=APA.urls.failure}},magentoErrorCallback:function(a){if(!APA.live){console.trace()}if(typeof(a)=="object"){a=a.join("\n")}if(a){alert(a)}},allowSubmit:function(a){this.submitAllowed=a;return this.toggleSubmit()},selectPayment:function(a){this.paymentSelected=a;return this.toggleSubmit()},toggleSubmit:function(){if(this.submitAllowed&&this.paymentSelected){return this.enableSubmit()}return this.disableSubmit()},disableSubmit:function(){var a=$(this.layers.review).select("div.buttons-set");if(a){a.each(function(b){b.addClassName("disabled");var c=b.down("button[type=submit].button");if(c){c.disabled=true}})}return this},enableSubmit:function(){if(this.submitAllowed&&this.paymentSelected){var a=$(this.layers.review).select("div.buttons-set");if(a){a.each(function(b){b.removeClassName("disabled");var c=b.down("button[type=submit].button");if(c){c.disabled=false}})}}return this},saveOrder:function(){APA.setOrderSaveWaiting();new Ajax.Request(APA.urls.saveOrder,{method:"post",parameters:APA.getSaveOrderParams(),onSuccess:APA.saveOrderCallback,onFailure:APA.ajaxFailureCallback})},getSaveOrderParams:function(){var a="";if(APA.virtual){a+=Object.toQueryString({orderReferenceId:APA.orderReferenceId});if($("checkout-agreements")){a+="&"+Form.serialize($("checkout-agreements"))}}else{a=Form.serialize($("co-shipping-method-form"));if($("checkout-agreements")){a+="&"+Form.serialize($("checkout-agreements"))}}a.save=true;return a},initialize:function(c,a,d,g,f,e,b){return Object.extend(APA,{sellerId:c,orderReferenceId:a,live:d,virtual:g,urls:Object.extend({login:null,pay:null,checkout:null,saveShipping:null,saveShippingMethod:null,saveOrder:null,success:null,failure:null},f),layers:Object.extend({payButtons:".payButtonWidget",loginButtons:".loginButtonWidget",addressBook:"addressBookWidgetDiv",wallet:"walletWidgetDiv",shippingMethod:"shippingMethodWidgetDiv",review:"reviewWidgetDiv"},e),design:Object.extend({addressBook:{size:{width:"440px",height:"260px"}},wallet:{size:{width:"440px",height:"260px"}},payButton:{type:"PwA"},loginButton:{type:"LwA"}},b)})},setup:function(b,a){return Object.extend(APA,{sellerId:b,orderReferenceId:typeof a.orderReferenceId=="undefined"?null:a.orderReferenceId,live:typeof a.live=="undefined"?true:a.live,popup:typeof a.popup=="undefined"?true:a.popup,virtual:typeof a.virtual=="undefined"?false:a.virtual,layers:Object.extend({payButtons:".payButtonWidget",loginButtons:".loginButtonWidget",addressBook:"addressBookWidgetDiv",wallet:"walletWidgetDiv",shippingMethod:"shippingMethodWidgetDiv",review:"reviewWidgetDiv"},a.layers),urls:Object.extend({login:null,pay:null,checkout:null,saveShipping:null,saveShippingMethod:null,saveOrder:null,success:null,failure:null},a.urls),design:Object.extend({responsive:true,addressBook:{size:{width:"440px",height:"260px"}},wallet:{size:{width:"440px",height:"260px"}},payButton:{type:"PwA"},loginButton:{type:"LwA"}},a.design)})}};
package.xml CHANGED
@@ -1,26 +1,22 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Creativestyle_AmazonPayments</name>
4
- <version>1.3.2</version>
5
  <stability>stable</stability>
6
  <license uri="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons Attribution-NoDerivatives 4.0 International</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Integration of your Magento shop with Login and Pay with Amazon service</summary>
10
  <description>This extension provides an official integration of your Magento store with Login and Pay with Amazon service. It helps your customers shop quickly, safely and securely. Your customers can pay on your website without re-entering their payment and address details. All Amazon transactions are protected by Amazon's A-to-z Guarantee.</description>
11
- <notes>ADDED: cURL error handling for Login API calls&#xD;
12
- MODIFIED: asynchronous JS loading in the documenty body&#xD;
13
- MODIFIED: use deminified JS for sandbox mode&#xD;
14
- MODIFIED: Amazon button tooltip text for virtual orders&#xD;
15
- MODIFIED: Amazon SDK library (refactor to fix autoloader issues)&#xD;
16
- FIXED: shipping cost display issue when additional totals are implemented&#xD;
17
- FIXED: JS merging issue&#xD;
18
- FIXED: closing OrderReference after successful capture&#xD;
19
- </notes>
20
  <authors><author><name>creativestyle GmbH</name><user>creativestyle</user><email>amazon@creativestyle.de</email></author></authors>
21
- <date>2014-12-16</date>
22
- <time>14:49:49</time>
23
- <contents><target name="magecommunity"><dir name="Creativestyle"><dir name="AmazonPayments"><dir name="Block"><file name="Abstract.php" hash="a8879b92a7537e5c443f3488a22787fe"/><dir name="Adminhtml"><file name="CredentialsValidator.php" hash="bb62c178c7bba1dd30fa16f22394ec85"/><dir name="Debug"><dir name="Section"><file name="Table.php" hash="f6947e99e982164a220e3d82fa0f988f"/></dir><file name="Section.php" hash="a249d2fedeaa5e485e40ffaeeb0335c6"/></dir><file name="Debug.php" hash="cc798f2987cc0dffc755a88988b74912"/><file name="Info.php" hash="be764b1856eccc2b3070a1ea4cfe57f7"/><file name="IpnUrl.php" hash="dc185fbffc8851d0031769e9a623ddda"/><dir name="Log"><file name="Abstract.php" hash="02887066c2d6973141dff769b385d8fa"/><dir name="Api"><file name="Grid.php" hash="8d072ba9ce4be99222c03a26680d51eb"/><file name="View.php" hash="eb30544643fa9571a454a763111d0113"/></dir><file name="Api.php" hash="5ea0736c83de5feb01df0a3ec4db4d80"/><dir name="Exception"><file name="Grid.php" hash="3c3decb0a90638d5e2b1617426ec9437"/><file name="View.php" hash="cae17d2a2d5716e8dde1c6662397131e"/></dir><file name="Exception.php" hash="c35dafcaf89ca709394341394862f4cf"/><dir name="Ipn"><file name="Grid.php" hash="74bb51ab562b09d42bd9ced6d6609ae1"/><file name="View.php" hash="6ab63414642658e95258a73a143e6955"/></dir><file name="Ipn.php" hash="a2225b081ccb354bfe94b4a646b0d521"/><dir name="View"><file name="Abstract.php" hash="0a4c977a1f89622148bdc6acc037fc1f"/></dir></dir><dir name="Renderer"><file name="Timestamp.php" hash="190325613c20e2cf97adc28950658e99"/></dir><dir name="Sales"><file name="Order.php" hash="45a5ee919501a2bf26160d38dafccd44"/></dir></dir><dir name="Button"><file name="Js.php" hash="29f5907c8898af60bdc78d957998da3f"/></dir><dir name="Checkout"><file name="Abstract.php" hash="db5cf0b3d9dd37ad4552987b9df5e09c"/><file name="Js.php" hash="0e5ba9b3f4ae06139a084816c04a05a3"/><file name="Notice.php" hash="3bd2869322fac80a80436f8e2daa8d70"/><file name="SandboxToolbox.php" hash="047b1bfde3f5469195b9a7ccfee3f16d"/></dir><file name="Checkout.php" hash="2f5dfbc18879c9a9c6d4dc84ac54eb9e"/><dir name="Js"><file name="Interface.php" hash="11827746ff821b4cbda1ad041e30321e"/></dir><file name="Js.php" hash="8610dddee84cda450c4874e0fd93b5f5"/><dir name="Login"><file name="Abstract.php" hash="b84dfbbe66bbee39a547d33e856b4a8d"/><dir name="Account"><file name="Confirm.php" hash="ae8123a65a717a0046aaf1d9dc21f878"/><file name="Update.php" hash="8fdadae9294b17fbb0989f8d0e2016a4"/></dir><file name="Button.php" hash="bad55de20f480d53a15ddedd551ff6dd"/><file name="Js.php" hash="2d144b27681c48f2adfa8cd0fdd5d31e"/></dir><dir name="Onepage"><file name="Button.php" hash="b122db0163e8580f42679f13a3a45726"/></dir><dir name="Pay"><file name="Abstract.php" hash="2e96e1d4a1a0e2c74cee40a46a75241c"/><file name="Button.php" hash="b76cbc47c91b88ceb9fc1fde609fa2dc"/></dir><dir name="Payment"><file name="Info.php" hash="c6285a5688834b456765317d3471bf2a"/></dir></dir><file name="Exception.php" hash="ca655a29842b38dd2ebf438208a6c70c"/><dir name="Helper"><file name="Data.php" hash="c545b7bc86fefe023ed0a7bfaefbd3ca"/><file name="Debug.php" hash="782ae864f43f5bb85b439cf1a4c35334"/></dir><dir name="Model"><dir name="Api"><file name="Abstract.php" hash="1814fcd0d61599f15d808d9c2990ebe4"/><file name="Advanced.php" hash="f07d08dc5ca8fa80d2684a7726496a6e"/><file name="Ipn.php" hash="7796776a38fe90b9805cbd88094a773d"/><file name="Login.php" hash="d9297e66749c6930a1010a5babdfde14"/></dir><file name="Checkout.php" hash="8edbab923e21f813e235504bccd8936f"/><file name="Config.php" hash="5ea50ded4beaf93e5e1fe1aad282ec5e"/><dir name="Log"><file name="Collection.php" hash="13d71847c4e164af18636a3fe5bf975b"/></dir><file name="Logger.php" hash="0821a7d8ddeea993fe3ad9495ef6f9d9"/><dir name="Lookup"><file name="Abstract.php" hash="443bbef12f4e7c896e54cf0b7463e04e"/><dir name="Design"><dir name="Button"><dir name="Color"><file name="LoginPay.php" hash="e9a469e82c7805782cf7694c4d50af7a"/></dir><file name="Color.php" hash="81a33471dfefb27897f7b1ff19749671"/><dir name="Size"><file name="LoginPay.php" hash="6cdf3d3633617994783a38f30add86fe"/></dir><file name="Size.php" hash="7c73a97a0fa3f4c6a73b838c0594ad5c"/><dir name="Type"><file name="Login.php" hash="44e852189b0305bbe4cc38848316d4e6"/><file name="Pay.php" hash="5e6f65d1e355ed265787b28b12c6e7a6"/></dir></dir></dir><file name="Frequency.php" hash="5115fb39b48781e5e97f9b62414a72cc"/><file name="IpnActive.php" hash="b73000f5bfc1e26b80911e125e9eec46"/><file name="PaymentAction.php" hash="6d0c15996ec3caf112d88e07ea703bb4"/><file name="Region.php" hash="8f5cc8ab970aa165e16085368b320f89"/></dir><file name="Manager.php" hash="3deaebb7cc0d613c63470d866d7aafb7"/><file name="Observer.php" hash="41f299c4ac80f4220f93bb5fae692ee5"/><dir name="Payment"><file name="Abstract.php" hash="5667d8b7b4eae1f3b29e8fc6c043b9ce"/><dir name="Advanced"><file name="Abstract.php" hash="9b4709b93da48f60769899838b1230ee"/><file name="Sandbox.php" hash="a1509cd32ad92e6e6d3a8f348be1d3bb"/></dir><file name="Advanced.php" hash="72006ba9aaa96486f6d7505814ffaf54"/></dir><dir name="Service"><file name="Login.php" hash="99f99ff273e0cb6dea7b2053702bf323"/><file name="Quote.php" hash="3f83d1e1b1c6e19e0e23cb1a8c8b41f5"/></dir><file name="Simulator.php" hash="be19c4b71f46f3251455c497aeb407f6"/><dir name="System"><dir name="Config"><dir name="Backend"><dir name="DataPolling"><file name="Cron.php" hash="c3d3009775702bee14da3695f0d41f68"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="DebugController.php" hash="28e0ddedf23912140158d100339bdbe8"/><file name="DocumentationController.php" hash="4e214386e032b2e513dda5a26344fd87"/><dir name="Log"><file name="ApiController.php" hash="e0a9181f57223d3ba722982572c1d003"/><file name="ExceptionController.php" hash="5daaa04ec6479396edfb1f62910f4ad3"/><file name="IpnController.php" hash="f00870c68a6b18d460c59d0b76d4a67d"/></dir><file name="OrderController.php" hash="1293b8aa3851f09b7559306e37a6a6ea"/><file name="SystemController.php" hash="52c60fa39dba8582b4ca81c2f065dbc5"/></dir><dir name="Advanced"><file name="CheckoutController.php" hash="4b0f052d67439041bf68a6b7229ee59a"/><file name="IpnController.php" hash="0d8a52a891d493870dd1081f9a407170"/><file name="LoginController.php" hash="29df0bab4f4bfe08ccdf2267948ce1c9"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="2dc1b70997469f8f0cd6a80eff845842"/><file name="config.xml" hash="e1635cf20c2813dafa06dd73d9b06086"/><file name="system.xml" hash="d8004b1e1d07523825f81a5282999623"/></dir><dir name="sql"><dir name="amazonpayments_setup"><file name="mysql4-install-1.0.0.php" hash="d4681b9a39905cc9e9dcc660688dea85"/><file name="mysql4-upgrade-1.1.6-1.2.0.php" hash="27f8e108bac4268d3c17e812b413dbbc"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="amazonpayments.xml" hash="4bc12228bba39bd925ed129d7cf64258"/></dir><dir name="template"><dir name="creativestyle"><dir name="amazonpayments"><dir name="advanced"><file name="documentation.phtml" hash="af3ae6ebce4712dd8fb972bef508ca55"/><dir name="log"><dir name="api"><file name="view.phtml" hash="92e2a91aa6f25e20fe8e89bad751e8cf"/></dir><dir name="exception"><file name="view.phtml" hash="c5d01f6de86e47d4da5dfabd60b1b382"/></dir><file name="js.phtml" hash="eb1d2098440a0bac2a6f5b959afa3693"/><dir name="notification"><file name="view.phtml" hash="31d893106f7c7c7f94f05d5cafa36440"/></dir></dir></dir><dir name="debug"><dir name="section"><file name="table.phtml" hash="f4bb8e35b3608cf0639407a3461c3717"/></dir><file name="section.phtml" hash="1472da0e9f07b5583a02e327483d4d75"/></dir><file name="debug.phtml" hash="9748d4fe92986f36ad47ae5b61fc4883"/><file name="info.phtml" hash="8f58e70d3d5974c60d182450b424e521"/><file name="init.phtml" hash="ba9d53045077e63b4e6c25c6b7bb685c"/><dir name="payment"><file name="info.phtml" hash="200af8569ab7792e7f16c5f4a93c6897"/><dir name="pdf"><file name="info.phtml" hash="1fb213f3fcc3aeecaa6305c07cff3b73"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="amazonpayments.xml" hash="229dbc619b8a34b227e0229212f91504"/></dir><dir name="template"><dir name="creativestyle"><dir name="amazonpayments"><dir name="button"><file name="js.phtml" hash="b9dca075a662063b4c83ed1181d2eb68"/></dir><dir name="checkout"><file name="capture_notice.phtml" hash="f9c75cd05a596d0a16c55f0169b4ee6c"/><file name="js.phtml" hash="ce0de5a6e7f8d1aa10b5c5c2317bb56d"/><dir name="review"><file name="button.phtml" hash="1312572385c9ff653d283bb0c3f47b1b"/></dir><file name="sandbox_toolbox.phtml" hash="ff639266f99827e3ec3a9e8305bd7eb7"/><file name="shipping_method.phtml" hash="8a8c97b4eb2a7c8cfc8248bd499b95eb"/></dir><file name="checkout.phtml" hash="083f3118e3e9665eda2851b285c7815d"/><file name="js.phtml" hash="13581f0bcdf7c39da46be530892e8183"/><dir name="login"><dir name="button"><file name="account_login.phtml" hash="0ce9b9d891af3f6c5b1c83a17d311e6b"/></dir><file name="button.phtml" hash="b5d66280337ecc895ae9a2bc48c469e4"/><dir name="form"><file name="account_confirm.phtml" hash="cff4c9f656b2e790bd65723d4e2042b9"/><file name="account_update.phtml" hash="64fdc50df3b3c49384d5d50a1da82d4d"/></dir><file name="js.phtml" hash="6c04655e961b70ff1e2014b3d5d32215"/><file name="logout.phtml" hash="553862c063d4d1975fc6ebca031e6614"/></dir><dir name="onepage"><file name="button.phtml" hash="95e053ca57f36df23180af93b77a6557"/></dir><dir name="pay"><file name="button.phtml" hash="dfcccab45794c81d2d3ca52f709019d4"/></dir><dir name="payment"><file name="info.phtml" hash="3631896707e596d9675f526a7d021617"/><dir name="pdf"><file name="info.phtml" hash="69549bf3340c19d62f42a556f13e8a1e"/></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Creativestyle_AmazonPayments.xml" hash="3d30f68b24829494a2a66164eba0e5f7"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Creativestyle_AmazonPayments.csv" hash="0ccc1deed1b65403353df371ce4856d2"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="ad694ba24051f779698d483bc32d9b75"/></dir></dir></dir><dir name="en_GB"><file name="Creativestyle_AmazonPayments.csv" hash="c686d95415778cc30a1e952fab6be4b7"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="1a933579acb1fbb3d78ae47ca990521b"/></dir></dir></dir><dir name="de_DE"><file name="Creativestyle_AmazonPayments.csv" hash="360b9295a2b7cc4848c1fd7f23f6c38d"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="4879ccbfbea101548700da52b058bd0b"/></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="creativestyle"><file name="apa_checkout.min.js" hash="ac6c62c9dcefeeb0d342b7c9cf481de5"/><file name="apa_sandbox_toolbox.min.js" hash="43db69188712b5b4665b586fc70f39de"/><dir name="vendors"><file name="prism.js" hash="c700de3d980f7ef1e056dc5400acfd44"/></dir><file name="apa_checkout.js" hash="e5e96adf46feb0ac5e4776e3dc8659c6"/></dir></dir></target><target name="magelib"><dir name="OffAmazonPayments"><file name="Model.php" hash="36434820209eb10952abc8e41259d96c"/></dir><dir name="OffAmazonPaymentsNotifications"><file name="Client.php" hash="3b2d2c969c03e774ff86fa876e12b278"/><dir name="Impl"><file name="Certificate.php" hash="3b49f95f652daa628a586c5d57a1b96f"/><file name="IpnNotificationParser.php" hash="41c7c75dfb26e2df9071263a464f4810"/><file name="Message.php" hash="d6a798d889d4fa1c6938b1493932925d"/><file name="OpenSslVerifySignature.php" hash="41ebc72238ef3eebe7741e21e18a9788"/><file name="SnsMessageParser.php" hash="7ebf58afecd5d3a3c859f6daf60b19c4"/><file name="SnsMessageValidator.php" hash="4d4a2452b4587d622926b6cfbfb4b179"/><file name="VerifySignature.php" hash="b03c485451a27ada7e67497988093e47"/><file name="XmlNotificationParser.php" hash="17ee03585854ed24eb4add7834e9f02d"/></dir><file name="Interface.php" hash="2c527d58c518632f8cc1b6a973c08e05"/><file name="InvalidCertificateException.php" hash="5412d2fc7ca03ac822bcb4066d558b50"/><file name="InvalidMessageException.php" hash="5fc7cb16c37c4cde49d87744c5a583c0"/><dir name="Model"><file name="AuthorizationDetails.php" hash="fccb851dc730850b8d185016dbca2590"/><file name="AuthorizationNotification.php" hash="80250048069681142a95cac51e3fa21c"/><file name="BillingAgreement.php" hash="087f904ec04b8c63a0120940f177c698"/><file name="BillingAgreementLimits.php" hash="801a01b85a09eababfa08b2186c44cd4"/><file name="BillingAgreementNotification.php" hash="dd8af8bd716a907f507c0dd885b3ed4c"/><file name="BillingAgreementStatus.php" hash="788a292faf04486d93b1f70b14cf156c"/><file name="CaptureDetails.php" hash="326a26f5b981710e4c6328cf1ea91459"/><file name="CaptureNotification.php" hash="50aaaf110b451b3a95e08a1525ec29c4"/><file name="IdList.php" hash="5c4b01c197bd17841dbba5ad37bd7b10"/><file name="IpnNotificationMetadata.php" hash="5e894a2584bbf0469ec73f32d7059ac6"/><file name="MerchantRegistrationDetails.php" hash="d4de7689d8e216567abd710dde7ef4ed"/><file name="NotificationImpl.php" hash="717df190c76f9d3b9a95999dbd962cd4"/><file name="NotificationMetadataImpl.php" hash="045d988afb0c21179d22e086e263a84d"/><file name="OrderItemCategories.php" hash="143c9a7a5d0e048fd8f3d35d7193699c"/><file name="OrderReference.php" hash="aa46198885e00b987c4b19c316920b9a"/><file name="OrderReferenceNotification.php" hash="5757807850c3afa08dd17a49803f317a"/><file name="OrderReferenceStatus.php" hash="91332f4bb02b984d57a6c519df3f90ed"/><file name="OrderTotal.php" hash="9414289b9477ffe27d3dfd0511aa0729"/><file name="Price.php" hash="f8c2a436b7244bc026078fd02887da82"/><file name="ProviderCreditDetails.php" hash="d355185842eb0816de151fb535b14edc"/><file name="ProviderCreditNotification.php" hash="833ef1e2383d6a97a28b1d61d352e824"/><file name="ProviderCreditReversalDetails.php" hash="a789bbf3c7074bc800053967e64286c7"/><file name="ProviderCreditReversalNotification.php" hash="84a36f2d6157424a571ddada073b2be5"/><file name="ProviderCreditReversalSummary.php" hash="1f9cd50005ade77d793a15e029b3cf69"/><file name="ProviderCreditReversalSummaryList.php" hash="6d3a3913ea433fa54ac34197825354ff"/><file name="ProviderCreditSummary.php" hash="4403e12b73867b58021655df3fcf6720"/><file name="ProviderCreditSummaryList.php" hash="8a5a83e94ce75fc3992f98525d47765d"/><file name="RefundDetails.php" hash="4b2dacdc4ce32db6b6dff7613e5b6098"/><file name="RefundNotification.php" hash="55225faad22f6a5b9b44603239488ebb"/><file name="SellerBillingAgreementAttributes.php" hash="c772791d5522be53415d339e169c6a12"/><file name="SellerOrderAttributes.php" hash="116f00df52e1cc7d9b0a23c58dc0c93d"/><file name="SnsNotificationMetadata.php" hash="79a8aacd35588ce20daea2d8ded574ac"/><file name="SolutionProviderMerchantNotification.php" hash="d5829f16e032db871798f1ba45732f39"/><file name="SolutionProviderOption.php" hash="df8fbbb1ad2fef1796e3b42a9a417a64"/><file name="SolutionProviderOptions.php" hash="8f5f0e7415bb9dfc5dfafaab236d91df"/><file name="Status.php" hash="5ac5d81fafbb7a45c7ef67b7d61e3ccf"/></dir><file name="Notification.php" hash="f14f5fded3845499c03ed011ff115b13"/><file name="NotificationMetadata.php" hash="fcbdda900353d35a850ab518c24506ca"/></dir><dir name="OffAmazonPaymentsService"><file name="Client.php" hash="bba604078e0d7491ee6dbcce80258aea"/><file name="Environments.php" hash="5c469c72e7e1fc24eeda2b6a22917d77"/><file name="Exception.php" hash="965ca3466457e04d79ee9250fc946803"/><file name="Interface.php" hash="822113682cd65aa8b02f61f18ab07984"/><file name="MerchantValues.php" hash="ef10d79a38b3ae5ded1c2ed9d55e1f6c"/><dir name="Model"><file name="Address.php" hash="2cac12c7465df053c1fbfebd7c0c3e4b"/><file name="AuthorizationDetails.php" hash="9ef03efd7eb35c2f1c764e60a7492be6"/><file name="AuthorizeOnBillingAgreementRequest.php" hash="08084c850ebbc53f1a691fec0db5d011"/><file name="AuthorizeOnBillingAgreementResponse.php" hash="c2bc2dab6950c7a6be5ec3c55b71b4f9"/><file name="AuthorizeOnBillingAgreementResult.php" hash="b52d0c0ad908617cbd39345aba54882b"/><file name="AuthorizeRequest.php" hash="d01f4a32ec8e57a44a0804ba7350bfef"/><file name="AuthorizeResponse.php" hash="ccbb769ef3012724c48b1d76acd6e0ef"/><file name="AuthorizeResult.php" hash="a90eaf3bb2a12a6945407c01a0f967d0"/><file name="BillingAddress.php" hash="9d3881a26603f1392f9b93b55a8a8a5a"/><file name="BillingAgreementAttributes.php" hash="30046b148b8a7b4cd6026ebd0fc482b5"/><file name="BillingAgreementDetails.php" hash="9b9d0d8722afa825d45f98b9c5cece6e"/><file name="BillingAgreementLimits.php" hash="9984271b285397d7e08322c91d9ccd08"/><file name="BillingAgreementStatus.php" hash="f3a6ac460a66e62a4e5cff1f966e1a4a"/><file name="Buyer.php" hash="10df01a4c7815bf4760e56308957351a"/><file name="CancelOrderReferenceRequest.php" hash="2a1aea8fad7cf8a87d2a9f6ff6fcea78"/><file name="CancelOrderReferenceResponse.php" hash="c3f81641827af137bf4a6010e58bb62c"/><file name="CancelOrderReferenceResult.php" hash="504557ccf47b0b5b6a071f138ba962f0"/><file name="CaptureDetails.php" hash="f907d38d2148b1c1703d6f1a3d958f34"/><file name="CaptureRequest.php" hash="f2ddfd0218c81f234b0ba05c74efe1dd"/><file name="CaptureResponse.php" hash="6faf1938d380ebaeb6fcf1ff6e865624"/><file name="CaptureResult.php" hash="f174ee46f021bd40751e0d63245bd850"/><file name="CloseAuthorizationRequest.php" hash="07191ba72e4eee57553ecd41e15f779d"/><file name="CloseAuthorizationResponse.php" hash="70e8e86c4edbfb2f96ec139560636494"/><file name="CloseAuthorizationResult.php" hash="2c406dd340ef5b838a37a75aabb4f149"/><file name="CloseBillingAgreementRequest.php" hash="c80b8e3cb690595dc72c3924f5e7a13f"/><file name="CloseBillingAgreementResponse.php" hash="8994fb56dc5f487302937c1395d0963d"/><file name="CloseBillingAgreementResult.php" hash="10517589598754b0e58be29c5082c3ce"/><file name="CloseOrderReferenceRequest.php" hash="523c2061c026540e0189872e87ed1af1"/><file name="CloseOrderReferenceResponse.php" hash="fd13d871e69eb5413526c19cf5f66de8"/><file name="CloseOrderReferenceResult.php" hash="0e5afd3aa795bf82684c0f40744e2e04"/><file name="ConfirmBillingAgreementRequest.php" hash="098e7fd225da377b14799a0957991d0a"/><file name="ConfirmBillingAgreementResponse.php" hash="54327b4909053fc3fc65197e796c5d59"/><file name="ConfirmBillingAgreementResult.php" hash="f1ab41657391d37de4148fa07b0849da"/><file name="ConfirmOrderReferenceRequest.php" hash="c0667576d46907f0965c89a36e5dc1aa"/><file name="ConfirmOrderReferenceResponse.php" hash="497d3a7f3710ece7bd1a25fd5261707f"/><file name="Constraint.php" hash="5dfaa3ce9fb9c0fe8a1f20e24a053f6e"/><file name="Constraints.php" hash="e831530f17d7df39cc03bceaafed0216"/><file name="CreateOrderReferenceForIdRequest.php" hash="84a50944a1e0d58bd1e77306f1f7ada7"/><file name="CreateOrderReferenceForIdResponse.php" hash="3b9d3020b2e874f191e0083203d46723"/><file name="CreateOrderReferenceForIdResult.php" hash="46f720aea9c58694b2ca4b81142abcfa"/><file name="Destination.php" hash="4da36642b21ab96ab6bdee10781d8d07"/><file name="Error.php" hash="a0b83f2bc8edc3e503efae6d98ecb464"/><file name="ErrorResponse.php" hash="00391c711283b2fd5a6859f6a341cbbf"/><file name="GetAuthorizationDetailsRequest.php" hash="fdfeafa306e64b92325972b67bb12f92"/><file name="GetAuthorizationDetailsResponse.php" hash="eae478e879b021b30e22188af50c2e2c"/><file name="GetAuthorizationDetailsResult.php" hash="270d0ebb53cf595593a72ba29ca3d1f0"/><file name="GetBillingAgreementDetailsRequest.php" hash="e8124ac8d748b26642456c090a86463b"/><file name="GetBillingAgreementDetailsResponse.php" hash="5e05dd77c3b176b303af9711eeea97fd"/><file name="GetBillingAgreementDetailsResult.php" hash="b320ede4586359d2b5f1f1d7333b2743"/><file name="GetCaptureDetailsRequest.php" hash="b4d9e5414e63840b87c97a1d5f8ec9bb"/><file name="GetCaptureDetailsResponse.php" hash="049306e3f85755114fb033732111c613"/><file name="GetCaptureDetailsResult.php" hash="ab7ccba1bfaf183205a2a5a7c495fd19"/><file name="GetOrderReferenceDetailsRequest.php" hash="21d60f781305cf963ea2a40099decdf7"/><file name="GetOrderReferenceDetailsResponse.php" hash="eebbc1b4482d78a0d3d57bbf8d1c5a66"/><file name="GetOrderReferenceDetailsResult.php" hash="f4425bd39c8279e66f4c9052d452925d"/><file name="GetProviderCreditDetailsRequest.php" hash="1b613acafc8f66e0385379705bcf664c"/><file name="GetProviderCreditDetailsResponse.php" hash="9fcdbd8af985e96579c93378259c5e4a"/><file name="GetProviderCreditDetailsResult.php" hash="3a660d2ad0f6528e16f554987caf9a51"/><file name="GetProviderCreditReversalDetailsRequest.php" hash="592caa40f517ed1cfc66dd9a12e9bac3"/><file name="GetProviderCreditReversalDetailsResponse.php" hash="85d1fb8584f14d443cf7e4956c3dd03f"/><file name="GetProviderCreditReversalDetailsResult.php" hash="06effa515f870d1bd5fff7bc62a1d752"/><file name="GetRefundDetailsRequest.php" hash="a433b45ba3dc2894042d2e8072286bd1"/><file name="GetRefundDetailsResponse.php" hash="58771173d1a1c43f2a8a9f5515f4823b"/><file name="GetRefundDetailsResult.php" hash="0d51a779b95371ad425a4c9bc0aa6f82"/><file name="IdList.php" hash="a7a531e733a67f5a320bdb77c6ebd1a6"/><file name="OrderItemCategories.php" hash="1ed3edbf18fda5819ace2284bff49c15"/><file name="OrderReferenceAttributes.php" hash="d3d2d00f6626ab2116553cf2d266bb38"/><file name="OrderReferenceDetails.php" hash="a3ae5a3c4a6d5b8b3fa4f84593d1c33a"/><file name="OrderReferenceStatus.php" hash="5605fd30208a09dedea1aab688d92f49"/><file name="OrderTotal.php" hash="3ba85975c17821e7b72710b713f48f93"/><file name="ParentDetails.php" hash="b0d8bc8245fc4f8e75842e7c48e5b174"/><file name="Price.php" hash="ebd5fe74f1840f7804b3f869ce25384b"/><file name="ProviderCredit.php" hash="331663826ea8f444d5b0c05c59d69874"/><file name="ProviderCreditDetails.php" hash="0b916937d2397ad51d0dc1b0cf86777b"/><file name="ProviderCreditList.php" hash="3467cfe1dc096d07c33e2fadb3cb90d1"/><file name="ProviderCreditReversal.php" hash="b965141481deddd3b8e1c48a68d8c292"/><file name="ProviderCreditReversalDetails.php" hash="aaf5a41e7d6aba6758b5c24de2affe4d"/><file name="ProviderCreditReversalList.php" hash="47ff9cee9313ea98b23cec3257fdd704"/><file name="ProviderCreditReversalSummary.php" hash="decb86a0305f061206625dea1c8aacdb"/><file name="ProviderCreditReversalSummaryList.php" hash="4948d8e2034b7e60fc7157d7be149ea1"/><file name="ProviderCreditSummary.php" hash="06f9ad261e09b3709107d074604a1227"/><file name="ProviderCreditSummaryList.php" hash="28652df460f09e5d907d0c07f98b1b8f"/><file name="RefundDetails.php" hash="e12c1a6a49bda599d628e382de6f8874"/><file name="RefundRequest.php" hash="1e6f8500871cbae8b1d57a7a853cd298"/><file name="RefundResponse.php" hash="f2af68623a6f37a0f0227ea9e648603f"/><file name="RefundResult.php" hash="2b73f810b388d8ea30ded964bb1d1644"/><file name="ResponseHeaderMetadata.php" hash="4305e32c733bf48b2e34b2de0f0eee7f"/><file name="ResponseMetadata.php" hash="c5efe1da81e4a9fa3c76b9901c90f9fe"/><file name="ReverseProviderCreditRequest.php" hash="51af6c8b7e31efd4fffafd83994fbc63"/><file name="ReverseProviderCreditResponse.php" hash="3a959a1b22156ddb81e2eed9e02a0da4"/><file name="ReverseProviderCreditResult.php" hash="6dc02bb8141e136a55d28034add4b101"/><file name="SellerBillingAgreementAttributes.php" hash="0c1c845a25dbcd724d0c6ca2a8e07ab4"/><file name="SellerOrderAttributes.php" hash="326ac3910572ddfcc88d467e837283af"/><file name="SetBillingAgreementDetailsRequest.php" hash="19522c9d1290c1ae63e22902cd1655d9"/><file name="SetBillingAgreementDetailsResponse.php" hash="029e631097cb557f2a44ccc0f108aeae"/><file name="SetBillingAgreementDetailsResult.php" hash="4006851ac3799e4ee89fe6665e78be66"/><file name="SetOrderReferenceDetailsRequest.php" hash="61de911c937a20dc795727ca66a90b89"/><file name="SetOrderReferenceDetailsResponse.php" hash="e2bcd0495e0249c654a3cfedc0e3697e"/><file name="SetOrderReferenceDetailsResult.php" hash="ad903a104466558226f58e790a2bb061"/><file name="Status.php" hash="92253830c1eeb08094f5eca6506a0b0f"/><file name="ValidateBillingAgreementRequest.php" hash="b3a0ae148f92a2b0132af201f49c98d4"/><file name="ValidateBillingAgreementResponse.php" hash="c3866b3ffa85037b5c070ffed2d6cf06"/><file name="ValidateBillingAgreementResult.php" hash="2c96a303ad608eb9c840971c374125f4"/></dir><file name="Model.php" hash="7452a81d314d6212937d79e71b040e01"/><file name="RegionSpecificProperties.php" hash="4cad5116fb2608d5000c0e9aed5bace9"/><file name="Regions.php" hash="849549c7834fac2fb94749276eabeb97"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments.css" hash="a1f07a48b8de6d1fa9391a4eed2f12be"/><file name="amazonpayments-highlight.css" hash="f6daf03c989ac56ad436300b5520f0df"/></dir><dir name="images"><file name="amazon-payments-advanced-creativestyle-logo.png" hash="bb507d0085dab135ac313b8068515620"/><file name="amazon-payments-advanced-creativestyle-header-logo.png" hash="1f17fc7a61f8aaf929000d1d87f7d943"/><file name="amazon-payments-advanced-creativestyle-header-logo-white.png" hash="4ce4ba0d8d210a26caa380217804e200"/><file name="amazon-payments-advanced-header.png" hash="60f587870fbdb1242368c8c3b553bd8c"/><file name="amazon-payments-advanced-section.png" hash="8bc620f345eb46c920c51875d4cfad7c"/><file name="logo_a-glyph_16.png" hash="44a3f5f0013cab34d26653eb48b989fc"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments.css" hash="98669e803a468cc7e01d481ce1647a0e"/><file name="amazonpayments-widgets.css" hash="35704192aaeb204e407e8b853c118d16"/><file name="amazonpayments-responsive-widgets.css" hash="ffca5cdc8a4e0585946c78258044c471"/></dir><dir name="images"><file name="amazon-loading-large.gif" hash="5f6d83bf2b69ab73c7e48ec9b66d54db"/><file name="logo_a-glyph_1x.png" hash="5d44ca86985afbb2a47b9265053a456e"/></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments-responsive-widgets.css" hash="389d23ee96bb5305f7ba5b616d930846"/></dir></dir></dir></dir></dir></target></contents>
24
  <compatible/>
25
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><extension><name>dom</name><min/><max/></extension><extension><name>curl</name><min/><max/></extension></required></dependencies>
26
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Creativestyle_AmazonPayments</name>
4
+ <version>1.3.4</version>
5
  <stability>stable</stability>
6
  <license uri="http://creativecommons.org/licenses/by-nd/4.0/">Creative Commons Attribution-NoDerivatives 4.0 International</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Integration of your Magento shop with Login and Pay with Amazon service</summary>
10
  <description>This extension provides an official integration of your Magento store with Login and Pay with Amazon service. It helps your customers shop quickly, safely and securely. Your customers can pay on your website without re-entering their payment and address details. All Amazon transactions are protected by Amazon's A-to-z Guarantee.</description>
11
+ <notes>ADDED: gift messages support&#xD;
12
+ MODIFIED: improved customer address handling for DE and AT (extract company name from the address)&#xD;
13
+ FIXED: missing order item's original_price and base_original_price fields&#xD;
14
+ FIXED: enabled "Place order" button issue when payment method is not selected&#xD;
15
+ FIXED: disabled "Place order" button issue for virtual orders</notes>
 
 
 
 
16
  <authors><author><name>creativestyle GmbH</name><user>creativestyle</user><email>amazon@creativestyle.de</email></author></authors>
17
+ <date>2015-02-11</date>
18
+ <time>16:24:08</time>
19
+ <contents><target name="magecommunity"><dir name="Creativestyle"><dir name="AmazonPayments"><dir name="Block"><file name="Abstract.php" hash="ce9a49bde52db0195d94bf409029b8c6"/><dir name="Adminhtml"><file name="CredentialsValidator.php" hash="bb62c178c7bba1dd30fa16f22394ec85"/><dir name="Debug"><dir name="Section"><file name="Table.php" hash="f6947e99e982164a220e3d82fa0f988f"/></dir><file name="Section.php" hash="a249d2fedeaa5e485e40ffaeeb0335c6"/></dir><file name="Debug.php" hash="cc798f2987cc0dffc755a88988b74912"/><file name="Info.php" hash="be764b1856eccc2b3070a1ea4cfe57f7"/><file name="IpnUrl.php" hash="f9a516356c4c9b98e02eb3761ad5bf90"/><dir name="Log"><file name="Abstract.php" hash="02887066c2d6973141dff769b385d8fa"/><dir name="Api"><file name="Grid.php" hash="8d072ba9ce4be99222c03a26680d51eb"/><file name="View.php" hash="eb30544643fa9571a454a763111d0113"/></dir><file name="Api.php" hash="5ea0736c83de5feb01df0a3ec4db4d80"/><dir name="Exception"><file name="Grid.php" hash="3c3decb0a90638d5e2b1617426ec9437"/><file name="View.php" hash="cae17d2a2d5716e8dde1c6662397131e"/></dir><file name="Exception.php" hash="c35dafcaf89ca709394341394862f4cf"/><dir name="Ipn"><file name="Grid.php" hash="74bb51ab562b09d42bd9ced6d6609ae1"/><file name="View.php" hash="6ab63414642658e95258a73a143e6955"/></dir><file name="Ipn.php" hash="a2225b081ccb354bfe94b4a646b0d521"/><dir name="View"><file name="Abstract.php" hash="0a4c977a1f89622148bdc6acc037fc1f"/></dir></dir><dir name="Renderer"><file name="Timestamp.php" hash="190325613c20e2cf97adc28950658e99"/></dir><dir name="Sales"><file name="Order.php" hash="45a5ee919501a2bf26160d38dafccd44"/></dir></dir><dir name="Button"><file name="Js.php" hash="29f5907c8898af60bdc78d957998da3f"/></dir><dir name="Checkout"><file name="Abstract.php" hash="db5cf0b3d9dd37ad4552987b9df5e09c"/><file name="Js.php" hash="0e5ba9b3f4ae06139a084816c04a05a3"/><file name="Notice.php" hash="3bd2869322fac80a80436f8e2daa8d70"/><file name="SandboxToolbox.php" hash="047b1bfde3f5469195b9a7ccfee3f16d"/></dir><file name="Checkout.php" hash="6620fc17c1c86deac47709664d6a93f7"/><dir name="Js"><file name="Interface.php" hash="11827746ff821b4cbda1ad041e30321e"/></dir><file name="Js.php" hash="8610dddee84cda450c4874e0fd93b5f5"/><dir name="Login"><file name="Abstract.php" hash="b84dfbbe66bbee39a547d33e856b4a8d"/><dir name="Account"><file name="Confirm.php" hash="ae8123a65a717a0046aaf1d9dc21f878"/><file name="Update.php" hash="8fdadae9294b17fbb0989f8d0e2016a4"/></dir><file name="Button.php" hash="bad55de20f480d53a15ddedd551ff6dd"/><file name="Js.php" hash="2d144b27681c48f2adfa8cd0fdd5d31e"/><file name="Redirect.php" hash="8634cf4f6bf792006e4ab7674b758e5c"/></dir><dir name="Onepage"><file name="Button.php" hash="b122db0163e8580f42679f13a3a45726"/></dir><dir name="Pay"><file name="Abstract.php" hash="2e96e1d4a1a0e2c74cee40a46a75241c"/><file name="Button.php" hash="b76cbc47c91b88ceb9fc1fde609fa2dc"/></dir><dir name="Payment"><file name="Info.php" hash="c6285a5688834b456765317d3471bf2a"/></dir></dir><file name="Exception.php" hash="ca655a29842b38dd2ebf438208a6c70c"/><dir name="Helper"><file name="Data.php" hash="450a80b5ff9ea28b201e16a1001ce3bb"/><file name="Debug.php" hash="782ae864f43f5bb85b439cf1a4c35334"/></dir><dir name="Model"><dir name="Api"><file name="Abstract.php" hash="1814fcd0d61599f15d808d9c2990ebe4"/><file name="Advanced.php" hash="f07d08dc5ca8fa80d2684a7726496a6e"/><file name="Ipn.php" hash="7796776a38fe90b9805cbd88094a773d"/><file name="Login.php" hash="d9297e66749c6930a1010a5babdfde14"/></dir><file name="Checkout.php" hash="0168673c83b49ad241f3ce52b31b487a"/><file name="Config.php" hash="e2cbdef344465a38aa5531d3c96964ea"/><dir name="Log"><file name="Collection.php" hash="13d71847c4e164af18636a3fe5bf975b"/></dir><file name="Logger.php" hash="0821a7d8ddeea993fe3ad9495ef6f9d9"/><dir name="Lookup"><file name="Abstract.php" hash="443bbef12f4e7c896e54cf0b7463e04e"/><file name="Authentication.php" hash="56e12ebde89bb29b59ac1153be4b10cc"/><dir name="Design"><dir name="Button"><dir name="Color"><file name="LoginPay.php" hash="e9a469e82c7805782cf7694c4d50af7a"/></dir><file name="Color.php" hash="81a33471dfefb27897f7b1ff19749671"/><dir name="Size"><file name="LoginPay.php" hash="6cdf3d3633617994783a38f30add86fe"/></dir><file name="Size.php" hash="7c73a97a0fa3f4c6a73b838c0594ad5c"/><dir name="Type"><file name="Login.php" hash="44e852189b0305bbe4cc38848316d4e6"/><file name="Pay.php" hash="5e6f65d1e355ed265787b28b12c6e7a6"/></dir></dir></dir><file name="Frequency.php" hash="5115fb39b48781e5e97f9b62414a72cc"/><file name="IpnActive.php" hash="b73000f5bfc1e26b80911e125e9eec46"/><file name="PaymentAction.php" hash="6d0c15996ec3caf112d88e07ea703bb4"/><file name="Region.php" hash="8f5cc8ab970aa165e16085368b320f89"/></dir><file name="Manager.php" hash="feac7709c9d079d0aaef8ffe9a2dc105"/><file name="Observer.php" hash="6e2bbef0df6a0fee9cdea222744f33aa"/><dir name="Payment"><file name="Abstract.php" hash="5667d8b7b4eae1f3b29e8fc6c043b9ce"/><dir name="Advanced"><file name="Abstract.php" hash="9b4709b93da48f60769899838b1230ee"/><file name="Sandbox.php" hash="a1509cd32ad92e6e6d3a8f348be1d3bb"/></dir><file name="Advanced.php" hash="72006ba9aaa96486f6d7505814ffaf54"/></dir><dir name="Service"><file name="Login.php" hash="99f99ff273e0cb6dea7b2053702bf323"/><file name="Quote.php" hash="3f83d1e1b1c6e19e0e23cb1a8c8b41f5"/></dir><file name="Simulator.php" hash="553bb0c0ca3c74202083b366f4c33e9a"/><dir name="System"><dir name="Config"><dir name="Backend"><dir name="DataPolling"><file name="Cron.php" hash="c3d3009775702bee14da3695f0d41f68"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="DebugController.php" hash="28e0ddedf23912140158d100339bdbe8"/><file name="DocumentationController.php" hash="4e214386e032b2e513dda5a26344fd87"/><dir name="Log"><file name="ApiController.php" hash="e0a9181f57223d3ba722982572c1d003"/><file name="ExceptionController.php" hash="5daaa04ec6479396edfb1f62910f4ad3"/><file name="IpnController.php" hash="f00870c68a6b18d460c59d0b76d4a67d"/></dir><file name="OrderController.php" hash="1293b8aa3851f09b7559306e37a6a6ea"/><file name="SystemController.php" hash="52c60fa39dba8582b4ca81c2f065dbc5"/></dir><dir name="Advanced"><file name="CheckoutController.php" hash="96d513f865adf67c980fbc2f3fb2ad29"/><file name="IpnController.php" hash="0d8a52a891d493870dd1081f9a407170"/><file name="LoginController.php" hash="284a5be104f8dccf36528824c7233df8"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="2dc1b70997469f8f0cd6a80eff845842"/><file name="config.xml" hash="dc297d5c2df24876bcffdb011c19fd51"/><file name="system.xml" hash="af68d1a5cc4f270c09385c0efde6c6fb"/></dir><dir name="sql"><dir name="amazonpayments_setup"><file name="mysql4-install-1.0.0.php" hash="d4681b9a39905cc9e9dcc660688dea85"/><file name="mysql4-upgrade-1.1.6-1.2.0.php" hash="27f8e108bac4268d3c17e812b413dbbc"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="amazonpayments.xml" hash="4bc12228bba39bd925ed129d7cf64258"/></dir><dir name="template"><dir name="creativestyle"><dir name="amazonpayments"><dir name="advanced"><file name="documentation.phtml" hash="af3ae6ebce4712dd8fb972bef508ca55"/><dir name="log"><dir name="api"><file name="view.phtml" hash="92e2a91aa6f25e20fe8e89bad751e8cf"/></dir><dir name="exception"><file name="view.phtml" hash="c5d01f6de86e47d4da5dfabd60b1b382"/></dir><file name="js.phtml" hash="eb1d2098440a0bac2a6f5b959afa3693"/><dir name="notification"><file name="view.phtml" hash="31d893106f7c7c7f94f05d5cafa36440"/></dir></dir></dir><dir name="debug"><dir name="section"><file name="table.phtml" hash="f4bb8e35b3608cf0639407a3461c3717"/></dir><file name="section.phtml" hash="1472da0e9f07b5583a02e327483d4d75"/></dir><file name="debug.phtml" hash="9748d4fe92986f36ad47ae5b61fc4883"/><file name="info.phtml" hash="8f58e70d3d5974c60d182450b424e521"/><file name="init.phtml" hash="ba9d53045077e63b4e6c25c6b7bb685c"/><dir name="payment"><file name="info.phtml" hash="200af8569ab7792e7f16c5f4a93c6897"/><dir name="pdf"><file name="info.phtml" hash="1fb213f3fcc3aeecaa6305c07cff3b73"/></dir></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="amazonpayments.xml" hash="7c1c1fc8f1476bb000c6b5cd60a46814"/></dir><dir name="template"><dir name="creativestyle"><dir name="amazonpayments"><dir name="button"><file name="js.phtml" hash="4eb92ecb1032a8f57c6b0230a333f88e"/></dir><dir name="checkout"><file name="capture_notice.phtml" hash="f9c75cd05a596d0a16c55f0169b4ee6c"/><file name="js.phtml" hash="71f1e2eb29af46959f268b7f0bc5e416"/><dir name="review"><file name="button.phtml" hash="1312572385c9ff653d283bb0c3f47b1b"/></dir><file name="sandbox_toolbox.phtml" hash="ff639266f99827e3ec3a9e8305bd7eb7"/><file name="shipping_method.phtml" hash="852008f89fc32c7af6c250cafdde5f51"/></dir><file name="checkout.phtml" hash="6873b347a7e10b3b5c35fda1b48345b1"/><file name="js.phtml" hash="13581f0bcdf7c39da46be530892e8183"/><dir name="login"><dir name="button"><file name="account_login.phtml" hash="0ce9b9d891af3f6c5b1c83a17d311e6b"/></dir><file name="button.phtml" hash="b5d66280337ecc895ae9a2bc48c469e4"/><dir name="form"><file name="account_confirm.phtml" hash="cff4c9f656b2e790bd65723d4e2042b9"/><file name="account_update.phtml" hash="64fdc50df3b3c49384d5d50a1da82d4d"/></dir><file name="js.phtml" hash="9d542e726fe51739b72fc2e509edadd8"/><file name="logout.phtml" hash="e8b6f4d39047903e4ee8d481ba59543b"/><file name="redirect.phtml" hash="8d395ab25504c0cdb928cf93e684b868"/></dir><dir name="onepage"><file name="button.phtml" hash="95e053ca57f36df23180af93b77a6557"/></dir><dir name="pay"><file name="button.phtml" hash="dfcccab45794c81d2d3ca52f709019d4"/></dir><dir name="payment"><file name="info.phtml" hash="3631896707e596d9675f526a7d021617"/><dir name="pdf"><file name="info.phtml" hash="69549bf3340c19d62f42a556f13e8a1e"/></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Creativestyle_AmazonPayments.xml" hash="3d30f68b24829494a2a66164eba0e5f7"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Creativestyle_AmazonPayments.csv" hash="0ccc1deed1b65403353df371ce4856d2"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="ad694ba24051f779698d483bc32d9b75"/></dir></dir></dir><dir name="en_GB"><file name="Creativestyle_AmazonPayments.csv" hash="c686d95415778cc30a1e952fab6be4b7"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="1a933579acb1fbb3d78ae47ca990521b"/></dir></dir></dir><dir name="de_DE"><file name="Creativestyle_AmazonPayments.csv" hash="360b9295a2b7cc4848c1fd7f23f6c38d"/><dir name="template"><dir name="email"><file name="amazon_payments_failed.html" hash="4879ccbfbea101548700da52b058bd0b"/></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="creativestyle"><file name="apa_checkout.min.js" hash="6b5e1622447a83a19cda19d0f972a1f1"/><file name="apa_sandbox_toolbox.min.js" hash="43db69188712b5b4665b586fc70f39de"/><dir name="vendors"><file name="prism.js" hash="c700de3d980f7ef1e056dc5400acfd44"/></dir><file name="apa_checkout.js" hash="8aed5f631d0ce5dc269334cab236fc77"/></dir></dir></target><target name="magelib"><dir name="OffAmazonPayments"><file name="Model.php" hash="36434820209eb10952abc8e41259d96c"/></dir><dir name="OffAmazonPaymentsNotifications"><file name="Client.php" hash="3b2d2c969c03e774ff86fa876e12b278"/><dir name="Impl"><file name="Certificate.php" hash="3b49f95f652daa628a586c5d57a1b96f"/><file name="IpnNotificationParser.php" hash="41c7c75dfb26e2df9071263a464f4810"/><file name="Message.php" hash="d6a798d889d4fa1c6938b1493932925d"/><file name="OpenSslVerifySignature.php" hash="41ebc72238ef3eebe7741e21e18a9788"/><file name="SnsMessageParser.php" hash="7ebf58afecd5d3a3c859f6daf60b19c4"/><file name="SnsMessageValidator.php" hash="4d4a2452b4587d622926b6cfbfb4b179"/><file name="VerifySignature.php" hash="b03c485451a27ada7e67497988093e47"/><file name="XmlNotificationParser.php" hash="17ee03585854ed24eb4add7834e9f02d"/></dir><file name="Interface.php" hash="2c527d58c518632f8cc1b6a973c08e05"/><file name="InvalidCertificateException.php" hash="5412d2fc7ca03ac822bcb4066d558b50"/><file name="InvalidMessageException.php" hash="5fc7cb16c37c4cde49d87744c5a583c0"/><dir name="Model"><file name="AuthorizationDetails.php" hash="fccb851dc730850b8d185016dbca2590"/><file name="AuthorizationNotification.php" hash="80250048069681142a95cac51e3fa21c"/><file name="BillingAgreement.php" hash="087f904ec04b8c63a0120940f177c698"/><file name="BillingAgreementLimits.php" hash="801a01b85a09eababfa08b2186c44cd4"/><file name="BillingAgreementNotification.php" hash="dd8af8bd716a907f507c0dd885b3ed4c"/><file name="BillingAgreementStatus.php" hash="788a292faf04486d93b1f70b14cf156c"/><file name="CaptureDetails.php" hash="326a26f5b981710e4c6328cf1ea91459"/><file name="CaptureNotification.php" hash="50aaaf110b451b3a95e08a1525ec29c4"/><file name="IdList.php" hash="5c4b01c197bd17841dbba5ad37bd7b10"/><file name="IpnNotificationMetadata.php" hash="5e894a2584bbf0469ec73f32d7059ac6"/><file name="MerchantRegistrationDetails.php" hash="d4de7689d8e216567abd710dde7ef4ed"/><file name="NotificationImpl.php" hash="717df190c76f9d3b9a95999dbd962cd4"/><file name="NotificationMetadataImpl.php" hash="045d988afb0c21179d22e086e263a84d"/><file name="OrderItemCategories.php" hash="143c9a7a5d0e048fd8f3d35d7193699c"/><file name="OrderReference.php" hash="aa46198885e00b987c4b19c316920b9a"/><file name="OrderReferenceNotification.php" hash="5757807850c3afa08dd17a49803f317a"/><file name="OrderReferenceStatus.php" hash="91332f4bb02b984d57a6c519df3f90ed"/><file name="OrderTotal.php" hash="9414289b9477ffe27d3dfd0511aa0729"/><file name="Price.php" hash="f8c2a436b7244bc026078fd02887da82"/><file name="ProviderCreditDetails.php" hash="d355185842eb0816de151fb535b14edc"/><file name="ProviderCreditNotification.php" hash="833ef1e2383d6a97a28b1d61d352e824"/><file name="ProviderCreditReversalDetails.php" hash="a789bbf3c7074bc800053967e64286c7"/><file name="ProviderCreditReversalNotification.php" hash="84a36f2d6157424a571ddada073b2be5"/><file name="ProviderCreditReversalSummary.php" hash="1f9cd50005ade77d793a15e029b3cf69"/><file name="ProviderCreditReversalSummaryList.php" hash="6d3a3913ea433fa54ac34197825354ff"/><file name="ProviderCreditSummary.php" hash="4403e12b73867b58021655df3fcf6720"/><file name="ProviderCreditSummaryList.php" hash="8a5a83e94ce75fc3992f98525d47765d"/><file name="RefundDetails.php" hash="4b2dacdc4ce32db6b6dff7613e5b6098"/><file name="RefundNotification.php" hash="55225faad22f6a5b9b44603239488ebb"/><file name="SellerBillingAgreementAttributes.php" hash="c772791d5522be53415d339e169c6a12"/><file name="SellerOrderAttributes.php" hash="116f00df52e1cc7d9b0a23c58dc0c93d"/><file name="SnsNotificationMetadata.php" hash="79a8aacd35588ce20daea2d8ded574ac"/><file name="SolutionProviderMerchantNotification.php" hash="d5829f16e032db871798f1ba45732f39"/><file name="SolutionProviderOption.php" hash="df8fbbb1ad2fef1796e3b42a9a417a64"/><file name="SolutionProviderOptions.php" hash="8f5f0e7415bb9dfc5dfafaab236d91df"/><file name="Status.php" hash="5ac5d81fafbb7a45c7ef67b7d61e3ccf"/></dir><file name="Notification.php" hash="f14f5fded3845499c03ed011ff115b13"/><file name="NotificationMetadata.php" hash="fcbdda900353d35a850ab518c24506ca"/></dir><dir name="OffAmazonPaymentsService"><file name="Client.php" hash="bba604078e0d7491ee6dbcce80258aea"/><file name="Environments.php" hash="5c469c72e7e1fc24eeda2b6a22917d77"/><file name="Exception.php" hash="965ca3466457e04d79ee9250fc946803"/><file name="Interface.php" hash="822113682cd65aa8b02f61f18ab07984"/><file name="MerchantValues.php" hash="ef10d79a38b3ae5ded1c2ed9d55e1f6c"/><dir name="Model"><file name="Address.php" hash="2cac12c7465df053c1fbfebd7c0c3e4b"/><file name="AuthorizationDetails.php" hash="9ef03efd7eb35c2f1c764e60a7492be6"/><file name="AuthorizeOnBillingAgreementRequest.php" hash="08084c850ebbc53f1a691fec0db5d011"/><file name="AuthorizeOnBillingAgreementResponse.php" hash="c2bc2dab6950c7a6be5ec3c55b71b4f9"/><file name="AuthorizeOnBillingAgreementResult.php" hash="b52d0c0ad908617cbd39345aba54882b"/><file name="AuthorizeRequest.php" hash="d01f4a32ec8e57a44a0804ba7350bfef"/><file name="AuthorizeResponse.php" hash="ccbb769ef3012724c48b1d76acd6e0ef"/><file name="AuthorizeResult.php" hash="a90eaf3bb2a12a6945407c01a0f967d0"/><file name="BillingAddress.php" hash="9d3881a26603f1392f9b93b55a8a8a5a"/><file name="BillingAgreementAttributes.php" hash="30046b148b8a7b4cd6026ebd0fc482b5"/><file name="BillingAgreementDetails.php" hash="9b9d0d8722afa825d45f98b9c5cece6e"/><file name="BillingAgreementLimits.php" hash="9984271b285397d7e08322c91d9ccd08"/><file name="BillingAgreementStatus.php" hash="f3a6ac460a66e62a4e5cff1f966e1a4a"/><file name="Buyer.php" hash="10df01a4c7815bf4760e56308957351a"/><file name="CancelOrderReferenceRequest.php" hash="2a1aea8fad7cf8a87d2a9f6ff6fcea78"/><file name="CancelOrderReferenceResponse.php" hash="c3f81641827af137bf4a6010e58bb62c"/><file name="CancelOrderReferenceResult.php" hash="504557ccf47b0b5b6a071f138ba962f0"/><file name="CaptureDetails.php" hash="f907d38d2148b1c1703d6f1a3d958f34"/><file name="CaptureRequest.php" hash="f2ddfd0218c81f234b0ba05c74efe1dd"/><file name="CaptureResponse.php" hash="6faf1938d380ebaeb6fcf1ff6e865624"/><file name="CaptureResult.php" hash="f174ee46f021bd40751e0d63245bd850"/><file name="CloseAuthorizationRequest.php" hash="07191ba72e4eee57553ecd41e15f779d"/><file name="CloseAuthorizationResponse.php" hash="70e8e86c4edbfb2f96ec139560636494"/><file name="CloseAuthorizationResult.php" hash="2c406dd340ef5b838a37a75aabb4f149"/><file name="CloseBillingAgreementRequest.php" hash="c80b8e3cb690595dc72c3924f5e7a13f"/><file name="CloseBillingAgreementResponse.php" hash="8994fb56dc5f487302937c1395d0963d"/><file name="CloseBillingAgreementResult.php" hash="10517589598754b0e58be29c5082c3ce"/><file name="CloseOrderReferenceRequest.php" hash="523c2061c026540e0189872e87ed1af1"/><file name="CloseOrderReferenceResponse.php" hash="fd13d871e69eb5413526c19cf5f66de8"/><file name="CloseOrderReferenceResult.php" hash="0e5afd3aa795bf82684c0f40744e2e04"/><file name="ConfirmBillingAgreementRequest.php" hash="098e7fd225da377b14799a0957991d0a"/><file name="ConfirmBillingAgreementResponse.php" hash="54327b4909053fc3fc65197e796c5d59"/><file name="ConfirmBillingAgreementResult.php" hash="f1ab41657391d37de4148fa07b0849da"/><file name="ConfirmOrderReferenceRequest.php" hash="c0667576d46907f0965c89a36e5dc1aa"/><file name="ConfirmOrderReferenceResponse.php" hash="497d3a7f3710ece7bd1a25fd5261707f"/><file name="Constraint.php" hash="5dfaa3ce9fb9c0fe8a1f20e24a053f6e"/><file name="Constraints.php" hash="e831530f17d7df39cc03bceaafed0216"/><file name="CreateOrderReferenceForIdRequest.php" hash="84a50944a1e0d58bd1e77306f1f7ada7"/><file name="CreateOrderReferenceForIdResponse.php" hash="3b9d3020b2e874f191e0083203d46723"/><file name="CreateOrderReferenceForIdResult.php" hash="46f720aea9c58694b2ca4b81142abcfa"/><file name="Destination.php" hash="4da36642b21ab96ab6bdee10781d8d07"/><file name="Error.php" hash="a0b83f2bc8edc3e503efae6d98ecb464"/><file name="ErrorResponse.php" hash="00391c711283b2fd5a6859f6a341cbbf"/><file name="GetAuthorizationDetailsRequest.php" hash="fdfeafa306e64b92325972b67bb12f92"/><file name="GetAuthorizationDetailsResponse.php" hash="eae478e879b021b30e22188af50c2e2c"/><file name="GetAuthorizationDetailsResult.php" hash="270d0ebb53cf595593a72ba29ca3d1f0"/><file name="GetBillingAgreementDetailsRequest.php" hash="e8124ac8d748b26642456c090a86463b"/><file name="GetBillingAgreementDetailsResponse.php" hash="5e05dd77c3b176b303af9711eeea97fd"/><file name="GetBillingAgreementDetailsResult.php" hash="b320ede4586359d2b5f1f1d7333b2743"/><file name="GetCaptureDetailsRequest.php" hash="b4d9e5414e63840b87c97a1d5f8ec9bb"/><file name="GetCaptureDetailsResponse.php" hash="049306e3f85755114fb033732111c613"/><file name="GetCaptureDetailsResult.php" hash="ab7ccba1bfaf183205a2a5a7c495fd19"/><file name="GetOrderReferenceDetailsRequest.php" hash="21d60f781305cf963ea2a40099decdf7"/><file name="GetOrderReferenceDetailsResponse.php" hash="eebbc1b4482d78a0d3d57bbf8d1c5a66"/><file name="GetOrderReferenceDetailsResult.php" hash="f4425bd39c8279e66f4c9052d452925d"/><file name="GetProviderCreditDetailsRequest.php" hash="1b613acafc8f66e0385379705bcf664c"/><file name="GetProviderCreditDetailsResponse.php" hash="9fcdbd8af985e96579c93378259c5e4a"/><file name="GetProviderCreditDetailsResult.php" hash="3a660d2ad0f6528e16f554987caf9a51"/><file name="GetProviderCreditReversalDetailsRequest.php" hash="592caa40f517ed1cfc66dd9a12e9bac3"/><file name="GetProviderCreditReversalDetailsResponse.php" hash="85d1fb8584f14d443cf7e4956c3dd03f"/><file name="GetProviderCreditReversalDetailsResult.php" hash="06effa515f870d1bd5fff7bc62a1d752"/><file name="GetRefundDetailsRequest.php" hash="a433b45ba3dc2894042d2e8072286bd1"/><file name="GetRefundDetailsResponse.php" hash="58771173d1a1c43f2a8a9f5515f4823b"/><file name="GetRefundDetailsResult.php" hash="0d51a779b95371ad425a4c9bc0aa6f82"/><file name="IdList.php" hash="a7a531e733a67f5a320bdb77c6ebd1a6"/><file name="OrderItemCategories.php" hash="1ed3edbf18fda5819ace2284bff49c15"/><file name="OrderReferenceAttributes.php" hash="d3d2d00f6626ab2116553cf2d266bb38"/><file name="OrderReferenceDetails.php" hash="a3ae5a3c4a6d5b8b3fa4f84593d1c33a"/><file name="OrderReferenceStatus.php" hash="5605fd30208a09dedea1aab688d92f49"/><file name="OrderTotal.php" hash="3ba85975c17821e7b72710b713f48f93"/><file name="ParentDetails.php" hash="b0d8bc8245fc4f8e75842e7c48e5b174"/><file name="Price.php" hash="ebd5fe74f1840f7804b3f869ce25384b"/><file name="ProviderCredit.php" hash="331663826ea8f444d5b0c05c59d69874"/><file name="ProviderCreditDetails.php" hash="0b916937d2397ad51d0dc1b0cf86777b"/><file name="ProviderCreditList.php" hash="3467cfe1dc096d07c33e2fadb3cb90d1"/><file name="ProviderCreditReversal.php" hash="b965141481deddd3b8e1c48a68d8c292"/><file name="ProviderCreditReversalDetails.php" hash="aaf5a41e7d6aba6758b5c24de2affe4d"/><file name="ProviderCreditReversalList.php" hash="47ff9cee9313ea98b23cec3257fdd704"/><file name="ProviderCreditReversalSummary.php" hash="decb86a0305f061206625dea1c8aacdb"/><file name="ProviderCreditReversalSummaryList.php" hash="4948d8e2034b7e60fc7157d7be149ea1"/><file name="ProviderCreditSummary.php" hash="06f9ad261e09b3709107d074604a1227"/><file name="ProviderCreditSummaryList.php" hash="28652df460f09e5d907d0c07f98b1b8f"/><file name="RefundDetails.php" hash="e12c1a6a49bda599d628e382de6f8874"/><file name="RefundRequest.php" hash="1e6f8500871cbae8b1d57a7a853cd298"/><file name="RefundResponse.php" hash="f2af68623a6f37a0f0227ea9e648603f"/><file name="RefundResult.php" hash="2b73f810b388d8ea30ded964bb1d1644"/><file name="ResponseHeaderMetadata.php" hash="4305e32c733bf48b2e34b2de0f0eee7f"/><file name="ResponseMetadata.php" hash="c5efe1da81e4a9fa3c76b9901c90f9fe"/><file name="ReverseProviderCreditRequest.php" hash="51af6c8b7e31efd4fffafd83994fbc63"/><file name="ReverseProviderCreditResponse.php" hash="3a959a1b22156ddb81e2eed9e02a0da4"/><file name="ReverseProviderCreditResult.php" hash="6dc02bb8141e136a55d28034add4b101"/><file name="SellerBillingAgreementAttributes.php" hash="0c1c845a25dbcd724d0c6ca2a8e07ab4"/><file name="SellerOrderAttributes.php" hash="326ac3910572ddfcc88d467e837283af"/><file name="SetBillingAgreementDetailsRequest.php" hash="19522c9d1290c1ae63e22902cd1655d9"/><file name="SetBillingAgreementDetailsResponse.php" hash="029e631097cb557f2a44ccc0f108aeae"/><file name="SetBillingAgreementDetailsResult.php" hash="4006851ac3799e4ee89fe6665e78be66"/><file name="SetOrderReferenceDetailsRequest.php" hash="61de911c937a20dc795727ca66a90b89"/><file name="SetOrderReferenceDetailsResponse.php" hash="e2bcd0495e0249c654a3cfedc0e3697e"/><file name="SetOrderReferenceDetailsResult.php" hash="ad903a104466558226f58e790a2bb061"/><file name="Status.php" hash="92253830c1eeb08094f5eca6506a0b0f"/><file name="ValidateBillingAgreementRequest.php" hash="b3a0ae148f92a2b0132af201f49c98d4"/><file name="ValidateBillingAgreementResponse.php" hash="c3866b3ffa85037b5c070ffed2d6cf06"/><file name="ValidateBillingAgreementResult.php" hash="2c96a303ad608eb9c840971c374125f4"/></dir><file name="Model.php" hash="7452a81d314d6212937d79e71b040e01"/><file name="RegionSpecificProperties.php" hash="4cad5116fb2608d5000c0e9aed5bace9"/><file name="Regions.php" hash="849549c7834fac2fb94749276eabeb97"/></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments.css" hash="a1f07a48b8de6d1fa9391a4eed2f12be"/><file name="amazonpayments-highlight.css" hash="f6daf03c989ac56ad436300b5520f0df"/></dir><dir name="images"><file name="amazon-payments-advanced-creativestyle-logo.png" hash="bb507d0085dab135ac313b8068515620"/><file name="amazon-payments-advanced-creativestyle-header-logo.png" hash="1f17fc7a61f8aaf929000d1d87f7d943"/><file name="amazon-payments-advanced-creativestyle-header-logo-white.png" hash="4ce4ba0d8d210a26caa380217804e200"/><file name="amazon-payments-advanced-header.png" hash="60f587870fbdb1242368c8c3b553bd8c"/><file name="amazon-payments-advanced-section.png" hash="8bc620f345eb46c920c51875d4cfad7c"/><file name="logo_a-glyph_16.png" hash="44a3f5f0013cab34d26653eb48b989fc"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments.css" hash="98669e803a468cc7e01d481ce1647a0e"/><file name="amazonpayments-widgets.css" hash="35704192aaeb204e407e8b853c118d16"/><file name="amazonpayments-responsive-widgets.css" hash="ffca5cdc8a4e0585946c78258044c471"/></dir><dir name="images"><file name="amazon-loading-large.gif" hash="5f6d83bf2b69ab73c7e48ec9b66d54db"/><file name="logo_a-glyph_1x.png" hash="5d44ca86985afbb2a47b9265053a456e"/></dir></dir></dir></dir><dir name="rwd"><dir name="default"><dir name="creativestyle"><dir name="css"><file name="amazonpayments-responsive-widgets.css" hash="389d23ee96bb5305f7ba5b616d930846"/></dir></dir></dir></dir></dir></target></contents>
20
  <compatible/>
21
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php><extension><name>dom</name><min/><max/></extension><extension><name>curl</name><min/><max/></extension></required></dependencies>
22
  </package>