Version Notes
Supported Magento 1.5.0.0 - 1.7.x
Download this release
Release Info
| Developer | Exactor, Inc. |
| Extension | Mage_Exactor_Tax |
| Version | 2012.07.23 |
| Comparing to | |
| See all releases | |
Code changes from version 2012.06.19 to 2012.07.23
- app/code/local/Exactor/Core/Model/Type/Onepage.php +1 -1
- app/code/local/Exactor/Core/etc/config.xml +1 -1
- app/code/local/Exactor/ExactorSettings/Helper/Data.php +0 -1
- app/code/local/Exactor/Sales/Model/Observer.php +32 -22
- app/code/local/Exactor/Sales/etc/config.xml +1 -1
- app/code/local/Exactor/Tax/Helper/Mapping.php +11 -4
- app/code/local/Exactor/Tax/Model/Sales/Total/Quote/Tax.php +16 -0
- lib/ExactorCommons/ExactorCommons.php +1 -1
- lib/ExactorCommons/ExactorDomainObjects.php +1 -1
- lib/ExactorCommons/config.php +1 -1
- package.xml +4 -4
app/code/local/Exactor/Core/Model/Type/Onepage.php
CHANGED
|
@@ -1,4 +1,4 @@
|
|
| 1 |
-
<?
|
| 2 |
|
| 3 |
class Exactor_Core_Model_Type_Onepage extends Mage_Checkout_Model_Type_Onepage{
|
| 4 |
/** @var Mage_Core_Model_Session_Abstract */
|
| 1 |
+
<?php
|
| 2 |
|
| 3 |
class Exactor_Core_Model_Type_Onepage extends Mage_Checkout_Model_Type_Onepage{
|
| 4 |
/** @var Mage_Core_Model_Session_Abstract */
|
app/code/local/Exactor/Core/etc/config.xml
CHANGED
|
@@ -28,7 +28,7 @@
|
|
| 28 |
<config>
|
| 29 |
<modules>
|
| 30 |
<Exactor_Core>
|
| 31 |
-
<version>2012.
|
| 32 |
</Exactor_Core>
|
| 33 |
</modules>
|
| 34 |
<global>
|
| 28 |
<config>
|
| 29 |
<modules>
|
| 30 |
<Exactor_Core>
|
| 31 |
+
<version>2012.07.17</version>
|
| 32 |
</Exactor_Core>
|
| 33 |
</modules>
|
| 34 |
<global>
|
app/code/local/Exactor/ExactorSettings/Helper/Data.php
CHANGED
|
@@ -51,7 +51,6 @@ class Exactor_ExactorSettings_Helper_Data extends Mage_Core_Helper_Abstract{
|
|
| 51 |
* @return Exactor_Core_Model_MerchantSettings|null
|
| 52 |
*/
|
| 53 |
function loadMerchantSettingsOrEmptyObject($storeViewId=null){
|
| 54 |
-
// TODO: Filter by store view id
|
| 55 |
//if ($storeViewId == null) $storeViewId = 1; // 1 - ID of the default store view
|
| 56 |
$merchantSettingsModel = Mage::getModel(self::MODEL_MERCHANT_SETTINGS);
|
| 57 |
$merchantSettingsModel = $merchantSettingsModel
|
| 51 |
* @return Exactor_Core_Model_MerchantSettings|null
|
| 52 |
*/
|
| 53 |
function loadMerchantSettingsOrEmptyObject($storeViewId=null){
|
|
|
|
| 54 |
//if ($storeViewId == null) $storeViewId = 1; // 1 - ID of the default store view
|
| 55 |
$merchantSettingsModel = Mage::getModel(self::MODEL_MERCHANT_SETTINGS);
|
| 56 |
$merchantSettingsModel = $merchantSettingsModel
|
app/code/local/Exactor/Sales/Model/Observer.php
CHANGED
|
@@ -34,25 +34,25 @@ class Exactor_Sales_Model_Observer {
|
|
| 34 |
$this->logger = ExactorLoggingFactory::getInstance()->getLogger($this);
|
| 35 |
$this->exactorSettingsHelper = Mage::helper('ExactorSettings');
|
| 36 |
$this->sessionCache = Mage::helper('Exactor_Core_SessionCache/');
|
| 37 |
-
// Merchant Settings
|
| 38 |
-
$this->merchantSettings = $this->loadMerchantSettings();
|
| 39 |
-
if ($this->merchantSettings != null)
|
| 40 |
-
$this->exactorProcessingService = ExactorProcessingServiceFactory::getInstance()->buildExactorProcessingService(
|
| 41 |
-
$this->merchantSettings->getMerchantID(),
|
| 42 |
-
$this->merchantSettings->getUserID());
|
| 43 |
-
else
|
| 44 |
-
$this->exactorProcessingService = null;
|
| 45 |
}
|
| 46 |
|
| 47 |
/**
|
|
|
|
| 48 |
* @return Exactor_Core_Model_MerchantSettings|null
|
| 49 |
*/
|
| 50 |
-
private function loadMerchantSettings(){
|
| 51 |
$logger = ExactorLoggingFactory::getInstance()->getLogger($this);
|
| 52 |
-
$
|
|
|
|
|
|
|
| 53 |
if ($merchantSettings == null){
|
| 54 |
$logger->error('Settings are not populated.', 'buildExactorProcessingService');
|
|
|
|
| 55 |
return null;
|
|
|
|
|
|
|
|
|
|
|
|
|
| 56 |
}
|
| 57 |
return $merchantSettings;
|
| 58 |
}
|
|
@@ -74,13 +74,14 @@ class Exactor_Sales_Model_Observer {
|
|
| 74 |
}
|
| 75 |
|
| 76 |
public function handleAllOrdersCompleted(Varien_Event_Observer $observer){
|
| 77 |
-
if ($this->merchantSettings == null) return;
|
| 78 |
if (is_array($observer->getOrders()))
|
| 79 |
$orders = array_reverse($observer->getOrders());
|
| 80 |
else
|
| 81 |
$orders = array($observer->getOrder());
|
| 82 |
foreach($orders as $order){
|
| 83 |
-
$
|
|
|
|
|
|
|
| 84 |
if ($transactionInfo == null){
|
| 85 |
$this->logger->error('Nothing to process. There is no transaction in the session cache', 'handleCreatedOrder');
|
| 86 |
return;
|
|
@@ -92,7 +93,7 @@ class Exactor_Sales_Model_Observer {
|
|
| 92 |
$this->exactorProcessingService->getPluginCallback()->saveTransactionInfo($transactionInfo,$transactionInfo->getSignature());
|
| 93 |
// if CommitOption is set up to commit on sales order - do commit the
|
| 94 |
// latest transaction from the session storage
|
| 95 |
-
if ($
|
| 96 |
$this->exactorProcessingService->commitExistingInvoiceForOrder($orderId);
|
| 97 |
}
|
| 98 |
}
|
|
@@ -112,22 +113,25 @@ class Exactor_Sales_Model_Observer {
|
|
| 112 |
|
| 113 |
public function handleNewCreditMemo(Varien_Event_Observer $observer){
|
| 114 |
$this->logger->trace('called', 'handleNewCreditMemo');
|
| 115 |
-
|
|
|
|
| 116 |
$orderId = $observer->getCreditmemo()->getOrder()->getIncrementId();
|
| 117 |
$this->refundTransactionForOrder($orderId);
|
| 118 |
}
|
| 119 |
|
| 120 |
public function handleCancelOrder(Varien_Event_Observer $observer){
|
| 121 |
$this->logger->trace('called', 'handleCancelOrder');
|
| 122 |
-
|
|
|
|
| 123 |
$orderId = $observer->getOrder()->getIncrementId();
|
| 124 |
$this->refundTransactionForOrder($orderId);
|
| 125 |
}
|
| 126 |
|
| 127 |
public function handleNewShipment(Varien_Event_Observer $observer){
|
| 128 |
$this->logger->trace('called', 'handleNewShipment');
|
| 129 |
-
|
| 130 |
-
if ($
|
|
|
|
| 131 |
$orderId = $observer->getShipment()->getOrder()->getIncrementId();
|
| 132 |
$this->commitTransactionForOrder($orderId);
|
| 133 |
}
|
|
@@ -135,18 +139,24 @@ class Exactor_Sales_Model_Observer {
|
|
| 135 |
|
| 136 |
public function handleNewInvoice(Varien_Event_Observer $observer){
|
| 137 |
$this->logger->trace('called', 'handleNewInvoice');
|
| 138 |
-
|
| 139 |
-
|
| 140 |
-
if ($
|
| 141 |
$orderId = $observer->getInvoice()->getOrder()->getIncrementId();
|
| 142 |
$this->commitTransactionForOrder($orderId);
|
| 143 |
}
|
| 144 |
|
| 145 |
}
|
| 146 |
|
| 147 |
-
|
| 148 |
-
|
|
|
|
|
|
|
|
|
|
| 149 |
$storeId = Mage::app()->getStore()->getId();
|
|
|
|
|
|
|
|
|
|
| 150 |
return $storeId != 0 ? $storeId : Mage::app()->getDefaultStoreView()->getId();
|
| 151 |
}
|
| 152 |
}
|
| 34 |
$this->logger = ExactorLoggingFactory::getInstance()->getLogger($this);
|
| 35 |
$this->exactorSettingsHelper = Mage::helper('ExactorSettings');
|
| 36 |
$this->sessionCache = Mage::helper('Exactor_Core_SessionCache/');
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 37 |
}
|
| 38 |
|
| 39 |
/**
|
| 40 |
+
* @param Mage_Sales_Model_Order|null $order
|
| 41 |
* @return Exactor_Core_Model_MerchantSettings|null
|
| 42 |
*/
|
| 43 |
+
private function loadMerchantSettings($order=null){
|
| 44 |
$logger = ExactorLoggingFactory::getInstance()->getLogger($this);
|
| 45 |
+
$storeViewId = $this->getStoreViewId($order);
|
| 46 |
+
$merchantSettings = $this->exactorSettingsHelper->loadValidMerchantSettings($storeViewId);
|
| 47 |
+
|
| 48 |
if ($merchantSettings == null){
|
| 49 |
$logger->error('Settings are not populated.', 'buildExactorProcessingService');
|
| 50 |
+
$this->exactorProcessingService = null;
|
| 51 |
return null;
|
| 52 |
+
}else{
|
| 53 |
+
$this->exactorProcessingService = ExactorProcessingServiceFactory::getInstance()->buildExactorProcessingService(
|
| 54 |
+
$merchantSettings->getMerchantID(),
|
| 55 |
+
$merchantSettings->getUserID());
|
| 56 |
}
|
| 57 |
return $merchantSettings;
|
| 58 |
}
|
| 74 |
}
|
| 75 |
|
| 76 |
public function handleAllOrdersCompleted(Varien_Event_Observer $observer){
|
|
|
|
| 77 |
if (is_array($observer->getOrders()))
|
| 78 |
$orders = array_reverse($observer->getOrders());
|
| 79 |
else
|
| 80 |
$orders = array($observer->getOrder());
|
| 81 |
foreach($orders as $order){
|
| 82 |
+
$merchantSettings = $this->loadMerchantSettings($order);
|
| 83 |
+
if ($merchantSettings==null) continue;
|
| 84 |
+
$transactionInfo = $this->sessionCache->popTransactionInfo($order);
|
| 85 |
if ($transactionInfo == null){
|
| 86 |
$this->logger->error('Nothing to process. There is no transaction in the session cache', 'handleCreatedOrder');
|
| 87 |
return;
|
| 93 |
$this->exactorProcessingService->getPluginCallback()->saveTransactionInfo($transactionInfo,$transactionInfo->getSignature());
|
| 94 |
// if CommitOption is set up to commit on sales order - do commit the
|
| 95 |
// latest transaction from the session storage
|
| 96 |
+
if ($merchantSettings->getCommitOption() == Exactor_Core_Model_MerchantSettings::COMMIT_ON_SALES_ORDER){
|
| 97 |
$this->exactorProcessingService->commitExistingInvoiceForOrder($orderId);
|
| 98 |
}
|
| 99 |
}
|
| 113 |
|
| 114 |
public function handleNewCreditMemo(Varien_Event_Observer $observer){
|
| 115 |
$this->logger->trace('called', 'handleNewCreditMemo');
|
| 116 |
+
$merchantSettings = $this->loadMerchantSettings($observer->getCreditmemo()->getOrder());
|
| 117 |
+
if ($merchantSettings==null) return;
|
| 118 |
$orderId = $observer->getCreditmemo()->getOrder()->getIncrementId();
|
| 119 |
$this->refundTransactionForOrder($orderId);
|
| 120 |
}
|
| 121 |
|
| 122 |
public function handleCancelOrder(Varien_Event_Observer $observer){
|
| 123 |
$this->logger->trace('called', 'handleCancelOrder');
|
| 124 |
+
$merchantSettings = $this->loadMerchantSettings($observer->getOrder());
|
| 125 |
+
if ($merchantSettings==null) return;
|
| 126 |
$orderId = $observer->getOrder()->getIncrementId();
|
| 127 |
$this->refundTransactionForOrder($orderId);
|
| 128 |
}
|
| 129 |
|
| 130 |
public function handleNewShipment(Varien_Event_Observer $observer){
|
| 131 |
$this->logger->trace('called', 'handleNewShipment');
|
| 132 |
+
$merchantSettings = $this->loadMerchantSettings($observer->getShipment()->getOrder());
|
| 133 |
+
if ($merchantSettings==null) return;
|
| 134 |
+
if ($merchantSettings->getCommitOption() == Exactor_Core_Model_MerchantSettings::COMMIT_ON_SHIPMENT){
|
| 135 |
$orderId = $observer->getShipment()->getOrder()->getIncrementId();
|
| 136 |
$this->commitTransactionForOrder($orderId);
|
| 137 |
}
|
| 139 |
|
| 140 |
public function handleNewInvoice(Varien_Event_Observer $observer){
|
| 141 |
$this->logger->trace('called', 'handleNewInvoice');
|
| 142 |
+
$merchantSettings = $this->loadMerchantSettings($observer->getInvoice()->getOrder());
|
| 143 |
+
if ($merchantSettings==null) return;
|
| 144 |
+
if ($merchantSettings->getCommitOption() == Exactor_Core_Model_MerchantSettings::COMMIT_ON_INVOICE){
|
| 145 |
$orderId = $observer->getInvoice()->getOrder()->getIncrementId();
|
| 146 |
$this->commitTransactionForOrder($orderId);
|
| 147 |
}
|
| 148 |
|
| 149 |
}
|
| 150 |
|
| 151 |
+
/**
|
| 152 |
+
* @param Mage_Sales_Model_Order|null $order
|
| 153 |
+
* @return int
|
| 154 |
+
*/
|
| 155 |
+
public function getStoreViewId($order=null){
|
| 156 |
$storeId = Mage::app()->getStore()->getId();
|
| 157 |
+
if ($order!=null){
|
| 158 |
+
$storeId = $order->getStoreId() ? $order->getStoreId() : 0;
|
| 159 |
+
}
|
| 160 |
return $storeId != 0 ? $storeId : Mage::app()->getDefaultStoreView()->getId();
|
| 161 |
}
|
| 162 |
}
|
app/code/local/Exactor/Sales/etc/config.xml
CHANGED
|
@@ -28,7 +28,7 @@
|
|
| 28 |
<config>
|
| 29 |
<modules>
|
| 30 |
<Exactor_Sales>
|
| 31 |
-
<version>2012.06.
|
| 32 |
</Exactor_Sales>
|
| 33 |
</modules>
|
| 34 |
<global>
|
| 28 |
<config>
|
| 29 |
<modules>
|
| 30 |
<Exactor_Sales>
|
| 31 |
+
<version>2012.06.23</version>
|
| 32 |
</Exactor_Sales>
|
| 33 |
</modules>
|
| 34 |
<global>
|
app/code/local/Exactor/Tax/Helper/Mapping.php
CHANGED
|
@@ -195,7 +195,10 @@ class Exactor_Tax_Helper_Mapping extends Mage_Core_Helper_Abstract {
|
|
| 195 |
Exactor_Core_Model_MerchantSettings $merchantSettings){
|
| 196 |
$lineItem = new LineItemType();
|
| 197 |
$lineItem->setDescription($magentoItem->getName());
|
| 198 |
-
|
|
|
|
|
|
|
|
|
|
| 199 |
$lineItem->setQuantity($magentoItem->getTotalQty());
|
| 200 |
$lineItem->setSKU($this->getSKUForItem($magentoItem, $merchantSettings));
|
| 201 |
$this->applyDiscountToLineItem($lineItem, $magentoItem->getDiscountAmount());
|
|
@@ -220,8 +223,12 @@ class Exactor_Tax_Helper_Mapping extends Mage_Core_Helper_Abstract {
|
|
| 220 |
return $exemptionId;
|
| 221 |
}
|
| 222 |
|
| 223 |
-
private function getCurrentCurrencyCode(){
|
| 224 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
| 225 |
if ($currency == null) $currency = 'USD';
|
| 226 |
return $currency;
|
| 227 |
}
|
|
@@ -255,7 +262,7 @@ class Exactor_Tax_Helper_Mapping extends Mage_Core_Helper_Abstract {
|
|
| 255 |
$invoiceRequest->setPurchaseOrderNumber(self::PO_ESTIMATE_TEXT .$quoteAddress->getId());
|
| 256 |
$invoiceRequest->setShipTo($shipToAddress);
|
| 257 |
$invoiceRequest->setBillTo($billingAddress);
|
| 258 |
-
$invoiceRequest->setCurrencyCode($this->getCurrentCurrencyCode());
|
| 259 |
$invoiceRequest->setShipFrom($merchantSettings->getExactorShippingAddress());
|
| 260 |
$invoiceRequest->setExemptionId($this->getExemptionIdForQuoteAddress($quoteAddress, $merchantSettings));
|
| 261 |
// Line items list
|
| 195 |
Exactor_Core_Model_MerchantSettings $merchantSettings){
|
| 196 |
$lineItem = new LineItemType();
|
| 197 |
$lineItem->setDescription($magentoItem->getName());
|
| 198 |
+
if ($magentoItem->getBaseRowTotal())
|
| 199 |
+
$lineItem->setGrossAmount($magentoItem->getBaseRowTotal());
|
| 200 |
+
else
|
| 201 |
+
$lineItem->setGrossAmount(0.0);
|
| 202 |
$lineItem->setQuantity($magentoItem->getTotalQty());
|
| 203 |
$lineItem->setSKU($this->getSKUForItem($magentoItem, $merchantSettings));
|
| 204 |
$this->applyDiscountToLineItem($lineItem, $magentoItem->getDiscountAmount());
|
| 223 |
return $exemptionId;
|
| 224 |
}
|
| 225 |
|
| 226 |
+
private function getCurrentCurrencyCode(Mage_Sales_Model_Quote_Address $quoteAddress){
|
| 227 |
+
$store = Mage::app()->getStore();
|
| 228 |
+
if ($quoteAddress->getQuote() != null && $quoteAddress->getQuote()->getStoreId() != null){
|
| 229 |
+
$store = $quoteAddress->getQuote()->getStore();
|
| 230 |
+
}
|
| 231 |
+
$currency = $store->getBaseCurrencyCode();
|
| 232 |
if ($currency == null) $currency = 'USD';
|
| 233 |
return $currency;
|
| 234 |
}
|
| 262 |
$invoiceRequest->setPurchaseOrderNumber(self::PO_ESTIMATE_TEXT .$quoteAddress->getId());
|
| 263 |
$invoiceRequest->setShipTo($shipToAddress);
|
| 264 |
$invoiceRequest->setBillTo($billingAddress);
|
| 265 |
+
$invoiceRequest->setCurrencyCode($this->getCurrentCurrencyCode($quoteAddress));
|
| 266 |
$invoiceRequest->setShipFrom($merchantSettings->getExactorShippingAddress());
|
| 267 |
$invoiceRequest->setExemptionId($this->getExemptionIdForQuoteAddress($quoteAddress, $merchantSettings));
|
| 268 |
// Line items list
|
app/code/local/Exactor/Tax/Model/Sales/Total/Quote/Tax.php
CHANGED
|
@@ -170,6 +170,22 @@ class Exactor_Tax_Model_Sales_Total_Quote_Tax extends Mage_Sales_Model_Quote_Add
|
|
| 170 |
foreach ($address->getAllItems() as $item){
|
| 171 |
$shippingTax -= $item->getTaxAmount();
|
| 172 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 173 |
$address->setShippingTaxAmount($shippingTax);
|
| 174 |
$address->setBaseShippingTaxAmount($shippingTax);
|
| 175 |
}
|
| 170 |
foreach ($address->getAllItems() as $item){
|
| 171 |
$shippingTax -= $item->getTaxAmount();
|
| 172 |
}
|
| 173 |
+
// The following code is workaraund for the bug in Magento 1.6.2 - Tax applied to the QuoteAddress object
|
| 174 |
+
// can be missed by Magento for some reason. This issue can be reproduced in very trickily manner:
|
| 175 |
+
// 1. login
|
| 176 |
+
// 2. add product to the cart
|
| 177 |
+
// 3. logout
|
| 178 |
+
// 4. login again
|
| 179 |
+
// 5. proceed to purchase
|
| 180 |
+
// 6. select FREE SHIPPING
|
| 181 |
+
// 7. tax will be zero in front-end, negative in fact. The reason - $address->getTaxAmount() will return 0,
|
| 182 |
+
// while line items still contains valid tax
|
| 183 |
+
// IMPORTANT: Issue can be reproduced only once per session (first attempt), thus you should clear cookies before login.
|
| 184 |
+
if ($shippingTax < 0){
|
| 185 |
+
$this->applyTax(-1 * $shippingTax);
|
| 186 |
+
$shippingTax = 0;
|
| 187 |
+
}
|
| 188 |
+
//
|
| 189 |
$address->setShippingTaxAmount($shippingTax);
|
| 190 |
$address->setBaseShippingTaxAmount($shippingTax);
|
| 191 |
}
|
lib/ExactorCommons/ExactorCommons.php
CHANGED
|
@@ -635,7 +635,7 @@ class ExactorProcessingService{
|
|
| 635 |
$response = ExactorConnectionFactory::getInstance()->buildExactorConnector()->sendRequest($request);
|
| 636 |
// Do callback to the plugin
|
| 637 |
if ($response->hasErrors()){
|
| 638 |
-
if ($response->getFirstError()->getErrorCode() == ErrorResponseType::
|
| 639 |
$commitRequest->setCommitDate(new DateTime());
|
| 640 |
$response = ExactorConnectionFactory::getInstance()->buildExactorConnector()->sendRequest($request);
|
| 641 |
if ($response->hasErrors()){
|
| 635 |
$response = ExactorConnectionFactory::getInstance()->buildExactorConnector()->sendRequest($request);
|
| 636 |
// Do callback to the plugin
|
| 637 |
if ($response->hasErrors()){
|
| 638 |
+
if ($response->getFirstError()->getErrorCode() == ErrorResponseType::ERROR_INVALID_COMMIT_DATE){
|
| 639 |
$commitRequest->setCommitDate(new DateTime());
|
| 640 |
$response = ExactorConnectionFactory::getInstance()->buildExactorConnector()->sendRequest($request);
|
| 641 |
if ($response->hasErrors()){
|
lib/ExactorCommons/ExactorDomainObjects.php
CHANGED
|
@@ -216,7 +216,7 @@ class LineItemType extends XmlSerializationSupport {
|
|
| 216 |
public $SKU;
|
| 217 |
public $Description;
|
| 218 |
public $Quantity=1;
|
| 219 |
-
public $GrossAmount;
|
| 220 |
public $BillTo;
|
| 221 |
public $ShipTo;
|
| 222 |
public $ShipFrom;
|
| 216 |
public $SKU;
|
| 217 |
public $Description;
|
| 218 |
public $Quantity=1;
|
| 219 |
+
public $GrossAmount=0;
|
| 220 |
public $BillTo;
|
| 221 |
public $ShipTo;
|
| 222 |
public $ShipFrom;
|
lib/ExactorCommons/config.php
CHANGED
|
@@ -6,6 +6,6 @@
|
|
| 6 |
*/
|
| 7 |
|
| 8 |
ExactorLoggingFactory::getInstance()->setup('MagentoLogger', IExactorLogger::TRACE);
|
| 9 |
-
ExactorConnectionFactory::getInstance()->setup('Magento','
|
| 10 |
ExactorProcessingServiceFactory::getInstance()->setup(new MagentoExactorCallback());
|
| 11 |
|
| 6 |
*/
|
| 7 |
|
| 8 |
ExactorLoggingFactory::getInstance()->setup('MagentoLogger', IExactorLogger::TRACE);
|
| 9 |
+
ExactorConnectionFactory::getInstance()->setup('Magento','v20120723');
|
| 10 |
ExactorProcessingServiceFactory::getInstance()->setup(new MagentoExactorCallback());
|
| 11 |
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Mage_Exactor_Tax</name>
|
| 4 |
-
<version>2012.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -12,9 +12,9 @@ Once installed, neither the merchant, nor the customer, need to perform any addi
|
|
| 12 |
For additional information, please refer to the Exactor Magento User Guide that is attached to the plug-in, or which you can download directly from the Exactor control panel (navigate to Account Management Integration Points & PlugIns).</description>
|
| 13 |
<notes>Supported Magento 1.5.0.0 - 1.7.x</notes>
|
| 14 |
<authors><author><name>Exactor, Inc.</name><user>exactor</user><email>support@exactor.com</email></author></authors>
|
| 15 |
-
<date>2012-
|
| 16 |
-
<time>
|
| 17 |
-
<contents><target name="magelocal"><dir name="Exactor"><dir name="Core"><dir name="Helper"><file name="SessionCache.php" hash="4aab06767188e8ead64043654989473d"/></dir><dir name="Model"><file name="ExactorTransaction.php" hash="852aa20f6e3b7aa0001439d4bffe9724"/><file name="MerchantSettings.php" hash="b4c2acde5dfa929e89ea7ec9fe0f1b2f"/><dir name="Mysql4"><dir name="ExactorTransaction"><file name="Collection.php" hash="c7b890b4d3ab35e65a3856ae0e2fdf72"/></dir><file name="ExactorTransaction.php" hash="c91aebaae767613acf1c439a8b513c3b"/><dir name="MerchantSettings"><file name="Collection.php" hash="c1593f52e582e601409c4651c37495af"/><file name="Collection.php~" hash="d360e202eb30432ac41dc023ce13ffc0"/></dir><file name="MerchantSettings.php" hash="8f22b76bb64cdc7b1deb6f0e38889905"/></dir><dir name="Type"><file name="Onepage.php" hash="
|
| 18 |
<compatible/>
|
| 19 |
<dependencies><required><php><min>5.0.0</min><max>6.0.0</max></php></required></dependencies>
|
| 20 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Mage_Exactor_Tax</name>
|
| 4 |
+
<version>2012.07.23</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license uri="http://www.opensource.org/licenses/osl-3.0.php">OSL v3.0</license>
|
| 7 |
<channel>community</channel>
|
| 12 |
For additional information, please refer to the Exactor Magento User Guide that is attached to the plug-in, or which you can download directly from the Exactor control panel (navigate to Account Management Integration Points & PlugIns).</description>
|
| 13 |
<notes>Supported Magento 1.5.0.0 - 1.7.x</notes>
|
| 14 |
<authors><author><name>Exactor, Inc.</name><user>exactor</user><email>support@exactor.com</email></author></authors>
|
| 15 |
+
<date>2012-07-23</date>
|
| 16 |
+
<time>16:15:21</time>
|
| 17 |
+
<contents><target name="magelocal"><dir name="Exactor"><dir name="Core"><dir name="Helper"><file name="SessionCache.php" hash="4aab06767188e8ead64043654989473d"/></dir><dir name="Model"><file name="ExactorTransaction.php" hash="852aa20f6e3b7aa0001439d4bffe9724"/><file name="MerchantSettings.php" hash="b4c2acde5dfa929e89ea7ec9fe0f1b2f"/><dir name="Mysql4"><dir name="ExactorTransaction"><file name="Collection.php" hash="c7b890b4d3ab35e65a3856ae0e2fdf72"/></dir><file name="ExactorTransaction.php" hash="c91aebaae767613acf1c439a8b513c3b"/><dir name="MerchantSettings"><file name="Collection.php" hash="c1593f52e582e601409c4651c37495af"/><file name="Collection.php~" hash="d360e202eb30432ac41dc023ce13ffc0"/></dir><file name="MerchantSettings.php" hash="8f22b76bb64cdc7b1deb6f0e38889905"/></dir><dir name="Type"><file name="Onepage.php" hash="2441fb08bbeb579831cea4d3fbd31104"/></dir></dir><dir name="etc"><file name="config.xml" hash="98ecc82a5f7b74ac0bfc0f7ab512afdb"/></dir></dir><dir name="ExactorSettings"><dir name="Block"><file name="Form.php" hash="7dcfb00922cfe305d8ae08cb20ca5e87"/></dir><dir name="Helper"><file name="Data.php" hash="a23bb9c251f0dbb77c107d01dde39e86"/><file name="VersionResolver.php" hash="14dce068dfe2a7d3364c4bd29e6f8431"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="FormController.php" hash="a154f13f8c4c04f838dfb79607078341"/></dir><file name="AjaxController.php" hash="c07aeeca00e1408e52945fc027569793"/><file name="IndexController.php" hash="f47cbc274dd68c57c30b60bbee69259e"/></dir><dir name="etc"><file name="config.xml" hash="6c2f28c302b359abd12565264fa23bc5"/></dir><dir name="sql"><dir name="ExactorSettings_setup"><file name="mysql4-install-14.04.2012.php" hash="f35af1e12921b57479cb4b5677937a0c"/></dir></dir></dir><dir name="Sales"><dir name="Model"><file name="Observer.php" hash="597c015390a1c0d8e327aaa17d756be3"/></dir><dir name="etc"><file name="config.xml" hash="38b42ea182d95847903f9ddfda67b282"/></dir></dir><dir name="Tax"><dir name="Helper"><file name="Calculation.php" hash="29c5252bdd48b173c90588f449114024"/><file name="Mapping.php" hash="31e761acdecabb2cbfd744c88c60fcbe"/></dir><dir name="Model"><dir name="Sales"><dir name="Total"><dir name="Quote"><dir name="Nominal"><file name="Tax.php" hash="156eff380df5b16db55449759f193490"/></dir><file name="Tax.php" hash="15fce92e8f6bc2caf0ce09df51cf81a4"/></dir></dir></dir></dir><dir name="etc"><file name="config.xml" hash="9a653c98a67e3743f45618d0890aab00"/></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="exactorsettings.xml" hash="3707eac08d2393c8796eebf1cf7a0bd9"/><file name="exactoronestepcheckout.xml" hash="9fdfa1db5e4e60b4eec8f348c10aab07"/></dir><dir name="template"><dir name="ExactorSettings"><file name="settingsform.phtml" hash="c77a9c5461dbb37f0a8835e55f48f1d6"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="exactoronestepcheckout.xml" hash="9fdfa1db5e4e60b4eec8f348c10aab07"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Exactor.xml" hash="e8997e8e36a265141b37790caaef39d6"/></dir></target><target name="mageweb"><dir name="js"><dir name="exactor"><file name="exactor.js" hash="5c23e40f4034e50a6e0df5b1c708b7e1"/></dir></dir></target><target name="magelib"><dir name="ExactorCommons"><file name="ExactorCommons.php" hash="1a9ffaa25007a2b6eb170905ecaed97e"/><file name="ExactorDomainObjects.php" hash="d69c2827a03213386b861076ad75e33a"/><file name="Magento.php" hash="76da7333fe0692053a47f8564c7b513a"/><file name="XmlProcessing.php" hash="383fd21839889d720e2094e83ccc7a2a"/><file name="config.php" hash="b33630997120f36b5470626f98dc372a"/><file name="config.php~" hash="f12c65295b05793efd89dd64748282d1"/></dir></target></contents>
|
| 18 |
<compatible/>
|
| 19 |
<dependencies><required><php><min>5.0.0</min><max>6.0.0</max></php></required></dependencies>
|
| 20 |
</package>
|
