Version Notes
* Bugfixes
Download this release
Release Info
Developer | Christiaan de Ridder |
Extension | Tritac_ChannelEngine |
Version | 3.1.0 |
Comparing to | |
See all releases |
Code changes from version 3.0.0 to 3.1.0
- app/code/community/Tritac/ChannelEngine/Block/Adminhtml/System/Config/Feed.php +25 -23
- app/code/community/Tritac/ChannelEngine/Block/Head.php +0 -5
- app/code/community/Tritac/ChannelEngine/Helper/Data.php +0 -12
- app/code/community/Tritac/ChannelEngine/Model/Observer.php +30 -10
- app/code/community/Tritac/ChannelEngine/etc/config.xml +2 -2
- app/design/adminhtml/default/default/template/channelengine/system/config/feed/generate_button.phtml +4 -5
- app/design/frontend/base/default/template/channelengine/checkout/success.phtml +0 -43
- app/design/frontend/base/default/template/channelengine/head.phtml +0 -14
- package.xml +20 -8
app/code/community/Tritac/ChannelEngine/Block/Adminhtml/System/Config/Feed.php
CHANGED
@@ -7,47 +7,49 @@
|
|
7 |
*/
|
8 |
class Tritac_ChannelEngine_Block_Adminhtml_System_Config_Feed extends Mage_Adminhtml_Block_System_Config_Form_Field
|
9 |
{
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
10 |
/**
|
11 |
-
*
|
12 |
*
|
13 |
-
* @
|
|
|
14 |
*/
|
15 |
-
protected function
|
16 |
{
|
17 |
-
|
18 |
-
if (!$this->getTemplate()) {
|
19 |
-
$this->setTemplate('channelengine/system/config/feed/generate_button.phtml');
|
20 |
-
}
|
21 |
-
return $this;
|
22 |
}
|
23 |
|
24 |
/**
|
25 |
-
*
|
26 |
*
|
27 |
-
* @param Varien_Data_Form_Element_Abstract $element
|
28 |
* @return string
|
29 |
*/
|
30 |
-
public function
|
31 |
{
|
32 |
-
|
33 |
-
return parent::render($element);
|
34 |
}
|
35 |
|
36 |
/**
|
37 |
-
*
|
38 |
*
|
39 |
-
* @param Varien_Data_Form_Element_Abstract $element
|
40 |
* @return string
|
41 |
*/
|
42 |
-
|
43 |
{
|
44 |
-
$
|
45 |
-
|
46 |
-
'
|
47 |
-
'
|
48 |
-
'ajax_url' => Mage::getSingleton('adminhtml/url')->getUrl('channelengine/adminhtml_generate/ajax')
|
49 |
));
|
50 |
-
|
51 |
-
return $
|
52 |
}
|
53 |
}
|
7 |
*/
|
8 |
class Tritac_ChannelEngine_Block_Adminhtml_System_Config_Feed extends Mage_Adminhtml_Block_System_Config_Form_Field
|
9 |
{
|
10 |
+
/*
|
11 |
+
* Set template
|
12 |
+
*/
|
13 |
+
protected function _construct()
|
14 |
+
{
|
15 |
+
parent::_construct();
|
16 |
+
$this->setTemplate('channelengine/system/config/feed/generate_button.phtml');
|
17 |
+
}
|
18 |
+
|
19 |
/**
|
20 |
+
* Return element html
|
21 |
*
|
22 |
+
* @param Varien_Data_Form_Element_Abstract $element
|
23 |
+
* @return string
|
24 |
*/
|
25 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
26 |
{
|
27 |
+
return $this->_toHtml();
|
|
|
|
|
|
|
|
|
28 |
}
|
29 |
|
30 |
/**
|
31 |
+
* Return ajax url for button
|
32 |
*
|
|
|
33 |
* @return string
|
34 |
*/
|
35 |
+
public function getAjaxUrl()
|
36 |
{
|
37 |
+
return Mage::helper('adminhtml')->getUrl('channelengine/adminhtml_generate/ajax');
|
|
|
38 |
}
|
39 |
|
40 |
/**
|
41 |
+
* Generate button html
|
42 |
*
|
|
|
43 |
* @return string
|
44 |
*/
|
45 |
+
public function getButtonHtml()
|
46 |
{
|
47 |
+
$button = $this->getLayout()->createBlock('adminhtml/widget_button')->setData(array(
|
48 |
+
'id' => 'channelengine_generate_feed_button',
|
49 |
+
'label' => $this->helper('channelengine')->__('Generate Feed'),
|
50 |
+
'onclick' => 'javascript:generateFeed(); return false;'
|
|
|
51 |
));
|
52 |
+
|
53 |
+
return $button->toHtml();
|
54 |
}
|
55 |
}
|
app/code/community/Tritac/ChannelEngine/Block/Head.php
CHANGED
@@ -8,9 +8,4 @@ class Tritac_ChannelEngine_Block_Head extends Mage_Core_Block_Template
|
|
8 |
|
9 |
return $config[$storeId]['tenant'];
|
10 |
}
|
11 |
-
|
12 |
-
public function getEnvironment()
|
13 |
-
{
|
14 |
-
return Mage::helper('channelengine')->isDevelopment() ? 'development' : 'production';
|
15 |
-
}
|
16 |
}
|
8 |
|
9 |
return $config[$storeId]['tenant'];
|
10 |
}
|
|
|
|
|
|
|
|
|
|
|
11 |
}
|
app/code/community/Tritac/ChannelEngine/Helper/Data.php
CHANGED
@@ -35,18 +35,6 @@ class Tritac_ChannelEngine_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
35 |
return $this->_config;
|
36 |
}
|
37 |
|
38 |
-
/**
|
39 |
-
* Get extension general config
|
40 |
-
*
|
41 |
-
* @return bool
|
42 |
-
*/
|
43 |
-
public function isDevelopment()
|
44 |
-
{
|
45 |
-
$machines = array('tritac-ssd16');
|
46 |
-
$machine = gethostname();
|
47 |
-
return in_array($machine, $machines);
|
48 |
-
}
|
49 |
-
|
50 |
/**
|
51 |
* Get extension general config
|
52 |
*
|
35 |
return $this->_config;
|
36 |
}
|
37 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
38 |
/**
|
39 |
* Get extension general config
|
40 |
*
|
app/code/community/Tritac/ChannelEngine/Model/Observer.php
CHANGED
@@ -93,19 +93,25 @@ class Tritac_ChannelEngine_Model_Observer
|
|
93 |
$quote = Mage::getModel('sales/quote')->setStoreId($storeId);
|
94 |
|
95 |
foreach($lines as $item) {
|
96 |
-
|
97 |
$productNo = $item->getMerchantProductNo();
|
|
|
98 |
$ids = explode('_', $productNo);
|
99 |
$productId = $ids[0];
|
100 |
-
// Load magento product
|
101 |
-
$_product = Mage::getModel('catalog/product')
|
102 |
-
->setStoreId($storeId);
|
103 |
$productOptions = array();
|
104 |
-
$_product->load($productId);
|
105 |
if(count($ids) == 3) {
|
106 |
$productOptions = array($ids[1] => intval($ids[2]));
|
107 |
}
|
108 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
109 |
// Prepare product parameters for quote
|
110 |
$params = new Varien_Object();
|
111 |
$params->setQty($item->getQuantity());
|
@@ -586,7 +592,10 @@ class Tritac_ChannelEngine_Model_Observer
|
|
586 |
->addFieldToFilter('type_id', array('in' => array('simple')))
|
587 |
->addStoreFilter($_store)
|
588 |
->addAttributeToFilter('status', 1)
|
589 |
-
->addAttributeToFilter('visibility', array('in' => array(
|
|
|
|
|
|
|
590 |
->addAttributeToSort('entity_id', 'DESC');
|
591 |
|
592 |
// Add qty and category fields to select
|
@@ -602,6 +611,7 @@ class Tritac_ChannelEngine_Model_Observer
|
|
602 |
array('category_id' => 'MAX(`ccp`.`category_id`)')
|
603 |
)
|
604 |
->group('e.entity_id');
|
|
|
605 |
|
606 |
Mage::getSingleton('core/resource_iterator')->walk(
|
607 |
$collection->getSelect(),
|
@@ -640,17 +650,17 @@ class Tritac_ChannelEngine_Model_Observer
|
|
640 |
$productModel->setData('entity_id', $parentData['entity_id']);
|
641 |
$productModel->setData('url_key', $parentData['url_key']);
|
642 |
$productModel->setData('store_id', $parentData['store_id']);
|
|
|
643 |
$parentData['url'] = $productModel->getProductUrl();
|
644 |
|
645 |
$specialPrice = $parentData['special_price'];
|
646 |
$specialFrom = $parentData['special_from_date'];
|
647 |
$specialTo = $parentData['special_to_date'];
|
648 |
-
$parentData['price'] = Mage::getModel('catalog/product_type_price')
|
649 |
-
->calculateSpecialPrice($parentData['price'], $specialPrice, $specialFrom, $specialTo, $storeId);
|
650 |
|
651 |
$xml = $this->_getProductXml($parentData, $categoryArray, array('systemAttributes' => $systemAttributes, 'attributes' => $visibleAttributes));
|
652 |
-
|
653 |
-
|
654 |
|
655 |
foreach($_childProducts as $_child) {
|
656 |
$childData = $_child->getData();
|
@@ -659,6 +669,11 @@ class Tritac_ChannelEngine_Model_Observer
|
|
659 |
$childData['price'] = $parentData['price'];
|
660 |
$childData['url'] = $parentData['url'];
|
661 |
$childData['description'] = $parentData['description'];
|
|
|
|
|
|
|
|
|
|
|
662 |
|
663 |
if(!isset($childData['image']) || $childData['image'] == 'no_slection') {
|
664 |
$childData['image'] = $parentData['image'];
|
@@ -675,12 +690,14 @@ class Tritac_ChannelEngine_Model_Observer
|
|
675 |
$childData['price'] = $newPrice;
|
676 |
}
|
677 |
}
|
|
|
678 |
$xml .= $this->_getProductXml($childData, $categoryArray, array('systemAttributes' => $systemAttributes, 'attributes' => $visibleAttributes));
|
679 |
}
|
680 |
$io->streamWrite($xml);
|
681 |
}
|
682 |
|
683 |
|
|
|
684 |
$io->streamWrite('</Products>');
|
685 |
$io->streamUnlock();
|
686 |
$io->streamClose();
|
@@ -761,9 +778,11 @@ class Tritac_ChannelEngine_Model_Observer
|
|
761 |
if(isset($product['group_code'])) {
|
762 |
$xml .= "<GroupCode><![CDATA[".$product['group_code']."]]></GroupCode>";
|
763 |
}
|
|
|
764 |
if(isset($product['parent_id'])) {
|
765 |
$xml .= "<ParentId><![CDATA[".$product['parent_id']."]]></ParentId>";
|
766 |
}
|
|
|
767 |
$xml .= "<Type><![CDATA[".$product['type_id']."]]></Type>";
|
768 |
$xml .= "<Name><![CDATA[".$product['name']."]]></Name>";
|
769 |
$xml .= "<Description><![CDATA[".$product['description']."]]></Description>";
|
@@ -773,6 +792,7 @@ class Tritac_ChannelEngine_Model_Observer
|
|
773 |
|
774 |
// Add product stock qty
|
775 |
$xml .= "<Stock><![CDATA[".$product['qty']."]]></Stock>";
|
|
|
776 |
// Add product SKU and GTIN
|
777 |
$xml .= "<SKU><![CDATA[".$product['sku']."]]></SKU>";
|
778 |
if(!empty($product['gtin'])) {
|
93 |
$quote = Mage::getModel('sales/quote')->setStoreId($storeId);
|
94 |
|
95 |
foreach($lines as $item) {
|
|
|
96 |
$productNo = $item->getMerchantProductNo();
|
97 |
+
|
98 |
$ids = explode('_', $productNo);
|
99 |
$productId = $ids[0];
|
|
|
|
|
|
|
100 |
$productOptions = array();
|
|
|
101 |
if(count($ids) == 3) {
|
102 |
$productOptions = array($ids[1] => intval($ids[2]));
|
103 |
}
|
104 |
|
105 |
+
// Load magento product
|
106 |
+
$_product = Mage::getModel('catalog/product')->setStoreId($storeId);
|
107 |
+
$_product->load($productId);
|
108 |
+
|
109 |
+
if(!$_product->getId()) {
|
110 |
+
// If the product can't be found by ID, fall back on the SKU.
|
111 |
+
$productId = $_product->getIdBySku($productNo);
|
112 |
+
$_product->load($productId);
|
113 |
+
}
|
114 |
+
|
115 |
// Prepare product parameters for quote
|
116 |
$params = new Varien_Object();
|
117 |
$params->setQty($item->getQuantity());
|
592 |
->addFieldToFilter('type_id', array('in' => array('simple')))
|
593 |
->addStoreFilter($_store)
|
594 |
->addAttributeToFilter('status', 1)
|
595 |
+
->addAttributeToFilter('visibility', array('in' => array(
|
596 |
+
Mage_Catalog_Model_Product_Visibility::VISIBILITY_IN_CATALOG,
|
597 |
+
Mage_Catalog_Model_Product_Visibility::VISIBILITY_IN_SEARCH,
|
598 |
+
Mage_Catalog_Model_Product_Visibility::VISIBILITY_BOTH)))
|
599 |
->addAttributeToSort('entity_id', 'DESC');
|
600 |
|
601 |
// Add qty and category fields to select
|
611 |
array('category_id' => 'MAX(`ccp`.`category_id`)')
|
612 |
)
|
613 |
->group('e.entity_id');
|
614 |
+
|
615 |
|
616 |
Mage::getSingleton('core/resource_iterator')->walk(
|
617 |
$collection->getSelect(),
|
650 |
$productModel->setData('entity_id', $parentData['entity_id']);
|
651 |
$productModel->setData('url_key', $parentData['url_key']);
|
652 |
$productModel->setData('store_id', $parentData['store_id']);
|
653 |
+
|
654 |
$parentData['url'] = $productModel->getProductUrl();
|
655 |
|
656 |
$specialPrice = $parentData['special_price'];
|
657 |
$specialFrom = $parentData['special_from_date'];
|
658 |
$specialTo = $parentData['special_to_date'];
|
659 |
+
$parentData['price'] = Mage::getModel('catalog/product_type_price')->calculateSpecialPrice($parentData['price'], $specialPrice, $specialFrom, $specialTo, $storeId);
|
|
|
660 |
|
661 |
$xml = $this->_getProductXml($parentData, $categoryArray, array('systemAttributes' => $systemAttributes, 'attributes' => $visibleAttributes));
|
662 |
+
|
663 |
+
$_childProducts = Mage::getModel('catalog/product_type_configurable')->getUsedProductCollection($_product)->addAttributeToSelect($attributesToSelect);//->getUsedProducts(null, $_product);
|
664 |
|
665 |
foreach($_childProducts as $_child) {
|
666 |
$childData = $_child->getData();
|
669 |
$childData['price'] = $parentData['price'];
|
670 |
$childData['url'] = $parentData['url'];
|
671 |
$childData['description'] = $parentData['description'];
|
672 |
+
|
673 |
+
if(isset($childData['stock_item']) && $childData['stockItem'] !== null) {
|
674 |
+
$stock = $childData['stock_item']->getData();
|
675 |
+
$childData['qty'] = $stock['qty'];
|
676 |
+
}
|
677 |
|
678 |
if(!isset($childData['image']) || $childData['image'] == 'no_slection') {
|
679 |
$childData['image'] = $parentData['image'];
|
690 |
$childData['price'] = $newPrice;
|
691 |
}
|
692 |
}
|
693 |
+
|
694 |
$xml .= $this->_getProductXml($childData, $categoryArray, array('systemAttributes' => $systemAttributes, 'attributes' => $visibleAttributes));
|
695 |
}
|
696 |
$io->streamWrite($xml);
|
697 |
}
|
698 |
|
699 |
|
700 |
+
|
701 |
$io->streamWrite('</Products>');
|
702 |
$io->streamUnlock();
|
703 |
$io->streamClose();
|
778 |
if(isset($product['group_code'])) {
|
779 |
$xml .= "<GroupCode><![CDATA[".$product['group_code']."]]></GroupCode>";
|
780 |
}
|
781 |
+
|
782 |
if(isset($product['parent_id'])) {
|
783 |
$xml .= "<ParentId><![CDATA[".$product['parent_id']."]]></ParentId>";
|
784 |
}
|
785 |
+
|
786 |
$xml .= "<Type><![CDATA[".$product['type_id']."]]></Type>";
|
787 |
$xml .= "<Name><![CDATA[".$product['name']."]]></Name>";
|
788 |
$xml .= "<Description><![CDATA[".$product['description']."]]></Description>";
|
792 |
|
793 |
// Add product stock qty
|
794 |
$xml .= "<Stock><![CDATA[".$product['qty']."]]></Stock>";
|
795 |
+
|
796 |
// Add product SKU and GTIN
|
797 |
$xml .= "<SKU><![CDATA[".$product['sku']."]]></SKU>";
|
798 |
if(!empty($product['gtin'])) {
|
app/code/community/Tritac/ChannelEngine/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Tritac_ChannelEngine>
|
5 |
-
<version>3.
|
6 |
</Tritac_ChannelEngine>
|
7 |
</modules>
|
8 |
|
@@ -183,7 +183,7 @@
|
|
183 |
</fetch_channelengine_returns>
|
184 |
<generate_channelengine_feed>
|
185 |
<schedule>
|
186 |
-
<cron_expr
|
187 |
</schedule>
|
188 |
<run>
|
189 |
<model>channelengine/observer::generateFeed</model>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Tritac_ChannelEngine>
|
5 |
+
<version>3.1.0</version>
|
6 |
</Tritac_ChannelEngine>
|
7 |
</modules>
|
8 |
|
183 |
</fetch_channelengine_returns>
|
184 |
<generate_channelengine_feed>
|
185 |
<schedule>
|
186 |
+
<cron_expr>*/1 * * * *</cron_expr>
|
187 |
</schedule>
|
188 |
<run>
|
189 |
<model>channelengine/observer::generateFeed</model>
|
app/design/adminhtml/default/default/template/channelengine/system/config/feed/generate_button.phtml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
<script type="text/javascript">
|
7 |
//<![CDATA[
|
8 |
function generateFeed() {
|
9 |
-
var elem = $('<?php echo $this->
|
10 |
|
11 |
new Ajax.Request('<?php echo $this->getAjaxUrl() ?>', {
|
12 |
onSuccess: function(response) {
|
@@ -25,7 +25,7 @@
|
|
25 |
} catch (e) {
|
26 |
elem.removeClassName('success').addClassName('fail')
|
27 |
}
|
28 |
-
$('generate_result').update(result);
|
29 |
},
|
30 |
onFailure: function(response) {
|
31 |
result = "<?php echo $this->__("Couldn't generate feed. See magento log.") ?>";
|
@@ -35,6 +35,5 @@
|
|
35 |
}
|
36 |
//]]>
|
37 |
</script>
|
38 |
-
|
39 |
-
|
40 |
-
</button>
|
6 |
<script type="text/javascript">
|
7 |
//<![CDATA[
|
8 |
function generateFeed() {
|
9 |
+
var elem = $('<?php echo $this->getId() ?>');
|
10 |
|
11 |
new Ajax.Request('<?php echo $this->getAjaxUrl() ?>', {
|
12 |
onSuccess: function(response) {
|
25 |
} catch (e) {
|
26 |
elem.removeClassName('success').addClassName('fail')
|
27 |
}
|
28 |
+
$('#generate_result').update(result);
|
29 |
},
|
30 |
onFailure: function(response) {
|
31 |
result = "<?php echo $this->__("Couldn't generate feed. See magento log.") ?>";
|
35 |
}
|
36 |
//]]>
|
37 |
</script>
|
38 |
+
<?php echo $this->getButtonHtml(); ?>
|
39 |
+
<span id="generate_result"><?php echo $this->escapeHtml($this->getLabel()) ?></span>
|
|
app/design/frontend/base/default/template/channelengine/checkout/success.phtml
DELETED
@@ -1,43 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
$order = Mage::getModel('sales/order')->load(Mage::getSingleton('checkout/session')->getLastOrderId());
|
3 |
-
?>
|
4 |
-
<script>
|
5 |
-
ce('track:order', {
|
6 |
-
merchantOrderNo: '<?php echo($order->getId()); ?>',
|
7 |
-
total: <?php echo($order->getGrandTotal()); ?>,
|
8 |
-
vat: <?php echo($order->getTaxRefunded() ? $order->getTaxRefunded() : 0); ?>,
|
9 |
-
shippingCost: <?php echo($order->getShippingAmount() ? $order->getShippingAmount() : 0); ?>,
|
10 |
-
city: '<?php echo($order->getBillingAddress()->getCity()); ?>',
|
11 |
-
country: '<?php echo($order->getBillingAddress()->getCountry()); ?>',
|
12 |
-
orderLines: [
|
13 |
-
<?php foreach($order->getAllItems() as $item): ?>
|
14 |
-
|
15 |
-
<?php
|
16 |
-
$categoryIds = Mage::getModel('catalog/product')->load($item->getProductId())->getCategoryIds();
|
17 |
-
$categoryId = end($categoryIds);
|
18 |
-
$category = Mage::getModel('catalog/category')->load($categoryId);
|
19 |
-
$path = explode('/', $category->getPath());
|
20 |
-
$categoryPath = '';
|
21 |
-
|
22 |
-
foreach($path as $catId) {
|
23 |
-
if($catId > 2) {
|
24 |
-
$cat = Mage::getModel('catalog/category')->load($catId);
|
25 |
-
if($categoryPath != '') {
|
26 |
-
$categoryPath .= ' > ';
|
27 |
-
}
|
28 |
-
$categoryPath .= $cat->getName();
|
29 |
-
}
|
30 |
-
}
|
31 |
-
?>
|
32 |
-
{
|
33 |
-
merchantProductNo: '<?php echo($item->getProductId()); ?>',
|
34 |
-
name: '<?php echo($item->getProduct()->getName()); ?>',
|
35 |
-
category: '<?php echo($categoryPath); ?>',
|
36 |
-
price: <?php echo($item->getProduct()->getPrice()); ?>,
|
37 |
-
quantity: <?php echo(intval($item->getQtyOrdered())); ?>
|
38 |
-
},
|
39 |
-
<?php endforeach ?>
|
40 |
-
|
41 |
-
]
|
42 |
-
});
|
43 |
-
</script>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/design/frontend/base/default/template/channelengine/head.phtml
DELETED
@@ -1,14 +0,0 @@
|
|
1 |
-
<?php if($this->getAccountName()): ?>
|
2 |
-
<script>
|
3 |
-
(function (T, r, i, t, a, c) {
|
4 |
-
T.ce = T.ce || function () { T.ce.eq = T.ce.eq || []; T.ce.eq.push(arguments); }, T.ce.url = t;
|
5 |
-
a = r.createElement(i); a.async = 1; a.src = t + '/content/scripts/ce.js';
|
6 |
-
c = r.getElementsByTagName(i)[0]; c.parentNode.insertBefore(a, c);
|
7 |
-
})(window, document, 'script', '//www.channelengine.net');
|
8 |
-
|
9 |
-
ce('set:account', '<?php echo($this->getAccountName()); ?>');
|
10 |
-
ce('set:environment', '<?php echo($this->getEnvironment()); ?>');
|
11 |
-
ce('track:click');
|
12 |
-
|
13 |
-
</script>
|
14 |
-
<?php endif ?>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
package.xml
CHANGED
@@ -1,18 +1,30 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Tritac_ChannelEngine</name>
|
4 |
-
<version>3.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Connect your Magento shop to the ChannelEngine platform.</summary>
|
10 |
-
<description>
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
16 |
<compatible/>
|
17 |
-
<dependencies><required><php><min>5.
|
18 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Tritac_ChannelEngine</name>
|
4 |
+
<version>3.1.0</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
<summary>Connect your Magento shop to the ChannelEngine platform.</summary>
|
10 |
+
<description>Millions of people visit websites like Bol.com, Amazon, Beslist and Kieskeurig looking for particular products. To reach these people you can sell your products on these marketplaces.
|
11 |
+

|
12 |
+
With ChannelEngine you will get the means to instantly connect to your favorite marketplaces, comparison engines, affiliate programs and other partners. One single connection between ChannelEngine and your e-commerce platform or ERP system allows you to optimize your product feeds and receive orders from your external sales channels.
|
13 |
+

|
14 |
+
This plugin will make this connection even easier. When the plugin is installed you only have to fill out your ChannelEngine details and you are good to go.
|
15 |
+

|
16 |
+
Features of ChannelEngine:
|
17 |
+

|
18 |
+
* Connect to a vast amount of Marketplaces and comparison-engines out of the box.
|
19 |
+
* Optimize feeds by removing products with bad performance.
|
20 |
+
* Receive orders from marketplaces using one single connection.
|
21 |
+
* Using this magento extension you can connect to ChannelEngine instantly without any further configuration.
|
22 |
+
* For more information, visit: ChannelEngine.com</description>
|
23 |
+
<notes>* Bugfixes</notes>
|
24 |
+
<authors><author><name>Christiaan de Ridder</name><user>christiaander</user><email>christiaan@tritac.com</email></author></authors>
|
25 |
+
<date>2016-06-14</date>
|
26 |
+
<time>07:16:19</time>
|
27 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Tritac_ChannelEngine.xml" hash="f6b4a6d9af9aa3bcd3019fd566d6a67c"/></dir></target><target name="magecommunity"><dir name="Tritac"><dir name="ChannelEngine"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><file name="Feed.php" hash="004083344207a444e00ebaf4a86835b9"/></dir></dir></dir><file name="Head.php" hash="74004d8749f6267c4ce024b47970af23"/></dir><dir name="Helper"><file name="Data.php" hash="7517ee0d0acd0567e1f1f14cf794107c"/></dir><dir name="Model"><dir name="Carrier"><file name="Channelengine.php" hash="b6e04e43096e934d57e8e8745dd67c75"/></dir><file name="Observer.php" hash="b38b8014a3c08e7abe94206cd5018acc"/><file name="Order.php" hash="7b5d59152a0341cf5bff5b7adf6c76b7"/><dir name="Payment"><dir name="Method"><file name="Channelengine.php" hash="b938300284d504de42dd04777c45c75b"/></dir></dir><dir name="Resource"><dir name="Order"><file name="Collection.php" hash="fedd812bdf0090a36ce7bdd23e7876f5"/></dir><file name="Order.php" hash="cab73cceec877cda4daadc5c66f356fe"/><file name="Setup.php" hash="ed5ca35f61e6158a8b617630ae84c5b8"/><dir name="Shipment"><file name="Collection.php" hash="56e7c3bee221edefdcb587801bd36cc2"/></dir><file name="Shipment.php" hash="e09302f0ff110b94fc34031ee9255caa"/></dir><file name="Shipment.php" hash="5aa413e4e1ca441456d0d28ed541d2fc"/><dir name="System"><dir name="Config"><dir name="Source"><file name="Gtin.php" hash="d2c18169dfaf87a01d9d7357329f1c78"/><file name="Shipping.php" hash="00d71eaebba3014fe9d17ee75f7cf0a9"/></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="GenerateController.php" hash="b69ead94a34e01bdf093ee6282b66c18"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="2a9dc6ac1738bebb470c1aa699478467"/><file name="config.xml" hash="08e5f73da7d491931b25f37eeef70e88"/><file name="system.xml" hash="b03c2dc362cc7cbf7334670afdf170ac"/></dir><dir name="sql"><dir name="channelengine_setup"><file name="mysql4-install-1.0.0.php" hash="6d04678d7750ff3de5a9eb697c13d52f"/><file name="mysql4-upgrade-2.6.0-2.7.0.php" hash="1f8c2f9d0239c9fbf31d3bfdd1c6cc46"/></dir></dir></dir></dir></target><target name="magelib"><dir name="Tritac"><dir name="ChannelEngineApiClient"><file name="AddTrustExternalCARoot.crt" hash="f85d1ff17b0079709f131f3ce3f288d2"/><file name="Client.php" hash="9e0065d5902495dcf12c6526a6309998"/><dir name="Enums"><file name="CancellationLineStatus.php" hash="b48713c95dea7855255eca6d9af68ba4"/><file name="CancellationStatus.php" hash="ea61f9cdf047d615c63d49e943ef7776"/><file name="Gender.php" hash="ec9d3e083df38a188c57b1015e011bce"/><file name="MancoReason.php" hash="b5a7ecf30975a494223df3135e111760"/><file name="OrderStatus.php" hash="451569e1788da5f08b01527ee86463cd"/><file name="ReturnAcceptStatus.php" hash="760598e7176288210d349686899e76aa"/><file name="ReturnReason.php" hash="9d8aea80edbb7d012e7abcbb0f54d5e4"/><file name="ReturnStatus.php" hash="7827e8d3b27faf6073835ecbcde1db6b"/><file name="ShipmentLineStatus.php" hash="ccdddd9f80610cbf284154db5930247a"/><file name="ShipmentStatus.php" hash="0b0351af3409590614ff249e1bac688e"/></dir><dir name="Helpers"><file name="Collection.php" hash="4dcae246e9de6e847818dc3be49ddad0"/><file name="HttpMethod.php" hash="79b753f221780fbf75773669cf3d1f86"/><file name="JsonMapper.php" hash="c8742a0636d3f866c8a1c2c97365cfb8"/></dir><dir name="Models"><file name="Address.php" hash="49a1cd2a405ba2832f638979a14c7187"/><file name="BaseModel.php" hash="9604e198f22fef25d60992c2cb9f506c"/><file name="Cancellation.php" hash="edddc28fc842661311da1d79f9b6b634"/><file name="CancellationLine.php" hash="f2eb604ccc7ea5678941394cb5861c48"/><file name="Message.php" hash="658c867e131588eb2520c349d6ebc5a7"/><file name="Order.php" hash="11df07d8acb3fc985b3eec812955ef42"/><file name="OrderExtraDataItem.php" hash="965abccf11c8157b7fd85e05a8ef4e28"/><file name="OrderLine.php" hash="78252a465c5f1b9b1c5e23c8ce09552d"/><file name="ReturnLine.php" hash="c011dfcf44f25b255e529fd26755fbd9"/><file name="ReturnObject.php" hash="28378a651ad7e41b127bfd1839f25dad"/><file name="Shipment.php" hash="c8903a23b59a1cada56b8518db56ce2d"/><file name="ShipmentLine.php" hash="0ca0e5441553f722ade5ad5924c9f801"/></dir><file name="loader.php" hash="5bba6033b0bdc5cb87afdbdde2deadf9"/></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="channelengine.xml" hash="ae6a00b46a84a610964743034eb72081"/></dir><dir name="template"><file name="channelengine" hash=""/></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="channelengine"><dir name="system"><dir name="config"><dir name="feed"><file name="generate_button.phtml" hash="ed8c5f4a81f19c7ceaacd1b1c004772e"/></dir></dir></dir></dir></dir></dir></dir></dir></target></contents>
|
28 |
<compatible/>
|
29 |
+
<dependencies><required><php><min>5.5.0</min><max>7.0.6</max></php><extension><name>curl</name><min>7.0</min><max>7.50</max></extension></required></dependencies>
|
30 |
</package>
|