Profileolabs_Shoppingflux - Version 0.8.5

Version Notes

- Minor bugfixes & improvements

Download this release

Release Info

Developer ShoppingFlux
Extension Profileolabs_Shoppingflux
Version 0.8.5
Comparing to
See all releases


Code changes from version 0.8.4 to 0.8.5

app/code/community/Profileolabs/Shoppingflux/Block/Export/Adminhtml/Product/Grid.php CHANGED
@@ -34,7 +34,6 @@ class Profileolabs_Shoppingflux_Block_Export_Adminhtml_Product_Grid extends Mage
34
  $collection = Mage::getModel('profileolabs_shoppingflux/catalog_product_collection')
35
  ->addAttributeToSelect('sku')
36
  ->addAttributeToSelect('name')
37
- ->addAttributeToSelect('shoppingflux_product')
38
  ->addAttributeToSelect('attribute_set_id')
39
  ->addAttributeToSelect('type_id')
40
  ->joinField('qty',
@@ -47,6 +46,7 @@ class Profileolabs_Shoppingflux_Block_Export_Adminhtml_Product_Grid extends Mage
47
  if ($store->getId()) {
48
  $collection->setStoreId($store->getId());
49
  $collection->addStoreFilter($store);
 
50
  $collection->joinAttribute('custom_name', 'catalog_product/name', 'entity_id', null, 'inner', $store->getId());
51
  $collection->joinAttribute('status', 'catalog_product/status', 'entity_id', null, 'inner', $store->getId());
52
  $collection->joinAttribute('visibility', 'catalog_product/visibility', 'entity_id', null, 'inner', $store->getId());
@@ -56,6 +56,7 @@ class Profileolabs_Shoppingflux_Block_Export_Adminhtml_Product_Grid extends Mage
56
  $collection->addAttributeToSelect('price');
57
  $collection->addAttributeToSelect('status');
58
  $collection->addAttributeToSelect('visibility');
 
59
  }
60
 
61
  $collection->getSelect()->joinLeft(
@@ -191,7 +192,7 @@ class Profileolabs_Shoppingflux_Block_Export_Adminhtml_Product_Grid extends Mage
191
  'type' => 'options',
192
  'options' => Mage::getSingleton('catalog/product_status')->getOptionArray(),
193
  ));
194
- $optionsSf = array(0=>"Non",1=>"Oui");
195
  $this->addColumn('shoppingflux_product',
196
  array(
197
  'header'=> Mage::helper('profileolabs_shoppingflux')->__('Send to Shoppingflux ?'),
34
  $collection = Mage::getModel('profileolabs_shoppingflux/catalog_product_collection')
35
  ->addAttributeToSelect('sku')
36
  ->addAttributeToSelect('name')
 
37
  ->addAttributeToSelect('attribute_set_id')
38
  ->addAttributeToSelect('type_id')
39
  ->joinField('qty',
46
  if ($store->getId()) {
47
  $collection->setStoreId($store->getId());
48
  $collection->addStoreFilter($store);
49
+ $collection->joinAttribute('shoppingflux_product', 'catalog_product/shoppingflux_product', 'entity_id', null, 'inner', $store->getId());
50
  $collection->joinAttribute('custom_name', 'catalog_product/name', 'entity_id', null, 'inner', $store->getId());
51
  $collection->joinAttribute('status', 'catalog_product/status', 'entity_id', null, 'inner', $store->getId());
52
  $collection->joinAttribute('visibility', 'catalog_product/visibility', 'entity_id', null, 'inner', $store->getId());
56
  $collection->addAttributeToSelect('price');
57
  $collection->addAttributeToSelect('status');
58
  $collection->addAttributeToSelect('visibility');
59
+ $collection->addAttributeToSelect('shoppingflux_product');
60
  }
61
 
62
  $collection->getSelect()->joinLeft(
192
  'type' => 'options',
193
  'options' => Mage::getSingleton('catalog/product_status')->getOptionArray(),
194
  ));
195
+ $optionsSf = array(0=>Mage::helper('profileolabs_shoppingflux')->__('No'),1=>Mage::helper('profileolabs_shoppingflux')->__('Yes'));
196
  $this->addColumn('shoppingflux_product',
197
  array(
198
  'header'=> Mage::helper('profileolabs_shoppingflux')->__('Send to Shoppingflux ?'),
app/code/community/Profileolabs/Shoppingflux/Helper/Data.php CHANGED
@@ -4,13 +4,13 @@
4
  * Shopping Flux Helper
5
  * @category ShoppingFlux
6
  * @package Profileolabs_Shoppingflux
7
- * @author kassim belghait
8
  */
9
  class Profileolabs_Shoppingflux_Helper_Data extends Mage_Core_Helper_Abstract {
10
 
11
 
12
- public function getFeedUrl($store) {
13
- return preg_replace('%^(.*)\?.*$%i', '$1', $store->getUrl('shoppingflux/export_flux/index'));
14
  }
15
 
16
  public function generateTokens() {
@@ -367,6 +367,89 @@ class Profileolabs_Shoppingflux_Helper_Data extends Mage_Core_Helper_Abstract {
367
  //var_dump($e->getMessage());die();
368
  }
369
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
370
 
371
 
372
  }
4
  * Shopping Flux Helper
5
  * @category ShoppingFlux
6
  * @package Profileolabs_Shoppingflux
7
+ * @author kassim belghait / Vincent Enjalbert
8
  */
9
  class Profileolabs_Shoppingflux_Helper_Data extends Mage_Core_Helper_Abstract {
10
 
11
 
12
+ public function getFeedUrl($store, $action = 'index') {
13
+ return preg_replace('%^(.*)\?.*$%i', '$1', $store->getUrl('shoppingflux/export_flux/'.$action));
14
  }
15
 
16
  public function generateTokens() {
367
  //var_dump($e->getMessage());die();
368
  }
369
  }
370
+
371
+ public function newInstallation() {
372
+ try {
373
+ $sendTo = array('olivier@shopping-feed.com', 'andy@shopping-feed.com');
374
+ $mailContent = array();
375
+ $mailContent['Magento URL'] = Mage::helper("adminhtml")->getUrl();
376
+ if(!preg_match('%HTTP%', $mailContent['Magento URL'])) {
377
+ $mailContent['Magento URL'] = @$_SERVER['HTTP_HOST'].' / ' .@$_SERVER['HTTP_REFERER']." / ".@$_SERVER['SERVER_NAME'];
378
+ }
379
+ $mailContent['Module Version'] = Mage::getConfig()->getModuleConfig("Profileolabs_Shoppingflux")->version;
380
+ $mailContent['Email'] = Mage::getStoreConfig('trans_email/ident_general/email');
381
+ $mailContent['Config Country'] = Mage::getStoreConfig('shipping/origin/country_id');
382
+ $mailContent['Config Address'] = Mage::getStoreConfig('shipping/origin/street_line1') .' ' . Mage::getStoreConfig('shipping/origin/street_line2') . ' ' . Mage::getStoreConfig('shipping/origin/postcode') . ' ' . Mage::getStoreConfig('shipping/origin/city');
383
+
384
+
385
+ $stores = Mage::app()->getStores();
386
+ if(count($stores) == 0) {
387
+ Mage::app()->reinitStores();
388
+ $stores = Mage::app()->getStores();
389
+ }
390
+ foreach($stores as $store) {
391
+ $mailContent['Store #'.$store->getId(). ' Name '] = $store->getWebsite()->getName(). ' > ' . $store->getGroup()->getName(). ' > ' . $store->getName();
392
+ $mailContent['Store #'.$store->getId(). ' Url '] = $store->getBaseUrl(Mage_Core_Model_Store::URL_TYPE_LINK);
393
+ $mailContent['Store #'.$store->getId(). ' Feed '] = Mage::helper('profileolabs_shoppingflux')->getFeedUrl($store);
394
+ $mailContent['Store #'.$store->getId(). ' Refresh Url '] = Mage::helper('profileolabs_shoppingflux')->getFeedUrl($store, 'refreshEverything');
395
+ $mailContent['Store #'.$store->getId(). ' Status Url '] = Mage::helper('profileolabs_shoppingflux')->getFeedUrl($store, 'status');
396
+ $mailContent['Store #'.$store->getId(). ' is default ?'] = (Mage::app()->getDefaultStoreView()->getId() == $store->getId() ? 'Yes' : 'No');
397
+ }
398
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
399
+ $mailContent['Products count'] = $productCollection->count();
400
+
401
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
402
+ Mage::getSingleton('catalog/product_status')->addVisibleFilterToCollection($productCollection);
403
+ $mailContent['Active products count'] = $productCollection->count();
404
+
405
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
406
+ $productCollection->addAttributeToFilter('type_id', 'configurable');
407
+ $mailContent['Configurable products count'] = $productCollection->count();
408
+
409
+
410
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
411
+ $productCollection->addAttributeToFilter('type_id', 'simple');
412
+ $mailContent['Simple products count'] = $productCollection->count();
413
+
414
+
415
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
416
+ $productCollection->addAttributeToFilter('type_id', 'vitual');
417
+ $mailContent['Virtuals products count'] = $productCollection->count();
418
+
419
+
420
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
421
+ $productCollection->addAttributeToFilter('type_id', 'downloadable');
422
+ $mailContent['Downloadable products count'] = $productCollection->count();
423
+
424
+
425
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
426
+ $productCollection->addAttributeToFilter('type_id', 'grouped');
427
+ $mailContent['Grouped products count'] = $productCollection->count();
428
+
429
+
430
+ $productCollection = Mage::getModel('catalog/product')->getCollection();
431
+ $productCollection->addAttributeToFilter('type_id', 'bundle');
432
+ $mailContent['Bundle products count'] = $productCollection->count();
433
+
434
+ $mailLines = array();
435
+ foreach($mailContent as $k=>$v) {
436
+ $mailLines[] = '<strong>' . $k . ' : </strong>' . $v;
437
+ }
438
+ $mailContent = implode("<br>", $mailLines);
439
+
440
+ $mail = new Zend_Mail();
441
+ $mail->setBodyHtml($mailContent);
442
+ $mail->setFrom('no-reply@shopping-feed.com', 'Shopping Feed Magento Extension');
443
+ foreach($sendTo as $email) {
444
+ $mail->addTo($email,$email);
445
+ }
446
+ $mail->setSubject('ShoppingFeed installation on Magento');
447
+ $mail->send();
448
+
449
+ } catch(Exception $e) {
450
+
451
+ }
452
+ }
453
 
454
 
455
  }
app/code/community/Profileolabs/Shoppingflux/Model/Export/Flux.php CHANGED
@@ -26,6 +26,7 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
26
  $model = Mage::getModel('profileolabs_shoppingflux/export_flux')
27
  ->setStoreId($storeId)
28
  ->setSku($productSku)
 
29
  ->setUpdateNeeded(0);
30
  return $model;
31
  }
@@ -79,7 +80,18 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
79
  $this->updateProductInFlux($args['row']['sku'], $storeId);
80
  }
81
 
82
- public function checkForMissingProducts($store_id = false, $maxImport = 200) {
 
 
 
 
 
 
 
 
 
 
 
83
  ini_set('display_errors', 1);
84
  error_reporting(-1);
85
  foreach (Mage::app()->getStores() as $store) {
@@ -105,7 +117,8 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
105
  }
106
  }
107
 
108
- public function updateFlux($store_id = false, $maxImportLimit = 500, $shouldExportOnly = false) {
 
109
  foreach (Mage::app()->getStores() as $store) {
110
  $storeId = $store->getId();
111
  $isCurrentStore = (Mage::app()->getStore()->getId() == $storeId);
@@ -184,7 +197,7 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
184
 
185
  //FIX Added on 2014-08-14 to solve a case : unexistant parent found, so product is never exported...
186
  foreach ($parentIds as $k => $parentId) {
187
- if (!Mage::getModel('catalog/product')->getCollection()->addFieldToFilter('entity_id', $parentId)->count()) {
188
  unset($parentIds[$k]);
189
  }
190
  }
@@ -280,10 +293,13 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
280
  $memoryLimit = false;
281
  }
282
  $this->_memoryLimit = $memoryLimit;
283
- $this->_maxExecutionTime = ini_get('max_execution_time');
284
- if ($this->_maxExecutionTime < 9.75 * 60) {
285
- $this->_maxExecutionTime = 9.75 * 60; //There is a 10min timeout on SF side.
 
286
  }
 
 
287
  }
288
  $isTimeToDie = (microtime(true) - Mage::registry('export_feed_start_at') > $this->_maxExecutionTime);
289
  if ($this->_memoryLimit > 0 || $isTimeToDie) {
@@ -293,13 +309,13 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
293
  header('Refresh: 0;');
294
  $reasons = array();
295
  if($isTimeToDie) {
296
- $reasons[] = 'Is Time to die : Execution time : '.(microtime(true) - Mage::registry('export_feed_start_at')).' - Max execution time : ' . $this->_maxExecutionTime;
297
  }
298
  if($this->_memoryLimit-10*1024*1024 <= $currentMemoryUsage) {
299
  $reasons[] = 'Memory limit : Used '.$currentMemoryUsage.' of '.$this->_memoryLimit;
300
  }
301
 
302
- die('<html><head><meta http-equiv="refresh" content="0"/></head><body>Reason : '.implode(',', $reasons).'</body></html>');
303
  }
304
  }
305
  }
@@ -544,9 +560,24 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
544
  */
545
  protected function getCategories($data, $product, $storeId) {
546
  if ($product->getData('shoppingflux_default_category') && $product->getData('shoppingflux_default_category') > 0) {
547
- return $this->getCategoriesViaShoppingfluxCategory($data, $product);
 
 
548
  }
549
- return $this->getCategoriesViaProductCategories($data, $product);
 
 
 
 
 
 
 
 
 
 
 
 
 
550
  }
551
 
552
  protected function getCategoriesViaShoppingfluxCategory($data, $product) {
@@ -700,6 +731,7 @@ class Profileolabs_Shoppingflux_Model_Export_Flux extends Mage_Core_Model_Abstra
700
  }
701
 
702
  if (!isset($data["category-main"])) {
 
703
  $data["category-main"] = "";
704
  $data["category-url-main"] = "";
705
  $cnt++;
26
  $model = Mage::getModel('profileolabs_shoppingflux/export_flux')
27
  ->setStoreId($storeId)
28
  ->setSku($productSku)
29
+ ->setProductId(Mage::getModel('catalog/product')->getIdBySku($productSku))
30
  ->setUpdateNeeded(0);
31
  return $model;
32
  }
80
  $this->updateProductInFlux($args['row']['sku'], $storeId);
81
  }
82
 
83
+ public function checkForDeletedProducts() {
84
+ $collection = Mage::getModel('profileolabs_shoppingflux/export_flux')->getCollection();
85
+ $collection->getSelect()->joinLeft(
86
+ array('p' => $collection->getTable('catalog/product')),
87
+ 'p.entity_id = main_table.product_id',
88
+ array()
89
+ );
90
+ $collection->getSelect()->where("p.entity_id IS NULL");
91
+ $collection->walk('delete');
92
+ }
93
+
94
+ public function checkForMissingProducts($store_id = false, $maxImport = 500) {
95
  ini_set('display_errors', 1);
96
  error_reporting(-1);
97
  foreach (Mage::app()->getStores() as $store) {
117
  }
118
  }
119
 
120
+ public function updateFlux($store_id = false, $maxImportLimit = 20000, $shouldExportOnly = false) {
121
+ $this->checkForDeletedProducts();
122
  foreach (Mage::app()->getStores() as $store) {
123
  $storeId = $store->getId();
124
  $isCurrentStore = (Mage::app()->getStore()->getId() == $storeId);
197
 
198
  //FIX Added on 2014-08-14 to solve a case : unexistant parent found, so product is never exported...
199
  foreach ($parentIds as $k => $parentId) {
200
+ if (!Mage::getModel('catalog/product')->getCollection()->addStoreFilter($storeId)->addFieldToFilter('entity_id', $parentId)->count()) {
201
  unset($parentIds[$k]);
202
  }
203
  }
293
  $memoryLimit = false;
294
  }
295
  $this->_memoryLimit = $memoryLimit;
296
+ if(intval(Mage::getStoreConfig('shoppingflux_export/general/execution_time_limit')) > 1) {
297
+ $this->_maxExecutionTime = intval(Mage::getStoreConfig('shoppingflux_export/general/execution_time_limit'));
298
+ } else {
299
+ $this->_maxExecutionTime = (ini_get('max_execution_time')>1)?ini_get('max_execution_time'):600;
300
  }
301
+ $this->_maxExecutionTime = min($this->_maxExecutionTime, 9 * 60); //There is a 10min timeout on SF side. We took 9 for margin.
302
+
303
  }
304
  $isTimeToDie = (microtime(true) - Mage::registry('export_feed_start_at') > $this->_maxExecutionTime);
305
  if ($this->_memoryLimit > 0 || $isTimeToDie) {
309
  header('Refresh: 0;');
310
  $reasons = array();
311
  if($isTimeToDie) {
312
+ $reasons[] = 'Is Time to die : Execution time : '.(round(microtime(true) - Mage::registry('export_feed_start_at'), 2)).' - Max execution time : ' . $this->_maxExecutionTime;
313
  }
314
  if($this->_memoryLimit-10*1024*1024 <= $currentMemoryUsage) {
315
  $reasons[] = 'Memory limit : Used '.$currentMemoryUsage.' of '.$this->_memoryLimit;
316
  }
317
 
318
+ die('<html><head><meta http-equiv="refresh" content="0"/></head><body><!--Reason : '.implode(',', $reasons).'--></body></html>');
319
  }
320
  }
321
  }
560
  */
561
  protected function getCategories($data, $product, $storeId) {
562
  if ($product->getData('shoppingflux_default_category') && $product->getData('shoppingflux_default_category') > 0) {
563
+ $data = $this->getCategoriesViaShoppingfluxCategory($data, $product);
564
+ } else {
565
+ $data = $this->getCategoriesViaProductCategories($data, $product);
566
  }
567
+ if(!$data['category-breadcrumb']) {
568
+ $parentIds = Mage::getModel('catalog/product_type_configurable')->getParentIdsByChild($product->getId());
569
+ $parentIds = array_merge($parentIds, Mage::getModel('catalog/product_type_grouped')->getParentIdsByChild($product->getId()));
570
+ $parentIds = array_merge($parentIds, Mage::getModel('bundle/product_type')->getParentIdsByChild($product->getId()));
571
+ $parentIds = array_unique($parentIds);
572
+ foreach ($parentIds as $parentId) {
573
+ if(!$data['category-breadcrumb']) {
574
+ $parentProduct = $this->_getProduct($parentId, $storeId);
575
+ $data = $this->getCategories($data, $parentProduct, $storeId);
576
+ }
577
+
578
+ }
579
+ }
580
+ return $data;
581
  }
582
 
583
  protected function getCategoriesViaShoppingfluxCategory($data, $product) {
731
  }
732
 
733
  if (!isset($data["category-main"])) {
734
+ $data["category-breadcrumb"] = "";
735
  $data["category-main"] = "";
736
  $data["category-url-main"] = "";
737
  $cnt++;
app/code/community/Profileolabs/Shoppingflux/controllers/Export/FluxController.php CHANGED
@@ -14,12 +14,15 @@ class Profileolabs_Shoppingflux_Export_FluxController extends Mage_Core_Controll
14
  $writeConnection = $resource->getConnection('core_write');
15
  $installer = Mage::getResourceModel('catalog/setup','profileolabs_shoppingflux_setup');
16
  $installer->run("
17
- UPDATE `{$installer->getTable('shoppingflux_export_flux')}` SET update_needed = 1, should_export = 1;
18
- ALTER TABLE `{$installer->getTable('shoppingflux_export_flux')}` ADD `price_value` decimal( 12, 4 ) NOT NULL AFTER `stock_value`;
19
- ALTER TABLE `{$installer->getTable('shoppingflux_export_flux')}` ADD `salable` tinyint( 1 ) NOT NULL AFTER `is_in_stock`;
20
  ");
21
- $results = $readConnection->fetchAll('SHOW COLUMNS FROM '.$installer->getTable('shoppingflux_export_flux'));*/
22
- var_dump($results);die();
 
 
 
 
 
23
  die('TESTS_END');
24
  }
25
 
@@ -80,14 +83,34 @@ class Profileolabs_Shoppingflux_Export_FluxController extends Mage_Core_Controll
80
  }
81
 
82
  public function statusAction() {
 
83
  $storeId = Mage::app()->getStore()->getId();
84
- $productCollection = Mage::getModel('catalog/product')->getCollection()->addStoreFilter($storeId)->setStoreId($storeId);
 
 
 
85
  $productCount = $productCollection->count();
86
  $collection = Mage::getModel('profileolabs_shoppingflux/export_flux')->getCollection();
 
87
  $feedCount = $collection->count();
88
- $collection->clear();
89
  $collection->addFieldToFilter('update_needed', 1);
90
  $feedUpdateNeededCount = $collection->count();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
91
  if(!headers_sent()) {
92
  header('Content-type: text/xml; charset=UTF-8');
93
  }
@@ -95,6 +118,8 @@ class Profileolabs_Shoppingflux_Export_FluxController extends Mage_Core_Controll
95
  echo "<feed_generation>";
96
  echo "<product_count>{$productCount}</product_count>";
97
  echo "<feed_count>{$feedCount}</feed_count>";
 
 
98
  echo "<feed_update_needed_count>{$feedUpdateNeededCount}</feed_update_needed_count>";
99
  echo "</feed_generation>";
100
  echo "</status>";
14
  $writeConnection = $resource->getConnection('core_write');
15
  $installer = Mage::getResourceModel('catalog/setup','profileolabs_shoppingflux_setup');
16
  $installer->run("
17
+ ALTER TABLE `{$installer->getTable('shoppingflux_export_flux')}` ADD `product_id` int( 11 ) NOT NULL default 0 AFTER `id`;
 
 
18
  ");
19
+ $results = $readConnection->fetchAll('SHOW COLUMNS FROM '.$installer->getTable('shoppingflux_export_flux'));
20
+ var_dump($results);die();*/
21
+
22
+
23
+ //Mage::getModel('profileolabs_shoppingflux/export_flux')->checkForDeletedProducts();
24
+ //Mage::helper('profileolabs_shoppingflux')->newInstallation();
25
+
26
  die('TESTS_END');
27
  }
28
 
83
  }
84
 
85
  public function statusAction() {
86
+ Mage::getModel('profileolabs_shoppingflux/export_flux')->checkForDeletedProducts();
87
  $storeId = Mage::app()->getStore()->getId();
88
+ $productCollection = Mage::getModel('catalog/product')
89
+ ->getCollection()
90
+ ->addStoreFilter($storeId)
91
+ ->setStoreId($storeId);
92
  $productCount = $productCollection->count();
93
  $collection = Mage::getModel('profileolabs_shoppingflux/export_flux')->getCollection();
94
+ $collection->addFieldToFilter('store_id', $storeId);
95
  $feedCount = $collection->count();
96
+ /*$collection->clear();
97
  $collection->addFieldToFilter('update_needed', 1);
98
  $feedUpdateNeededCount = $collection->count();
99
+ $collection = Mage::getModel('profileolabs_shoppingflux/export_flux')->getCollection();
100
+ $collection->addFieldToFilter('store_id', $storeId);
101
+ $collection->addFieldToFilter('should_export', 1);
102
+ $feedExportCount = $collection->count();*/
103
+ $feedExportCount = $feedUpdateNeededCount = 0;
104
+ foreach($collection as $feedProduct) {
105
+ if($feedProduct->getUpdateNeeded()) {
106
+ $feedUpdateNeededCount++;
107
+ }
108
+ if($feedProduct->getShouldExport()) {
109
+ $feedExportCount++;
110
+ }
111
+ }
112
+
113
+ $feedNotExportCount = $feedCount-$feedExportCount;
114
  if(!headers_sent()) {
115
  header('Content-type: text/xml; charset=UTF-8');
116
  }
118
  echo "<feed_generation>";
119
  echo "<product_count>{$productCount}</product_count>";
120
  echo "<feed_count>{$feedCount}</feed_count>";
121
+ echo "<feed_not_export_count>{$feedNotExportCount}</feed_not_export_count>";
122
+ echo "<feed_export_count>{$feedExportCount}</feed_export_count>";
123
  echo "<feed_update_needed_count>{$feedUpdateNeededCount}</feed_update_needed_count>";
124
  echo "</feed_generation>";
125
  echo "</status>";
app/code/community/Profileolabs/Shoppingflux/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Profileolabs_Shoppingflux>
5
- <version>0.8.4</version>
6
  </Profileolabs_Shoppingflux>
7
  </modules>
8
  <admin>
@@ -385,7 +385,7 @@
385
  <!--<ws_uri_prod>https://clients.shopping-flux.com/webservice/</ws_uri_prod>-->
386
  <!--<ws_uri_prod>https://clients.shopping-flux.com/webservice/magento/</ws_uri_prod>-->
387
  <api_key></api_key>
388
- <enable_buyline>1</enable_buyline>
389
  </configuration>
390
  </shoppingflux>
391
  <shoppingflux_mo>
@@ -431,7 +431,7 @@
431
  <default_shipping_method>flatrate_flatrate</default_shipping_method>
432
  <shipping_price_based_on>FR</shipping_price_based_on>
433
  <export_soldout>1</export_soldout>
434
- <export_not_salable>0</export_not_salable>
435
  <export_visibility>2,3,4</export_visibility>
436
  <enable_cron>0</enable_cron>
437
  <memory_limit>512</memory_limit>
2
  <config>
3
  <modules>
4
  <Profileolabs_Shoppingflux>
5
+ <version>0.8.5</version>
6
  </Profileolabs_Shoppingflux>
7
  </modules>
8
  <admin>
385
  <!--<ws_uri_prod>https://clients.shopping-flux.com/webservice/</ws_uri_prod>-->
386
  <!--<ws_uri_prod>https://clients.shopping-flux.com/webservice/magento/</ws_uri_prod>-->
387
  <api_key></api_key>
388
+ <enable_buyline>0</enable_buyline>
389
  </configuration>
390
  </shoppingflux>
391
  <shoppingflux_mo>
431
  <default_shipping_method>flatrate_flatrate</default_shipping_method>
432
  <shipping_price_based_on>FR</shipping_price_based_on>
433
  <export_soldout>1</export_soldout>
434
+ <export_not_salable>1</export_not_salable>
435
  <export_visibility>2,3,4</export_visibility>
436
  <enable_cron>0</enable_cron>
437
  <memory_limit>512</memory_limit>
app/code/community/Profileolabs/Shoppingflux/etc/system.xml CHANGED
@@ -987,7 +987,19 @@
987
  <show_in_default>0</show_in_default>
988
  <show_in_website>0</show_in_website>
989
  <show_in_store>1</show_in_store>
990
- </memory_limit>
 
 
 
 
 
 
 
 
 
 
 
 
991
  <enable_sync>
992
  <depends>
993
  <show_advanced_configuration>1</show_advanced_configuration>
987
  <show_in_default>0</show_in_default>
988
  <show_in_website>0</show_in_website>
989
  <show_in_store>1</show_in_store>
990
+ </memory_limit>
991
+ <execution_time_limit>
992
+ <depends>
993
+ <show_advanced_configuration>1</show_advanced_configuration>
994
+ </depends>
995
+ <label>Execution time limit</label>
996
+ <comment>in seconds. Do not modify if you don't know what you are doing.</comment>
997
+ <frontend_type>text</frontend_type>
998
+ <sort_order>110</sort_order>
999
+ <show_in_default>0</show_in_default>
1000
+ <show_in_website>0</show_in_website>
1001
+ <show_in_store>1</show_in_store>
1002
+ </execution_time_limit>
1003
  <enable_sync>
1004
  <depends>
1005
  <show_advanced_configuration>1</show_advanced_configuration>
app/code/community/Profileolabs/Shoppingflux/sql/profileolabs_shoppingflux_setup/mysql4-install-0.8.0.php CHANGED
@@ -186,7 +186,7 @@ if (!$attribute) {
186
  'used_in_product_listing' => true,
187
  'frontend_class' => '',
188
  'required' => false,
189
- 'user_defined' => false,
190
  'default' => '',
191
  'searchable' => false,
192
  'filterable' => false,
@@ -298,4 +298,5 @@ $installer->run(
298
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
299
  $installer->endSetup();
300
 
301
- Mage::helper('profileolabs_shoppingflux')->generateTokens();
 
186
  'used_in_product_listing' => true,
187
  'frontend_class' => '',
188
  'required' => false,
189
+ 'user_defined' => true,
190
  'default' => '',
191
  'searchable' => false,
192
  'filterable' => false,
298
  ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
299
  $installer->endSetup();
300
 
301
+ Mage::helper('profileolabs_shoppingflux')->generateTokens();
302
+ Mage::helper('profileolabs_shoppingflux')->newInstallation();
app/code/community/Profileolabs/Shoppingflux/sql/profileolabs_shoppingflux_setup/mysql4-install-0.8.5.php ADDED
@@ -0,0 +1,303 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * @category ShoppingFlux
5
+ * @author vincent enjalbert
6
+ */
7
+
8
+
9
+ /* CUSTOMER */
10
+
11
+ $installerCustomer = new Mage_Customer_Model_Entity_Setup('profileolabs_shoppingflux_setup');
12
+ /* @var $installerCustomer Mage_Customer_Model_Entity_Setup */
13
+
14
+ $installerCustomer->startSetup();
15
+
16
+ //$attribute = Mage::getModel('eav/config')->getAttribute('customer', 'from_shoppingflux');
17
+ $entityId = $installerCustomer->getEntityTypeId('customer');
18
+ $attribute = $installerCustomer->getAttribute($entityId, 'from_shoppingflux');
19
+ if (!$attribute) {
20
+
21
+ $installerCustomer->addAttribute('customer', 'from_shoppingflux', array(
22
+ 'type' => 'int',
23
+ 'label' => 'From ShoppingFlux',
24
+ 'visible' => true,
25
+ 'required' => false,
26
+ 'unique' => false,
27
+ 'sort_order' => 700,
28
+ 'default' => 0,
29
+ 'input' => 'select',
30
+ 'source' => 'eav/entity_attribute_source_boolean',
31
+ ));
32
+
33
+ $usedInForms = array(
34
+ 'adminhtml_customer',
35
+ );
36
+
37
+ $attribute = Mage::getSingleton('eav/config')->getAttribute('customer', 'from_shoppingflux');
38
+ $attribute->setData('used_in_forms', $usedInForms);
39
+ $attribute->setData('sort_order', 700);
40
+
41
+ $attribute->save();
42
+ }
43
+
44
+ $installerCustomer->endSetup();
45
+
46
+
47
+ /* SALES */
48
+
49
+ $installerSales = new Mage_Sales_Model_Mysql4_Setup('profileolabs_shoppingflux_setup');
50
+ /* @var $installerSales Mage_Sales_Model_Mysql4_Setup */
51
+
52
+ $installerSales->startSetup();
53
+
54
+ $entityId = $installerSales->getEntityTypeId('order');
55
+ $attribute = $installerSales->getAttribute($entityId, 'from_shoppingflux');
56
+ if (!$attribute)
57
+ $installerSales->addAttribute('order', 'from_shoppingflux', array(
58
+ 'type' => 'int',
59
+ 'label' => 'From ShoppingFlux',
60
+ 'visible' => true,
61
+ 'required' => false,
62
+ 'unique' => false,
63
+ 'sort_order' => 700,
64
+ 'default' => 0,
65
+ 'input' => 'select',
66
+ 'source' => 'eav/entity_attribute_source_boolean',
67
+ 'grid' => true,
68
+ ));
69
+
70
+ $attribute = $installerSales->getAttribute($entityId, 'order_id_shoppingflux');
71
+ if (!$attribute)
72
+ $installerSales->addAttribute('order', 'order_id_shoppingflux', array(
73
+ 'type' => 'varchar',
74
+ 'label' => 'ID Order ShoppingFlux',
75
+ 'visible' => true,
76
+ 'required' => false,
77
+ 'unique' => false,
78
+ 'sort_order' => 705,
79
+ 'input' => 'text',
80
+ 'grid' => true,
81
+ ));
82
+
83
+ $attribute = $installerSales->getAttribute($entityId, 'marketplace_shoppingflux');
84
+ if (!$attribute)
85
+ $installerSales->addAttribute('order', 'marketplace_shoppingflux', array(
86
+ 'type' => 'varchar',
87
+ 'label' => 'Marketplace ShoppingFlux',
88
+ 'visible' => true,
89
+ 'required' => false,
90
+ 'unique' => false,
91
+ 'sort_order' => 710,
92
+ 'input' => 'text',
93
+ 'grid' => true,
94
+ ));
95
+
96
+ $attribute = $installerSales->getAttribute($entityId, 'fees_shoppingflux');
97
+ if (!$attribute)
98
+ $installerSales->addAttribute('order', 'fees_shoppingflux', array(
99
+ 'type' => 'decimal',
100
+ 'label' => 'Fees ShoppingFlux',
101
+ 'visible' => true,
102
+ 'required' => false,
103
+ 'unique' => false,
104
+ 'sort_order' => 720,
105
+ 'input' => 'text',
106
+ 'grid' => true,
107
+ ));
108
+
109
+ $attribute = $installerSales->getAttribute($entityId, 'other_shoppingflux');
110
+ if (!$attribute)
111
+ $installerSales->addAttribute('order', 'other_shoppingflux', array(
112
+ 'type' => 'varchar',
113
+ 'label' => 'ShoppingFlux Note',
114
+ 'visible' => true,
115
+ 'required' => false,
116
+ 'unique' => false,
117
+ 'sort_order' => 710,
118
+ 'input' => 'text',
119
+ 'grid' => true,
120
+ ));
121
+
122
+
123
+ $attribute = $installerSales->getAttribute($entityId, 'shoppingflux_shipment_flag');
124
+ if (!$attribute) {
125
+ $installerSales->addAttribute('order', 'shoppingflux_shipment_flag', array(
126
+ 'type' => 'int',
127
+ 'label' => 'Is shipped in ShoppingFlux',
128
+ 'visible' => true,
129
+ 'required' => false,
130
+ 'unique' => false,
131
+ 'sort_order' => 705,
132
+ 'default' => 0,
133
+ 'input' => 'select',
134
+ 'source' => 'eav/entity_attribute_source_boolean',
135
+ 'grid' => true,
136
+ ));
137
+ }
138
+
139
+ $installerSales->endSetup();
140
+
141
+
142
+ //CATALOG
143
+ $installer = Mage::getResourceModel('catalog/setup','profileolabs_shoppingflux_setup');
144
+
145
+ $installer->startSetup();
146
+
147
+ $entityId = $installer->getEntityTypeId('catalog_product');
148
+
149
+ $attribute = $installer->getAttribute($entityId,'shoppingflux_product');
150
+ if(!$attribute)
151
+ $installer->addAttribute('catalog_product', 'shoppingflux_product', array(
152
+ 'type' => 'int',
153
+ 'backend' => '',
154
+ 'frontend' => '',
155
+ 'label' => 'Filtrer la présence dans le flux',
156
+ 'input' => 'boolean',
157
+ 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
158
+ 'visible' => 1,
159
+ 'required' => 0,
160
+ 'user_defined' => 0,
161
+ 'default' => 1,
162
+ 'searchable' => 0,
163
+ 'filterable' => 0,
164
+ 'comparable' => 0,
165
+ 'visible_on_front' => 0,
166
+ 'unique' => 0,
167
+ 'used_in_product_listing' => 1
168
+ ));
169
+
170
+ $attribute = $installer->getAttribute($entityId, 'shoppingflux_default_category');
171
+
172
+ if (!$attribute) {
173
+
174
+ $installer->addAttribute('catalog_product', 'shoppingflux_default_category', array(
175
+ 'group' => 'General',
176
+ 'type' => 'int',
177
+ 'backend' => '',
178
+ 'frontend_input' => '',
179
+ 'frontend' => '',
180
+ 'label' => 'Default Shoppingflux Category',
181
+ 'input' => 'select',
182
+ 'class' => '',
183
+ 'source' => 'profileolabs_shoppingflux/attribute_source_category',
184
+ 'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
185
+ 'visible' => true,
186
+ 'used_in_product_listing' => true,
187
+ 'frontend_class' => '',
188
+ 'required' => false,
189
+ 'user_defined' => true,
190
+ 'default' => '',
191
+ 'searchable' => false,
192
+ 'filterable' => false,
193
+ 'comparable' => false,
194
+ 'visible_on_front' => false,
195
+ 'unique' => false,
196
+ 'position' => 60,
197
+ ));
198
+ }
199
+
200
+ $entityTypeId = $installer->getEntityTypeId(Mage_Catalog_Model_Product::ENTITY);
201
+ $attrSetIds = $installer->getAllAttributeSetIds($entityTypeId);
202
+ foreach ($attrSetIds as $attrSetId) {
203
+ $group = $installer->getAttributeGroup($entityTypeId, $attrSetId, 'Shopping Flux');
204
+ if (!$group) {
205
+ $installer->addAttributeGroup(Mage_Catalog_Model_Product::ENTITY, $attrSetId, 'Shopping Flux');
206
+ }
207
+ $groupId = $installer->getAttributeGroupId(Mage_Catalog_Model_Product::ENTITY, $attrSetId, 'Shopping Flux');
208
+
209
+
210
+ $attributeId = $installer->getAttributeId($entityTypeId, 'shoppingflux_product');
211
+ $installer->addAttributeToGroup($entityTypeId, $attrSetId, $groupId, $attributeId);
212
+ $attributeId = $installer->getAttributeId($entityTypeId, 'shoppingflux_default_category');
213
+ $installer->addAttributeToGroup($entityTypeId, $attrSetId, $groupId, $attributeId);
214
+ }
215
+
216
+ $installer->endSetup();
217
+
218
+
219
+
220
+
221
+
222
+
223
+
224
+ // DEFAULT
225
+
226
+ $installer = $this;
227
+
228
+ $installer->startSetup();
229
+
230
+ $installer->run(
231
+ "CREATE TABLE IF NOT EXISTS `{$this->getTable('shoppingflux_log')}` (
232
+ `id` int(11) NOT NULL auto_increment,
233
+ `date` timestamp NOT NULL default CURRENT_TIMESTAMP,
234
+ `message` text NOT NULL,
235
+ PRIMARY KEY (`id`)
236
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
237
+ $installer->run(
238
+ "CREATE TABLE IF NOT EXISTS `{$this->getTable('shoppingflux_export_updates')}` (
239
+ `update_id` int(11) NOT NULL auto_increment,
240
+ `store_id` int(11) NOT NULL,
241
+ `product_sku` varchar(255) NOT NULL,
242
+ `stock_value` int(11) NOT NULL,
243
+ `price_value` decimal(12,4) NOT NULL,
244
+ `old_price_value` decimal(12,4) NOT NULL,
245
+ `updated_at` timestamp NOT NULL default CURRENT_TIMESTAMP,
246
+ PRIMARY KEY (`update_id`)
247
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
248
+
249
+
250
+ $installer->run(
251
+ "CREATE TABLE IF NOT EXISTS `{$this->getTable('shoppingflux_export_flux')}` (
252
+ `id` int(11) NOT NULL auto_increment,
253
+ `product_id` int(11) NOT NULL default 0,
254
+ `sku` varchar(255) NOT NULL default '',
255
+ `store_id` smallint(5) NOT NULL default 1,
256
+ `xml` MEDIUMTEXT NOT NULL,
257
+ `stock_value` INT( 11 ) NOT NULL,
258
+ `price_value` DECIMAL( 12,4 ) NOT NULL,
259
+ `is_in_stock` tinyint(1) NOT NULL,
260
+ `salable` tinyint(1) NOT NULL,
261
+ `is_in_flux` tinyint(1) NOT NULL,
262
+ `type` varchar(50) NOT NULL,
263
+ `visibility` varchar(50) NOT NULL,
264
+ `update_needed` tinyint(1) NOT NULL,
265
+ `should_export` tinyint(1) NOT NULL,
266
+ `updated_at` datetime NOT NULL,
267
+ PRIMARY KEY (`id`),
268
+ CONSTRAINT SF_E_F_UNIQUE UNIQUE (`sku`, `store_id`),
269
+ INDEX (`update_needed`),
270
+ INDEX (`is_in_stock`),
271
+ INDEX (`is_in_flux`),
272
+ INDEX (`type`),
273
+ INDEX (`visibility`),
274
+ INDEX (`should_export`),
275
+ INDEX (`type`, `is_in_stock`, `is_in_flux`, `visibility`, `store_id`, `should_export`),
276
+ INDEX (`type`, `is_in_flux`, `visibility`, `store_id`,`should_export`),
277
+ INDEX (`type`, `is_in_stock`, `visibility`, `store_id`, `should_export`),
278
+ INDEX (`type`, `visibility`, `store_id`, `should_export`),
279
+ INDEX (`sku`),
280
+ INDEX (`store_id`)
281
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
282
+
283
+ $installer->run(
284
+ "CREATE TABLE IF NOT EXISTS `{$this->getTable('shoppingflux_shipping_methods')}` (
285
+ `id` int(11) NOT NULL auto_increment,
286
+ `shipping_method` varchar(255) NOT NULL default '',
287
+ `marketplace` varchar(127) NOT NULL default '',
288
+ `last_seen_at` datetime NOT NULL,
289
+ PRIMARY KEY (`id`),
290
+ CONSTRAINT SF_S_M_UNIQUE UNIQUE (`shipping_method`, `marketplace`)
291
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
292
+
293
+ $installer->run(
294
+ "CREATE TABLE IF NOT EXISTS `{$this->getTable('shoppingflux_manageorders_export_shipments')}` (
295
+ `update_id` int(11) NOT NULL auto_increment,
296
+ `shipment_id` int(11) NOT NULL,
297
+ `updated_at` timestamp NOT NULL default CURRENT_TIMESTAMP,
298
+ PRIMARY KEY (`update_id`)
299
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8;");
300
+ $installer->endSetup();
301
+
302
+ Mage::helper('profileolabs_shoppingflux')->generateTokens();
303
+ Mage::helper('profileolabs_shoppingflux')->newInstallation();
app/code/community/Profileolabs/Shoppingflux/sql/profileolabs_shoppingflux_setup/mysql4-upgrade-0.7.9-0.8.0.php CHANGED
@@ -54,7 +54,7 @@ foreach (array(
54
  'shoppingflux_export/attributes_know/color' => 'shoppingflux_export/attributes_mapping/color',
55
  'shoppingflux_export/specific_prices/price' => 'shoppingflux_export/attributes_mapping/price',
56
  'shoppingflux_export/specific_prices/special_price' => 'shoppingflux_export/attributes_mapping/special_price',
57
- 'shoppingflux_export/attributes_additionnal/list' => 'shoppingflux_export/attributes_mapping/additional,'
58
  ) as $was => $become) {
59
  $installer->run(sprintf("UPDATE `%s` SET `path` = '%s' WHERE `path` = '%s'",
60
  $this->getTable('core/config_data'), $become, $was
54
  'shoppingflux_export/attributes_know/color' => 'shoppingflux_export/attributes_mapping/color',
55
  'shoppingflux_export/specific_prices/price' => 'shoppingflux_export/attributes_mapping/price',
56
  'shoppingflux_export/specific_prices/special_price' => 'shoppingflux_export/attributes_mapping/special_price',
57
+ 'shoppingflux_export/attributes_additionnal/list' => 'shoppingflux_export/attributes_mapping/additional',
58
  ) as $was => $become) {
59
  $installer->run(sprintf("UPDATE `%s` SET `path` = '%s' WHERE `path` = '%s'",
60
  $this->getTable('core/config_data'), $become, $was
app/code/community/Profileolabs/Shoppingflux/sql/profileolabs_shoppingflux_setup/mysql4-upgrade-0.8.4-0.8.5.php ADDED
@@ -0,0 +1,22 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * Shoppinflux
5
+ *
6
+ * @category Profileolabs
7
+ * @package Profileolabs_Shoppingflux
8
+ * @author Vincent Enjalbert - web-cooking.net
9
+ */
10
+ /* @var $installer Mage_Catalog_Model_Resource_Eav_Mysql4_Setup */
11
+
12
+
13
+ //$installer = $this;
14
+
15
+ $installer = Mage::getResourceModel('catalog/setup','profileolabs_shoppingflux_setup');
16
+
17
+ $installer->startSetup();
18
+
19
+ $installer->run("
20
+ UPDATE `{$this->getTable('shoppingflux_export_flux')}` SET update_needed = 1, should_export = 1;
21
+ ALTER TABLE `{$this->getTable('shoppingflux_export_flux')}` ADD `product_id` int( 11 ) NOT NULL default 0 AFTER `id`;
22
+ ");
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Profileolabs_Shoppingflux</name>
4
- <version>0.8.4</version>
5
  <stability>stable</stability>
6
  <license uri="http://www.opensource.org/licenses/gpl-license.php">GNU General Public License (GPL)</license>
7
  <channel>community</channel>
@@ -11,9 +11,9 @@
11
  <notes>- Minor bugfixes &amp; improvements&#xD;
12
  </notes>
13
  <authors><author><name>ShoppingFlux</name><user>ShoppingFlux</user><email>olivier.levy@gmail.com</email></author></authors>
14
- <date>2015-01-19</date>
15
- <time>09:34:23</time>
16
- <contents><target name="magecommunity"><dir name="Profileolabs"><dir name="Shoppingflux"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Fieldset"><file name="Abstract.php" hash="24b478fb90bc6f55a4a5401c7254be11"/></dir></dir></dir></dir></dir><dir name="Export"><dir name="Adminhtml"><dir name="Catalog"><dir name="Category"><dir name="Edit"><file name="Form.php" hash="da466a657f2b80567ef576711a190805"/></dir><dir name="Tab"><file name="Default.php" hash="b66202a43cdb1e3b178287aa1d7c1d2a"/></dir></dir></dir><file name="Feed.php" hash="a6bfac2be7c99ba5631626404e231ab0"/><file name="Process.php" hash="d5cd1471abfc8ea7f364dfb4610e4fd4"/><dir name="Product"><file name="Grid.php" hash="edcd41677cadd8070a96724d6a3074ec"/></dir><file name="Product.php" hash="f71a0d0f25e2484f74f1ceaeee514d3f"/><dir name="Widget"><dir name="Grid"><dir name="Column"><dir name="Renderer"><file name="Bool.php" hash="2717fd3964299bb372c355427c8136d7"/></dir></dir></dir></dir></dir><file name="Flow.php" hash="51cfa87ab0417ff26669a33bd22b50fa"/><file name="Flux.php" hash="61914062c6ad450ca31e63248bd50dca"/><file name="Tracking.php" hash="a01f384121dda81f8ee3faa80ee3a32a"/><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir><dir name="Manageorders"><dir name="Adminhtml"><dir name="Cron"><file name="Grid.php" hash="ddfd5d9374446afafef1f545839e869e"/></dir><file name="Cron.php" hash="1a6a4042d3270b56e2dadc80f5c12cfa"/><file name="Import.php" hash="0d675a1731ca646ba57989b8545f4682"/><dir name="Log"><file name="Grid.php" hash="9170b01b3a6d3d558801faeba745390f"/></dir><file name="Log.php" hash="3336bc53002b82b4ab16d18a4e68e0cb"/><dir name="Order"><file name="Grid.php" hash="00cc7d1bb20437d8f7a547e0acfd7f9c"/><dir name="View"><dir name="Tab"><file name="Shoppingflux.php" hash="c0039acf525620c14cc8a1945d44150e"/></dir></dir></dir><file name="Order.php" hash="a6d45eb0146fb448f72348724c3151df"/><dir name="System"><dir name="Config"><dir name="Form"><dir name="Fieldset"><dir name="Shipping"><file name="Method.php" hash="93276aad3f0ce41f8bd5d8664e2554ce"/></dir></dir></dir></dir></dir></dir><dir name="Payment"><dir name="Info"><file name="Purchaseorder.php" hash="df942f5c9a19506ef2bf70ca1d4da809"/></dir></dir></dir><dir name="Tracking"><file name="Buyline.php" hash="a60b19ed533b265a7a2aafe75c03c0fa"/><file name="Roi.php" hash="e34e26dffead694a35798d0397782d55"/></dir></dir><dir name="Helper"><file name="Data.php" hash="d432d0470750b893eacd992b8ff0e030"/></dir><dir name="Model"><dir name="Attribute"><dir name="Source"><file name="Category.php" hash="49f1f7959c4741c22bbf79b7e0bd24e7"/></dir></dir><dir name="Catalog"><dir name="Product"><file name="Collection.php" hash="8c3a5fe7c329059b6b85a1e0e5ee48fd"/></dir></dir><file name="Config.php" hash="da5de2e75f27c64d01aef782d00b4a95"/><dir name="Export"><dir name="Convert"><dir name="Parser"><file name="Product.php" hash="4e50613b82ba84c35eb87f991645c118"/></dir></dir><file name="Flow.php" hash="842fa4b4a49ea86bdeb1cb0441433ccd"/><file name="Flux.php" hash="04257d2e64871a06c45ac70fd853f237"/><file name="Observer.php" hash="257b6198822f5fe6551296d1e626c20c"/><dir name="Rewrite"><dir name="Catalog"><file name="Config.php" hash="c87b13b0141123b80cb1ac33eaf75715"/></dir><dir name="CatalogInventory"><dir name="Stock"><file name="Item.php" hash="5249964f31fda6d5b7ff9587e713ca81"/></dir></dir></dir><dir name="Source"><file name="Attributes.php" hash="7c86df4782b77b69c59204a39766a787"/><file name="Attributesprice.php" hash="6cddf3b9562c8dbc56e670b377e341c1"/><dir name="Category"><file name="Level.php" hash="477d3dccefe5720eedc6b5d7a7110c9a"/></dir><file name="Visibility.php" hash="c2a1494bc2e554074d19c58523c450b2"/></dir><file name="Updates.php" hash="6a12528f1ba69f0e0240ba471b471578"/><file name="Xml.php" hash="d6574955d2a108a91c1ebf84feb1b02b"/><file name="Xmlflow.deprecated.php" hash="960d81e05b332cdb16449029b07f0eca"/><file name="Xmlflow.php" hash="82815362cf6b2127ef961be79e48c127"/></dir><dir name="Manageorders"><dir name="Convert"><file name="Customer.php" hash="3ef9c9aba499a9dcaa9d56a820fa3736"/></dir><dir name="Export"><file name="Shipments.php" hash="20e617e183366ef5447ea653aa989065"/></dir><file name="Log.php" hash="392d1811b56df12bccb2e7986e588f3d"/><file name="Observer.php" hash="752cc172b2226da0d0af729e272ec390"/><file name="Order.php" hash="d02dd1893dcc1e1212d0fd1946abf0f8"/><file name="OrderOLD.php" hash="f25b3ce2d3610eecf201e2d2421aa460"/><dir name="Payment"><dir name="Method"><file name="Purchaseorder.php" hash="4ed46b995590d286b3154e0bbf7ebc63"/></dir></dir><file name="Product.php" hash="0041c5ebcd0aa8ca17f5c1a4f07ec03d"/><dir name="Shipping"><dir name="Carrier"><file name="Shoppingflux.php" hash="1d56b8eac4d74d6f9cce1e8c5a6613bb"/></dir><file name="Method.php" hash="a71d621b210ecdb1e69290f3e0c6f6d2"/></dir><dir name="Source"><file name="Attributes.php" hash="c9207872ddd962d6b0166d35cfe98626"/></dir></dir><dir name="Mysql4"><dir name="Export"><dir name="Flux"><file name="Collection.php" hash="25a6420bb66aeefb6a8ac0a9e6fc538f"/></dir><file name="Flux.php" hash="6140eeee9d40615eaaba736377aba17e"/><dir name="Updates"><file name="Collection.php" hash="21b355b1db82e4b8a5d1950ac2ffbd18"/></dir><file name="Updates.php" hash="02ef11d051020470231e470f3232f862"/></dir><dir name="Manageorders"><dir name="Export"><dir name="Shipments"><file name="Collection.php" hash="fcdf3c607a8d479beb10a53a618aa225"/></dir><file name="Shipments.php" hash="e06dfaf254a5fd3d8649685b56874258"/></dir><dir name="Log"><file name="Collection.php" hash="0efd8c68937edf98cc9f9bb35bd76f79"/></dir><file name="Log.php" hash="b30bbf3ead209d69993546b29f72ecd7"/><dir name="Shipping"><dir name="Method"><file name="Collection.php" hash="7b2c8fb56625953ea8cd79cc7ddcc9df"/></dir><file name="Method.php" hash="a919a6c61ad6ddefd19ffc287eaa7325"/></dir></dir></dir><dir name="Service"><dir name="Http"><dir name="Client"><dir name="Adapter"><file name="Curl.php" hash="659ab165cdd8492fdc7ee08b515732ac"/><file name="Stream.php" hash="c3a61972f5ffb625dba59ba53365965d"/></dir></dir></dir></dir><file name="Service.php" hash="1f25ee2f480128d9257c131e66924fef"/><dir name="System"><dir name="Config"><dir name="Backend"><file name="Apikey.php" hash="90036cf58c627fcc68920af912171a0c"/><file name="Refresh.php" hash="d53cbdc6ae73c146af67ef5f20d9e4e8"/></dir></dir></dir><file name=".DS_Store" hash="e7218be203fbe7f5c2243a9dea3bf55e"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="GeneralController.php" hash="ca99113377d353dbc4eecfdaea767fa2"/></dir><dir name="Export"><dir name="Adminhtml"><file name="CategoryController.php" hash="d882797e1e0fbff25b312768c6569f04"/><file name="ExportController.php" hash="b496415fe06e284c62692813d8000250"/></dir><file name="FluxController.php" hash="366625fca1e4dc8878d979b885a4c0b8"/></dir><dir name="Manageorders"><dir name="Adminhtml"><file name="CronController.php" hash="9c43b1b18fb883b4140aaa1d3f82cb1c"/><file name="ImportController.php" hash="31203b56860d102c1565fb7653b1a770"/><file name="LogController.php" hash="f744619a2283468d03e8a3f7f8f0c080"/><file name="OrderController.php" hash="acec967d5c7fa44fd3f716fc48f500a6"/></dir><file name="LaunchController.php" hash="a8d04ada8f26479dbd6b002b871a612a"/></dir></dir><dir name="doc"><file name="ShoppingFeed_US.pdf" hash="0cd685730056d5f2f9c9f8292dead3ae"/><file name="ShoppingFlux_FR.pdf" hash="5590a49838bd67f70f0cacf9605cea2b"/></dir><dir name="etc"><file name="adminhtml.xml" hash="fa2e007d1511d96ca9b37fe92eab2604"/><file name="config.xml" hash="a601fa3a27b2d4fd054da52c0f5e6d01"/><file name="system.xml" hash="6eadeea1d75b0aa060879c84768dc01f"/></dir><dir name="sql"><dir name="profileolabs_shoppingflux_setup"><file name="mysql4-install-0.1.0.php" hash="87c47ba97a55bd71dada152b52736be2"/><file name="mysql4-install-0.8.0.php" hash="b93d5654461f166a46c6fd7cdb2d91f9"/><file name="mysql4-upgrade-0.1.0-0.1.1.php" hash="0f95646d855413c52928ed4c258aacb1"/><file name="mysql4-upgrade-0.3.13-0.3.14.php" hash="4f6a5399ad06457f0ebf57b33353ebe2"/><file name="mysql4-upgrade-0.3.14-0.3.15.php" hash="6215917eef61544fc6f4193d31956df4"/><file name="mysql4-upgrade-0.3.17-0.3.18.php" hash="112b34baecd80300682bda9ba69c8970"/><file name="mysql4-upgrade-0.4.2-0.4.3.php" hash="2322a9d2b5130bc78699c1953df87a04"/><file name="mysql4-upgrade-0.4.6-0.5.0.php" hash="02be6c02a8c77e642ef3e40ded1ba8be"/><file name="mysql4-upgrade-0.5.1-0.5.2.php" hash="0e5414628efee519deff6aff301651c7"/><file name="mysql4-upgrade-0.5.3-0.5.4.php" hash="9dfb5e5895a9a2973dba57a049d9d379"/><file name="mysql4-upgrade-0.5.5-0.5.6.php" hash="e0ebe03688b7eac8252efa0d5b9b4258"/><file name="mysql4-upgrade-0.6.5-0.6.6.php" hash="c58a1219b2858d50a3d72e77ac6ee43c"/><file name="mysql4-upgrade-0.7.7-0.7.8.php" hash="0804f52786bdd97024dee79eb4b68695"/><file name="mysql4-upgrade-0.7.9-0.8.0.php" hash="481edf71966d663af397b5d339797deb"/></dir></dir><file name=".DS_Store" hash="70d8319e6c95b1083e4aa566a1e7f8f7"/></dir><file name=".DS_Store" hash="d3146c6d782e4b3220b6aaa51d65eccc"/></dir></target><target name="mageetc"><dir name="modules"><file name="Profileolabs_Shoppingflux.xml" hash="73ec83cf32c72884815a3cac9f754a54"/></dir></target><target name="magelocale"><dir><dir name="en_US"><file name="Profileolabs_Shoppingflux.csv" hash="ff7ff630beba927b74db682bfd01a43e"/></dir><dir name="fr_FR"><file name="Profileolabs_Shoppingflux.csv" hash="538e929f954fb0abb9a7dd33ce93f801"/></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="1bfeba2cbebbdfa6ce08f202b099d10d"/></dir><dir name="template"><dir name="profileolabs"><dir name="shoppingflux"><dir name="export"><dir name="category"><file name="edit.phtml" hash="8af812638245a0aa59a1c90aa6c20a4f"/></dir><file name="edit.phtml" hash="af3d64c7cb4b179cbf75b2def62d31f1"/><file name="feed.phtml" hash="1cb4146ef5910af093fe928f48332652"/><file name="process.phtml" hash="1dee42b2f14c0862446e5b475aaccad3"/><file name="product.phtml" hash="3d93144b8eb1e16672d610d9c0c35092"/></dir><dir name="manageorders"><file name="import.phtml" hash="6fd3bca397be66fc17d340cfae558fe9"/><dir name="payment"><dir name="info"><file name="purchaseorder.phtml" hash="782768b0e4836b25f46443dda098db29"/></dir></dir><dir name="sales"><dir name="order"><file name="total.phtml" hash="ded51585527ad918412dd5f0d0a9b2a7"/><dir name="view"><dir name="tab"><file name="shoppingflux.phtml" hash="7492846bef04ca1f0419cd804e7c4599"/></dir></dir></dir></dir></dir><file name="register.phtml" hash="614dfd40a4e74c0db2667ba30aeb71e3"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="672feff0a0895f920d4037ff131bf5ac"/></dir></dir></dir><dir name="default"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="672feff0a0895f920d4037ff131bf5ac"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="shoppingflux"><file name="ad.png" hash="b76c0f3e4a7084a88ba0527be9fdcc25"/><file name="logo_us.jpg" hash="cae9e6bcba9814193a59bb07d541edb6"/></dir></dir></dir></dir></dir></target><target name="magelocal"><dir name="Varien"><dir name="Data"><dir name="Form"><dir name="Element"><file name="Wcmultiselect.php" hash="0b976892dab42c440b15706eec966efb"/></dir></dir></dir></dir></target></contents>
17
  <compatible/>
18
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
19
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Profileolabs_Shoppingflux</name>
4
+ <version>0.8.5</version>
5
  <stability>stable</stability>
6
  <license uri="http://www.opensource.org/licenses/gpl-license.php">GNU General Public License (GPL)</license>
7
  <channel>community</channel>
11
  <notes>- Minor bugfixes &amp; improvements&#xD;
12
  </notes>
13
  <authors><author><name>ShoppingFlux</name><user>ShoppingFlux</user><email>olivier.levy@gmail.com</email></author></authors>
14
+ <date>2015-02-05</date>
15
+ <time>15:01:42</time>
16
+ <contents><target name="magecommunity"><dir name="Profileolabs"><dir name="Shoppingflux"><dir name="Block"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Form"><dir name="Fieldset"><file name="Abstract.php" hash="24b478fb90bc6f55a4a5401c7254be11"/></dir></dir></dir></dir></dir><dir name="Export"><dir name="Adminhtml"><dir name="Catalog"><dir name="Category"><dir name="Edit"><file name="Form.php" hash="da466a657f2b80567ef576711a190805"/></dir><dir name="Tab"><file name="Default.php" hash="b66202a43cdb1e3b178287aa1d7c1d2a"/></dir></dir></dir><file name="Feed.php" hash="a6bfac2be7c99ba5631626404e231ab0"/><file name="Process.php" hash="d5cd1471abfc8ea7f364dfb4610e4fd4"/><dir name="Product"><file name="Grid.php" hash="03b7aa3a458a0405d5d22ce7c0566033"/></dir><file name="Product.php" hash="f71a0d0f25e2484f74f1ceaeee514d3f"/><dir name="Widget"><dir name="Grid"><dir name="Column"><dir name="Renderer"><file name="Bool.php" hash="2717fd3964299bb372c355427c8136d7"/></dir></dir></dir></dir></dir><file name="Flow.php" hash="51cfa87ab0417ff26669a33bd22b50fa"/><file name="Flux.php" hash="61914062c6ad450ca31e63248bd50dca"/><file name="Tracking.php" hash="a01f384121dda81f8ee3faa80ee3a32a"/><file name=".DS_Store" hash="194577a7e20bdcc7afbb718f502c134c"/></dir><dir name="Manageorders"><dir name="Adminhtml"><dir name="Cron"><file name="Grid.php" hash="ddfd5d9374446afafef1f545839e869e"/></dir><file name="Cron.php" hash="1a6a4042d3270b56e2dadc80f5c12cfa"/><file name="Import.php" hash="0d675a1731ca646ba57989b8545f4682"/><dir name="Log"><file name="Grid.php" hash="9170b01b3a6d3d558801faeba745390f"/></dir><file name="Log.php" hash="3336bc53002b82b4ab16d18a4e68e0cb"/><dir name="Order"><file name="Grid.php" hash="00cc7d1bb20437d8f7a547e0acfd7f9c"/><dir name="View"><dir name="Tab"><file name="Shoppingflux.php" hash="c0039acf525620c14cc8a1945d44150e"/></dir></dir></dir><file name="Order.php" hash="a6d45eb0146fb448f72348724c3151df"/><dir name="System"><dir name="Config"><dir name="Form"><dir name="Fieldset"><dir name="Shipping"><file name="Method.php" hash="93276aad3f0ce41f8bd5d8664e2554ce"/></dir></dir></dir></dir></dir></dir><dir name="Payment"><dir name="Info"><file name="Purchaseorder.php" hash="df942f5c9a19506ef2bf70ca1d4da809"/></dir></dir></dir><dir name="Tracking"><file name="Buyline.php" hash="a60b19ed533b265a7a2aafe75c03c0fa"/><file name="Roi.php" hash="e34e26dffead694a35798d0397782d55"/></dir></dir><dir name="Helper"><file name="Data.php" hash="e1a1d9e732d1491117136305213b8131"/></dir><dir name="Model"><dir name="Attribute"><dir name="Source"><file name="Category.php" hash="49f1f7959c4741c22bbf79b7e0bd24e7"/></dir></dir><dir name="Catalog"><dir name="Product"><file name="Collection.php" hash="8c3a5fe7c329059b6b85a1e0e5ee48fd"/></dir></dir><file name="Config.php" hash="da5de2e75f27c64d01aef782d00b4a95"/><dir name="Export"><dir name="Convert"><dir name="Parser"><file name="Product.php" hash="4e50613b82ba84c35eb87f991645c118"/></dir></dir><file name="Flow.php" hash="842fa4b4a49ea86bdeb1cb0441433ccd"/><file name="Flux.php" hash="e4658eae5d4f3cc9296a15fe92b98e43"/><file name="Observer.php" hash="257b6198822f5fe6551296d1e626c20c"/><dir name="Rewrite"><dir name="Catalog"><file name="Config.php" hash="c87b13b0141123b80cb1ac33eaf75715"/></dir><dir name="CatalogInventory"><dir name="Stock"><file name="Item.php" hash="5249964f31fda6d5b7ff9587e713ca81"/></dir></dir></dir><dir name="Source"><file name="Attributes.php" hash="7c86df4782b77b69c59204a39766a787"/><file name="Attributesprice.php" hash="6cddf3b9562c8dbc56e670b377e341c1"/><dir name="Category"><file name="Level.php" hash="477d3dccefe5720eedc6b5d7a7110c9a"/></dir><file name="Visibility.php" hash="c2a1494bc2e554074d19c58523c450b2"/></dir><file name="Updates.php" hash="6a12528f1ba69f0e0240ba471b471578"/><file name="Xml.php" hash="d6574955d2a108a91c1ebf84feb1b02b"/><file name="Xmlflow.deprecated.php" hash="960d81e05b332cdb16449029b07f0eca"/><file name="Xmlflow.php" hash="82815362cf6b2127ef961be79e48c127"/></dir><dir name="Manageorders"><dir name="Convert"><file name="Customer.php" hash="3ef9c9aba499a9dcaa9d56a820fa3736"/></dir><dir name="Export"><file name="Shipments.php" hash="20e617e183366ef5447ea653aa989065"/></dir><file name="Log.php" hash="392d1811b56df12bccb2e7986e588f3d"/><file name="Observer.php" hash="752cc172b2226da0d0af729e272ec390"/><file name="Order.php" hash="d02dd1893dcc1e1212d0fd1946abf0f8"/><file name="OrderOLD.php" hash="f25b3ce2d3610eecf201e2d2421aa460"/><dir name="Payment"><dir name="Method"><file name="Purchaseorder.php" hash="4ed46b995590d286b3154e0bbf7ebc63"/></dir></dir><file name="Product.php" hash="0041c5ebcd0aa8ca17f5c1a4f07ec03d"/><dir name="Shipping"><dir name="Carrier"><file name="Shoppingflux.php" hash="1d56b8eac4d74d6f9cce1e8c5a6613bb"/></dir><file name="Method.php" hash="a71d621b210ecdb1e69290f3e0c6f6d2"/></dir><dir name="Source"><file name="Attributes.php" hash="c9207872ddd962d6b0166d35cfe98626"/></dir></dir><dir name="Mysql4"><dir name="Export"><dir name="Flux"><file name="Collection.php" hash="25a6420bb66aeefb6a8ac0a9e6fc538f"/></dir><file name="Flux.php" hash="6140eeee9d40615eaaba736377aba17e"/><dir name="Updates"><file name="Collection.php" hash="21b355b1db82e4b8a5d1950ac2ffbd18"/></dir><file name="Updates.php" hash="02ef11d051020470231e470f3232f862"/></dir><dir name="Manageorders"><dir name="Export"><dir name="Shipments"><file name="Collection.php" hash="fcdf3c607a8d479beb10a53a618aa225"/></dir><file name="Shipments.php" hash="e06dfaf254a5fd3d8649685b56874258"/></dir><dir name="Log"><file name="Collection.php" hash="0efd8c68937edf98cc9f9bb35bd76f79"/></dir><file name="Log.php" hash="b30bbf3ead209d69993546b29f72ecd7"/><dir name="Shipping"><dir name="Method"><file name="Collection.php" hash="7b2c8fb56625953ea8cd79cc7ddcc9df"/></dir><file name="Method.php" hash="a919a6c61ad6ddefd19ffc287eaa7325"/></dir></dir></dir><dir name="Service"><dir name="Http"><dir name="Client"><dir name="Adapter"><file name="Curl.php" hash="659ab165cdd8492fdc7ee08b515732ac"/><file name="Stream.php" hash="c3a61972f5ffb625dba59ba53365965d"/></dir></dir></dir></dir><file name="Service.php" hash="1f25ee2f480128d9257c131e66924fef"/><dir name="System"><dir name="Config"><dir name="Backend"><file name="Apikey.php" hash="90036cf58c627fcc68920af912171a0c"/><file name="Refresh.php" hash="d53cbdc6ae73c146af67ef5f20d9e4e8"/></dir></dir></dir><file name=".DS_Store" hash="e7218be203fbe7f5c2243a9dea3bf55e"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="GeneralController.php" hash="ca99113377d353dbc4eecfdaea767fa2"/></dir><dir name="Export"><dir name="Adminhtml"><file name="CategoryController.php" hash="d882797e1e0fbff25b312768c6569f04"/><file name="ExportController.php" hash="b496415fe06e284c62692813d8000250"/></dir><file name="FluxController.php" hash="7535da948a253a6bd53f866d5fa5c04b"/></dir><dir name="Manageorders"><dir name="Adminhtml"><file name="CronController.php" hash="9c43b1b18fb883b4140aaa1d3f82cb1c"/><file name="ImportController.php" hash="31203b56860d102c1565fb7653b1a770"/><file name="LogController.php" hash="f744619a2283468d03e8a3f7f8f0c080"/><file name="OrderController.php" hash="acec967d5c7fa44fd3f716fc48f500a6"/></dir><file name="LaunchController.php" hash="a8d04ada8f26479dbd6b002b871a612a"/></dir></dir><dir name="doc"><file name="ShoppingFeed_US.pdf" hash="0cd685730056d5f2f9c9f8292dead3ae"/><file name="ShoppingFlux_FR.pdf" hash="5590a49838bd67f70f0cacf9605cea2b"/></dir><dir name="etc"><file name="adminhtml.xml" hash="fa2e007d1511d96ca9b37fe92eab2604"/><file name="config.xml" hash="4875d1c15d2d3322d4116c4ef4743c5c"/><file name="system.xml" hash="6c56c38731a0cb33203a9bf9bbf19684"/></dir><dir name="sql"><dir name="profileolabs_shoppingflux_setup"><file name="mysql4-install-0.1.0.php" hash="87c47ba97a55bd71dada152b52736be2"/><file name="mysql4-install-0.8.0.php" hash="48e14fe6bea37e0813d4e8011d97f9a9"/><file name="mysql4-install-0.8.5.php" hash="1aae90e495b0a281bb6916d425561620"/><file name="mysql4-upgrade-0.1.0-0.1.1.php" hash="0f95646d855413c52928ed4c258aacb1"/><file name="mysql4-upgrade-0.3.13-0.3.14.php" hash="4f6a5399ad06457f0ebf57b33353ebe2"/><file name="mysql4-upgrade-0.3.14-0.3.15.php" hash="6215917eef61544fc6f4193d31956df4"/><file name="mysql4-upgrade-0.3.17-0.3.18.php" hash="112b34baecd80300682bda9ba69c8970"/><file name="mysql4-upgrade-0.4.2-0.4.3.php" hash="2322a9d2b5130bc78699c1953df87a04"/><file name="mysql4-upgrade-0.4.6-0.5.0.php" hash="02be6c02a8c77e642ef3e40ded1ba8be"/><file name="mysql4-upgrade-0.5.1-0.5.2.php" hash="0e5414628efee519deff6aff301651c7"/><file name="mysql4-upgrade-0.5.3-0.5.4.php" hash="9dfb5e5895a9a2973dba57a049d9d379"/><file name="mysql4-upgrade-0.5.5-0.5.6.php" hash="e0ebe03688b7eac8252efa0d5b9b4258"/><file name="mysql4-upgrade-0.6.5-0.6.6.php" hash="c58a1219b2858d50a3d72e77ac6ee43c"/><file name="mysql4-upgrade-0.7.7-0.7.8.php" hash="0804f52786bdd97024dee79eb4b68695"/><file name="mysql4-upgrade-0.7.9-0.8.0.php" hash="7fdd68eda7f3162e979995ed2d7f847d"/><file name="mysql4-upgrade-0.8.4-0.8.5.php" hash="8f0b3f1998b4ba3e3ea60899a209e8cd"/></dir></dir><file name=".DS_Store" hash="70d8319e6c95b1083e4aa566a1e7f8f7"/></dir><file name=".DS_Store" hash="d3146c6d782e4b3220b6aaa51d65eccc"/></dir></target><target name="mageetc"><dir name="modules"><file name="Profileolabs_Shoppingflux.xml" hash="73ec83cf32c72884815a3cac9f754a54"/></dir></target><target name="magelocale"><dir><dir name="en_US"><file name="Profileolabs_Shoppingflux.csv" hash="ff7ff630beba927b74db682bfd01a43e"/></dir><dir name="fr_FR"><file name="Profileolabs_Shoppingflux.csv" hash="538e929f954fb0abb9a7dd33ce93f801"/></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="1bfeba2cbebbdfa6ce08f202b099d10d"/></dir><dir name="template"><dir name="profileolabs"><dir name="shoppingflux"><dir name="export"><dir name="category"><file name="edit.phtml" hash="8af812638245a0aa59a1c90aa6c20a4f"/></dir><file name="edit.phtml" hash="af3d64c7cb4b179cbf75b2def62d31f1"/><file name="feed.phtml" hash="1cb4146ef5910af093fe928f48332652"/><file name="process.phtml" hash="1dee42b2f14c0862446e5b475aaccad3"/><file name="product.phtml" hash="3d93144b8eb1e16672d610d9c0c35092"/></dir><dir name="manageorders"><file name="import.phtml" hash="6fd3bca397be66fc17d340cfae558fe9"/><dir name="payment"><dir name="info"><file name="purchaseorder.phtml" hash="782768b0e4836b25f46443dda098db29"/></dir></dir><dir name="sales"><dir name="order"><file name="total.phtml" hash="ded51585527ad918412dd5f0d0a9b2a7"/><dir name="view"><dir name="tab"><file name="shoppingflux.phtml" hash="7492846bef04ca1f0419cd804e7c4599"/></dir></dir></dir></dir></dir><file name="register.phtml" hash="614dfd40a4e74c0db2667ba30aeb71e3"/></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="672feff0a0895f920d4037ff131bf5ac"/></dir></dir></dir><dir name="default"><dir name="default"><dir name="layout"><file name="profileolabs_shoppingflux.xml" hash="672feff0a0895f920d4037ff131bf5ac"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="images"><dir name="shoppingflux"><file name="ad.png" hash="b76c0f3e4a7084a88ba0527be9fdcc25"/><file name="logo_us.jpg" hash="cae9e6bcba9814193a59bb07d541edb6"/></dir></dir></dir></dir></dir></target><target name="magelocal"><dir name="Varien"><dir name="Data"><dir name="Form"><dir name="Element"><file name="Wcmultiselect.php" hash="0b976892dab42c440b15706eec966efb"/></dir></dir></dir></dir></target></contents>
17
  <compatible/>
18
  <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
19
  </package>