Affinity_Items - Version 1.1.5

Version Notes

- added stock management
- added layered recommendation
- fixed attribute management
- fixed recoId empty list issue

Download this release

Release Info

Developer Mathieu
Extension Affinity_Items
Version 1.1.5
Comparing to
See all releases


Code changes from version 1.1.4 to 1.1.5

app/code/local/AffinityEngine/AffinityItems/Block/Index.php CHANGED
@@ -24,7 +24,7 @@ class AffinityEngine_AffinityItems_Block_Index extends Mage_Core_Block_Template
24
  // $orderLines = $this->getCartOrderLines();
25
  // $context = "recoCart";
26
  } elseif (strpos($path, 'category')) {
27
- $refs = (Mage::registry('current_category')) ? Mage::registry('current_category')->getId() : false;
28
  $refType = "category";
29
  //$category_id = (Mage::registry('current_category')) ? Mage::registry('current_category')->getId() : false;
30
  // $context = "recoCategory";
@@ -44,27 +44,31 @@ class AffinityEngine_AffinityItems_Block_Index extends Mage_Core_Block_Template
44
 
45
  $aecontext = new stdClass();
46
  //$aecontext->context = $context;
47
-
48
  $aecontext->recoId = $recoId;
49
 
50
  if (isset($area))
51
  $aecontext->area = $area;
52
  $aecontext->size = (int) $no_prod;
53
- /*if (isset($product))
54
- $aecontext->productId = (string) $product;
55
- if (isset($category_id))
56
- $aecontext->categoryId = (string) $category_id;
57
- if (isset($orderLines))
58
- $aecontext->orderLines = $orderLines;*/
59
- if(isset($refs)) {
60
- if(!is_array($refs))
61
  $refs = array($refs);
62
  $aecontext->refs = $refs;
63
  }
64
- if(isset($refType))
65
  $aecontext->refType = $refType;
66
  if (isset($expr))
67
  $aecontext->keywords = (string) $expr;
 
 
 
 
68
  $recomemendation = new AffinityEngine_AffinityItems_Model_Sdk_Recommendation_Recommendation($aecontext, false);
69
  $products = $recomemendation->getRecommendation();
70
 
@@ -74,6 +78,19 @@ class AffinityEngine_AffinityItems_Block_Index extends Mage_Core_Block_Template
74
  return;
75
  }
76
 
 
 
 
 
 
 
 
 
 
 
 
 
 
77
  public function loadProductsById($ids) {
78
  //$ids = array(877,875);
79
  $products = Mage::getModel('catalog/product')->getCollection()
24
  // $orderLines = $this->getCartOrderLines();
25
  // $context = "recoCart";
26
  } elseif (strpos($path, 'category')) {
27
+ $refs = (Mage::registry('current_category')) ? Mage::registry('current_category')->getId() : false;
28
  $refType = "category";
29
  //$category_id = (Mage::registry('current_category')) ? Mage::registry('current_category')->getId() : false;
30
  // $context = "recoCategory";
44
 
45
  $aecontext = new stdClass();
46
  //$aecontext->context = $context;
47
+
48
  $aecontext->recoId = $recoId;
49
 
50
  if (isset($area))
51
  $aecontext->area = $area;
52
  $aecontext->size = (int) $no_prod;
53
+ /* if (isset($product))
54
+ $aecontext->productId = (string) $product;
55
+ if (isset($category_id))
56
+ $aecontext->categoryId = (string) $category_id;
57
+ if (isset($orderLines))
58
+ $aecontext->orderLines = $orderLines; */
59
+ if (isset($refs)) {
60
+ if (!is_array($refs))
61
  $refs = array($refs);
62
  $aecontext->refs = $refs;
63
  }
64
+ if (isset($refType))
65
  $aecontext->refType = $refType;
66
  if (isset($expr))
67
  $aecontext->keywords = (string) $expr;
68
+ if (isset($refType) && $refType == 'category')
69
+ $aecontext = $this->getFacetAttributes($aecontext);
70
+
71
+ $this->helper('affinityitems')->log('[DEBUG]', $aecontext);
72
  $recomemendation = new AffinityEngine_AffinityItems_Model_Sdk_Recommendation_Recommendation($aecontext, false);
73
  $products = $recomemendation->getRecommendation();
74
 
78
  return;
79
  }
80
 
81
+ public function getFacetAttributes($ae_object) {
82
+ $filters = array();
83
+ $appliedFilters = Mage::getSingleton('catalog/layer')->getState()->getFilters();
84
+ foreach ($appliedFilters as $filter) {
85
+ // price filter does not have attribute ID, it generated from price range of products
86
+ if ($filter->getFilter()->getRequestVar() == 'price') continue;
87
+ $filters[] = array($filter->getValue());
88
+ }
89
+ if (!empty($filters))
90
+ $ae_object->facetAttributes = $filters;
91
+ return $ae_object;
92
+ }
93
+
94
  public function loadProductsById($ids) {
95
  //$ids = array(877,875);
96
  $products = Mage::getModel('catalog/product')->getCollection()
app/code/local/AffinityEngine/AffinityItems/Model/Source/Recoconfig.php CHANGED
@@ -1,82 +1,83 @@
1
  <?php
2
 
3
- class AffinityEngine_AffinityItems_Model_Source_Recoconfig
4
- {
5
- public static function getRecoIds()
6
- {
7
- $request = new AffinityEngine_AffinityItems_Model_Sdk_Request_SiteRequest(array());
8
- $data = $request->get();
9
- return isset($data['recoIds']) ? json_decode($data['recoIds']) : array();
10
- }
11
 
12
- public function home()
13
- {
14
- $recoIds = array();
15
- $tmp = self::getRecoIds();
16
- foreach ($tmp as $recoId) {
17
- $recoIds[$recoId] = $recoId;
18
- }
19
- return $recoIds;
20
- }
21
 
22
- public function right()
23
- {
24
- $recoIds = array();
25
- $tmp = self::getRecoIds();
26
- foreach ($tmp as $recoId) {
27
- $recoIds[$recoId] = $recoId;
28
- }
29
- return $recoIds;
30
- }
31
 
32
- public function left()
33
- {
34
- $recoIds = array();
35
- $tmp = self::getRecoIds();
36
- foreach ($tmp as $recoId) {
37
- $recoIds[$recoId] = $recoId;
38
- }
39
- return $recoIds;
40
- }
41
 
42
- public function product()
43
- {
44
- $recoIds = array();
45
- $tmp = self::getRecoIds();
46
- foreach ($tmp as $recoId) {
47
- $recoIds[$recoId] = $recoId;
48
- }
49
- return $recoIds;
50
- }
51
 
52
- public function cart()
53
- {
54
- $recoIds = array();
55
- $tmp = self::getRecoIds();
56
- foreach ($tmp as $recoId) {
57
- $recoIds[$recoId] = $recoId;
58
- }
59
- return $recoIds;
60
- }
61
 
62
- public function category()
63
- {
64
- $recoIds = array();
65
- $tmp = self::getRecoIds();
66
- foreach ($tmp as $recoId) {
67
- $recoIds[$recoId] = $recoId;
68
- }
69
- return $recoIds;
70
- }
71
 
72
- public function search()
73
- {
74
- $recoIds = array();
75
- $tmp = self::getRecoIds();
76
- foreach ($tmp as $recoId) {
77
- $recoIds[$recoId] = $recoId;
78
- }
79
- return $recoIds;
80
- }
81
 
82
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
  <?php
2
 
3
+ class AffinityEngine_AffinityItems_Model_Source_Recoconfig {
 
 
 
 
 
 
 
4
 
5
+ public function getRecoIds() {
6
+ Mage::helper('affinityitems/aeadapter')->registerWebsiteId($this->getWebsiteId());
7
+ $request = new AffinityEngine_AffinityItems_Model_Sdk_Request_SiteRequest(array());
8
+ $data = $request->get();
9
+ return isset($data['recoIds']) ? json_decode($data['recoIds']) : array();
10
+ }
 
 
 
11
 
12
+ public function getWebsiteId() {
13
+ if ($websiteCode = Mage::app()->getRequest()->getParam('website')) {
14
+ $website = Mage::getModel('core/website')->load($websiteCode);
15
+ return $website->getId();
16
+ }
17
+ return 0;
18
+ }
 
 
19
 
20
+ public function home() {
21
+ $recoIds = array();
22
+ $tmp = self::getRecoIds();
23
+ foreach ($tmp as $recoId) {
24
+ $recoIds[$recoId] = $recoId;
25
+ }
26
+ return $recoIds;
27
+ }
 
28
 
29
+ public function right() {
30
+ $recoIds = array();
31
+ $tmp = self::getRecoIds();
32
+ foreach ($tmp as $recoId) {
33
+ $recoIds[$recoId] = $recoId;
34
+ }
35
+ return $recoIds;
36
+ }
 
37
 
38
+ public function left() {
39
+ $recoIds = array();
40
+ $tmp = self::getRecoIds();
41
+ foreach ($tmp as $recoId) {
42
+ $recoIds[$recoId] = $recoId;
43
+ }
44
+ return $recoIds;
45
+ }
 
46
 
47
+ public function product() {
48
+ $recoIds = array();
49
+ $tmp = self::getRecoIds();
50
+ foreach ($tmp as $recoId) {
51
+ $recoIds[$recoId] = $recoId;
52
+ }
53
+ return $recoIds;
54
+ }
 
55
 
56
+ public function cart() {
57
+ $recoIds = array();
58
+ $tmp = self::getRecoIds();
59
+ foreach ($tmp as $recoId) {
60
+ $recoIds[$recoId] = $recoId;
61
+ }
62
+ return $recoIds;
63
+ }
 
64
 
65
+ public function category() {
66
+ $recoIds = array();
67
+ $tmp = self::getRecoIds();
68
+ foreach ($tmp as $recoId) {
69
+ $recoIds[$recoId] = $recoId;
70
+ }
71
+ return $recoIds;
72
+ }
73
+
74
+ public function search() {
75
+ $recoIds = array();
76
+ $tmp = self::getRecoIds();
77
+ foreach ($tmp as $recoId) {
78
+ $recoIds[$recoId] = $recoId;
79
+ }
80
+ return $recoIds;
81
+ }
82
+
83
+ }
app/code/local/AffinityEngine/AffinityItems/Model/Sync/OrderSync.php CHANGED
@@ -102,9 +102,23 @@ class AffinityEngine_AffinityItems_Model_Sync_OrderSync extends AffinityEngine_A
102
  $orderLine->attributeIds = $attributes;
103
  $orderLine->quantity = (int) $item->getQtyOrdered();
104
  array_push($orderLines, $orderLine);
 
 
 
 
105
  }
106
 
107
  return $orderLines;
108
  }
 
 
 
 
 
 
 
 
 
 
109
 
110
  }
102
  $orderLine->attributeIds = $attributes;
103
  $orderLine->quantity = (int) $item->getQtyOrdered();
104
  array_push($orderLines, $orderLine);
105
+
106
+ // sync qty/stock if needed
107
+ $this->syncQtyCheck($item->getProductId());
108
+
109
  }
110
 
111
  return $orderLines;
112
  }
113
+
114
+ public function syncQtyCheck($pid) {
115
+ if ($pid) {
116
+ $product = Mage::getModel('catalog/product')->load($pid);
117
+ $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($product);
118
+ if ($stock->getIsInStock() == 0 || $stock->getQty() == 0) {
119
+ Mage::getModel('affinityitems/sync_productSync')->syncProductFromObserver($pid);
120
+ }
121
+ }
122
+ }
123
 
124
  }
app/code/local/AffinityEngine/AffinityItems/Model/Sync/ProductSync.php CHANGED
@@ -149,11 +149,13 @@ class AffinityEngine_AffinityItems_Model_Sync_ProductSync extends AffinityEngine
149
  }
150
 
151
  public function isRecomendable($prod) {
152
- $reco = false;
153
  $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($prod);
154
- // status must be enabled, visibility anything but NOT visible, product must be in stock, and must be assined to any category
155
- if ($prod->getStatus() == 1 && $prod->getVisibility() != 1 && $stock->getIsInStock() != 0 && count($prod->getCategoryIds()) != 0)
156
- $reco = true;
 
 
157
  return $reco;
158
  }
159
 
@@ -263,7 +265,7 @@ class AffinityEngine_AffinityItems_Model_Sync_ProductSync extends AffinityEngine
263
 
264
  // get all attributes of a product
265
  foreach ($attributes as $attribute) {
266
- if ($attribute->getIsVisibleOnFront()) {
267
 
268
  $attributeCode = $attribute->getAttributeCode();
269
  $label = $attribute->getFrontend()->getLabel($p);
149
  }
150
 
151
  public function isRecomendable($prod) {
152
+ $reco = "false";
153
  $stock = Mage::getModel('cataloginventory/stock_item')->loadByProduct($prod);
154
+ $stockAndQty = ($stock->getIsInStock() != 0 && $stock->getQty() != 0) ? true : false;
155
+ // status must be enabled, visibility anything but NOT visible, product must be in stock with QTY more then 0, and must be assined to any category
156
+ if ($prod->getStatus() == 1 && $prod->getVisibility() != 1 && $stockAndQty && count($prod->getCategoryIds()) != 0)
157
+ $reco = "true";
158
+ $this->logger->log('[DEBUG]', 'Recomendable: ' . $reco);
159
  return $reco;
160
  }
161
 
265
 
266
  // get all attributes of a product
267
  foreach ($attributes as $attribute) {
268
+ if ($attribute->getIsFilterable()) {
269
 
270
  $attributeCode = $attribute->getAttributeCode();
271
  $label = $attribute->getFrontend()->getLabel($p);
app/code/local/AffinityEngine/AffinityItems/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <AffinityEngine_AffinityItems>
5
- <version>1.1.4</version>
6
  </AffinityEngine_AffinityItems>
7
  </modules>
8
 
@@ -63,22 +63,22 @@
63
  </observers>
64
  </catalog_product_save_after>
65
  <catalog_category_save_commit_after>
66
- <observers>
67
- <affinityEngine_savecategory>
68
- <type>singleton</type>
69
- <class>AffinityEngine_AffinityItems_Model_Observer</class>
70
- <method>saveCategory</method>
71
- </affinityEngine_savecategory>
72
- </observers>
73
- </catalog_category_save_commit_after>
74
- <sales_order_save_before>
75
  <observers>
76
  <affinityEngine_saveorder>
77
  <class>AffinityEngine_AffinityItems_Model_Observer</class>
78
  <method>saveOrder</method>
79
  </affinityEngine_saveorder>
80
  </observers>
81
- </sales_order_save_before>
82
  <catalog_controller_category_delete>
83
  <observers>
84
  <affinityEngine_deletecategory>
@@ -268,141 +268,141 @@
268
 
269
  <default>
270
  <affinityitems>
271
- <general>
272
- <storeid>
273
- 0
274
- </storeid>
275
- </general>
276
- <items_home>
277
- <number_products>4</number_products>
278
- <number_products_per_line>4</number_products_per_line>
279
- <recommendation_config>personalization</recommendation_config>
280
- <image_size>0</image_size>
281
- <parent_div>,ae_products_block_center clearfix</parent_div>
282
- <title_class>ae_block_title_center</title_class>
283
- <content_div>,ae_content_block_center</content_div>
284
- <ul>,ae_list_products_block_center</ul>
285
- <li>,ae_product_block_center</li>
286
- <product_image_class>ae_img_center</product_image_class>
287
- <product_name_class>ae_products_name_center</product_name_class>
288
- <product_dsecription_class>ae_product_description</product_dsecription_class>
289
- <price_container_class>ae_price_container_center</price_container_class>
290
- <price_class>ae_price_center</price_class>
291
- </items_home>
292
- <items_left>
293
- <number_products>4</number_products>
294
- <number_products_per_line>4</number_products_per_line>
295
- <image_size>0</image_size>
296
- <parent_div>,ae_products_block_center clearfix</parent_div>
297
- <title_class>ae_block_title_center</title_class>
298
- <content_div>,ae_content_block_center</content_div>
299
- <ul>,ae_list_products_block_center</ul>
300
- <li>,ae_product_block_center</li>
301
- <product_image_class>ae_img_center</product_image_class>
302
- <product_name_class>ae_products_name_center</product_name_class>
303
- <product_dsecription_class>ae_product_description</product_dsecription_class>
304
- <price_container_class>ae_price_container_center</price_container_class>
305
- <price_class>ae_price_center</price_class>
306
- </items_left>
307
- <items_right>
308
- <number_products>4</number_products>
309
- <number_products_per_line>4</number_products_per_line>
310
- <recommendation_config>personalization</recommendation_config>
311
- <image_size>0</image_size>
312
- <parent_div>,ae_products_block_center clearfix</parent_div>
313
- <title_class>ae_block_title_center</title_class>
314
- <content_div>,ae_content_block_center</content_div>
315
- <ul>,ae_list_products_block_center</ul>
316
- <li>,ae_product_block_center</li>
317
- <product_image_class>ae_img_center</product_image_class>
318
- <product_name_class>ae_products_name_center</product_name_class>
319
- <product_dsecription_class>ae_product_description</product_dsecription_class>
320
- <price_container_class>ae_price_container_center</price_container_class>
321
- <price_class>ae_price_center</price_class>
322
- </items_right>
323
- <items_cart>
324
- <number_products>4</number_products>
325
- <number_products_per_line>4</number_products_per_line>
326
- <recommendation_config>personalization</recommendation_config>
327
- <image_size>0</image_size>
328
- <parent_div>,ae_products_block_center clearfix</parent_div>
329
- <title_class>ae_block_title_center</title_class>
330
- <content_div>,ae_content_block_center</content_div>
331
- <ul>,ae_list_products_block_center</ul>
332
- <li>,ae_product_block_center</li>
333
- <product_image_class>ae_img_center</product_image_class>
334
- <product_name_class>ae_products_name_center</product_name_class>
335
- <product_dsecription_class>ae_product_description</product_dsecription_class>
336
- <price_container_class>ae_price_container_center</price_container_class>
337
- <price_class>ae_price_center</price_class>
338
- </items_cart>
339
- <items_product>
340
- <number_products>4</number_products>
341
- <number_products_per_line>4</number_products_per_line>
342
- <recommendation_config>personalization</recommendation_config>
343
- <image_size>0</image_size>
344
- <parent_div>,ae_products_block_center clearfix</parent_div>
345
- <title_class>ae_block_title_center</title_class>
346
- <content_div>,ae_content_block_center</content_div>
347
- <ul>,ae_list_products_block_center</ul>
348
- <li>,ae_product_block_center</li>
349
- <product_image_class>ae_img_center</product_image_class>
350
- <product_name_class>ae_products_name_center</product_name_class>
351
- <product_dsecription_class>ae_product_description</product_dsecription_class>
352
- <price_container_class>ae_price_container_center</price_container_class>
353
- <price_class>ae_price_center</price_class>
354
- </items_product>
355
- <items_search>
356
- <number_products>4</number_products>
357
- <number_products_per_line>4</number_products_per_line>
358
- <recommendation_config>personalization</recommendation_config>
359
- <image_size>0</image_size>
360
- <parent_div>,ae_products_block_center clearfix</parent_div>
361
- <title_class>ae_block_title_center</title_class>
362
- <content_div>,ae_content_block_center</content_div>
363
- <ul>,ae_list_products_block_center</ul>
364
- <li>,ae_product_block_center</li>
365
- <product_image_class>ae_img_center</product_image_class>
366
- <product_name_class>ae_products_name_center</product_name_class>
367
- <product_dsecription_class>ae_product_description</product_dsecription_class>
368
- <price_container_class>ae_price_container_center</price_container_class>
369
- <price_class>ae_price_center</price_class>
370
- </items_search>
371
- <items_category>
372
- <number_products>4</number_products>
373
- <number_products_per_line>4</number_products_per_line>
374
- <recommendation_config>personalization</recommendation_config>
375
- <image_size>0</image_size>
376
- <parent_div>,ae_products_block_center clearfix</parent_div>
377
- <title_class>ae_block_title_center</title_class>
378
- <content_div>,ae_content_block_center</content_div>
379
- <ul>,ae_list_products_block_center</ul>
380
- <li>,ae_product_block_center</li>
381
- <product_image_class>ae_img_center</product_image_class>
382
- <product_name_class>ae_products_name_center</product_name_class>
383
- <product_dsecription_class>ae_product_description</product_dsecription_class>
384
- <price_container_class>ae_price_container_center</price_container_class>
385
- <price_class>ae_price_center</price_class>
386
- </items_category>
387
- <image_size>
388
- <default>125,125</default>
389
- <large>458,458</large>
390
- <medium>250,250</medium>
391
- <small>98,98</small>
392
- </image_size>
393
- </affinityitems>
394
- </default>
395
 
396
- <crontab>
397
- <jobs>
398
- <affinityitems_sync>
399
- <schedule>
400
- <cron_expr>*/5 * * * *</cron_expr>
401
- </schedule>
402
- <run>
403
- <model>affinityitems/cron::Sync</model>
404
- </run>
405
- </affinityitems_sync>
406
- </jobs>
407
- </crontab>
408
  </config>
2
  <config>
3
  <modules>
4
  <AffinityEngine_AffinityItems>
5
+ <version>1.1.5</version>
6
  </AffinityEngine_AffinityItems>
7
  </modules>
8
 
63
  </observers>
64
  </catalog_product_save_after>
65
  <catalog_category_save_commit_after>
66
+ <observers>
67
+ <affinityEngine_savecategory>
68
+ <type>singleton</type>
69
+ <class>AffinityEngine_AffinityItems_Model_Observer</class>
70
+ <method>saveCategory</method>
71
+ </affinityEngine_savecategory>
72
+ </observers>
73
+ </catalog_category_save_commit_after>
74
+ <sales_order_save_after>
75
  <observers>
76
  <affinityEngine_saveorder>
77
  <class>AffinityEngine_AffinityItems_Model_Observer</class>
78
  <method>saveOrder</method>
79
  </affinityEngine_saveorder>
80
  </observers>
81
+ </sales_order_save_after>
82
  <catalog_controller_category_delete>
83
  <observers>
84
  <affinityEngine_deletecategory>
268
 
269
  <default>
270
  <affinityitems>
271
+ <general>
272
+ <storeid>
273
+ 0
274
+ </storeid>
275
+ </general>
276
+ <items_home>
277
+ <number_products>4</number_products>
278
+ <number_products_per_line>4</number_products_per_line>
279
+ <recommendation_config>personalization</recommendation_config>
280
+ <image_size>0</image_size>
281
+ <parent_div>,ae_products_block_center clearfix</parent_div>
282
+ <title_class>ae_block_title_center</title_class>
283
+ <content_div>,ae_content_block_center</content_div>
284
+ <ul>,ae_list_products_block_center</ul>
285
+ <li>,ae_product_block_center</li>
286
+ <product_image_class>ae_img_center</product_image_class>
287
+ <product_name_class>ae_products_name_center</product_name_class>
288
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
289
+ <price_container_class>ae_price_container_center</price_container_class>
290
+ <price_class>ae_price_center</price_class>
291
+ </items_home>
292
+ <items_left>
293
+ <number_products>4</number_products>
294
+ <number_products_per_line>4</number_products_per_line>
295
+ <image_size>0</image_size>
296
+ <parent_div>,ae_products_block_center clearfix</parent_div>
297
+ <title_class>ae_block_title_center</title_class>
298
+ <content_div>,ae_content_block_center</content_div>
299
+ <ul>,ae_list_products_block_center</ul>
300
+ <li>,ae_product_block_center</li>
301
+ <product_image_class>ae_img_center</product_image_class>
302
+ <product_name_class>ae_products_name_center</product_name_class>
303
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
304
+ <price_container_class>ae_price_container_center</price_container_class>
305
+ <price_class>ae_price_center</price_class>
306
+ </items_left>
307
+ <items_right>
308
+ <number_products>4</number_products>
309
+ <number_products_per_line>4</number_products_per_line>
310
+ <recommendation_config>personalization</recommendation_config>
311
+ <image_size>0</image_size>
312
+ <parent_div>,ae_products_block_center clearfix</parent_div>
313
+ <title_class>ae_block_title_center</title_class>
314
+ <content_div>,ae_content_block_center</content_div>
315
+ <ul>,ae_list_products_block_center</ul>
316
+ <li>,ae_product_block_center</li>
317
+ <product_image_class>ae_img_center</product_image_class>
318
+ <product_name_class>ae_products_name_center</product_name_class>
319
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
320
+ <price_container_class>ae_price_container_center</price_container_class>
321
+ <price_class>ae_price_center</price_class>
322
+ </items_right>
323
+ <items_cart>
324
+ <number_products>4</number_products>
325
+ <number_products_per_line>4</number_products_per_line>
326
+ <recommendation_config>personalization</recommendation_config>
327
+ <image_size>0</image_size>
328
+ <parent_div>,ae_products_block_center clearfix</parent_div>
329
+ <title_class>ae_block_title_center</title_class>
330
+ <content_div>,ae_content_block_center</content_div>
331
+ <ul>,ae_list_products_block_center</ul>
332
+ <li>,ae_product_block_center</li>
333
+ <product_image_class>ae_img_center</product_image_class>
334
+ <product_name_class>ae_products_name_center</product_name_class>
335
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
336
+ <price_container_class>ae_price_container_center</price_container_class>
337
+ <price_class>ae_price_center</price_class>
338
+ </items_cart>
339
+ <items_product>
340
+ <number_products>4</number_products>
341
+ <number_products_per_line>4</number_products_per_line>
342
+ <recommendation_config>personalization</recommendation_config>
343
+ <image_size>0</image_size>
344
+ <parent_div>,ae_products_block_center clearfix</parent_div>
345
+ <title_class>ae_block_title_center</title_class>
346
+ <content_div>,ae_content_block_center</content_div>
347
+ <ul>,ae_list_products_block_center</ul>
348
+ <li>,ae_product_block_center</li>
349
+ <product_image_class>ae_img_center</product_image_class>
350
+ <product_name_class>ae_products_name_center</product_name_class>
351
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
352
+ <price_container_class>ae_price_container_center</price_container_class>
353
+ <price_class>ae_price_center</price_class>
354
+ </items_product>
355
+ <items_search>
356
+ <number_products>4</number_products>
357
+ <number_products_per_line>4</number_products_per_line>
358
+ <recommendation_config>personalization</recommendation_config>
359
+ <image_size>0</image_size>
360
+ <parent_div>,ae_products_block_center clearfix</parent_div>
361
+ <title_class>ae_block_title_center</title_class>
362
+ <content_div>,ae_content_block_center</content_div>
363
+ <ul>,ae_list_products_block_center</ul>
364
+ <li>,ae_product_block_center</li>
365
+ <product_image_class>ae_img_center</product_image_class>
366
+ <product_name_class>ae_products_name_center</product_name_class>
367
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
368
+ <price_container_class>ae_price_container_center</price_container_class>
369
+ <price_class>ae_price_center</price_class>
370
+ </items_search>
371
+ <items_category>
372
+ <number_products>4</number_products>
373
+ <number_products_per_line>4</number_products_per_line>
374
+ <recommendation_config>personalization</recommendation_config>
375
+ <image_size>0</image_size>
376
+ <parent_div>,ae_products_block_center clearfix</parent_div>
377
+ <title_class>ae_block_title_center</title_class>
378
+ <content_div>,ae_content_block_center</content_div>
379
+ <ul>,ae_list_products_block_center</ul>
380
+ <li>,ae_product_block_center</li>
381
+ <product_image_class>ae_img_center</product_image_class>
382
+ <product_name_class>ae_products_name_center</product_name_class>
383
+ <product_dsecription_class>ae_product_description</product_dsecription_class>
384
+ <price_container_class>ae_price_container_center</price_container_class>
385
+ <price_class>ae_price_center</price_class>
386
+ </items_category>
387
+ <image_size>
388
+ <default>125,125</default>
389
+ <large>458,458</large>
390
+ <medium>250,250</medium>
391
+ <small>98,98</small>
392
+ </image_size>
393
+ </affinityitems>
394
+ </default>
395
 
396
+ <crontab>
397
+ <jobs>
398
+ <affinityitems_sync>
399
+ <schedule>
400
+ <cron_expr>*/5 * * * *</cron_expr>
401
+ </schedule>
402
+ <run>
403
+ <model>affinityitems/cron::Sync</model>
404
+ </run>
405
+ </affinityitems_sync>
406
+ </jobs>
407
+ </crontab>
408
  </config>
app/etc/modules/AffinityEngine_AffinityItems.xml CHANGED
@@ -4,7 +4,7 @@
4
  <AffinityEngine_AffinityItems>
5
  <active>true</active>
6
  <codePool>local</codePool>
7
- <version>1.1.4</version>
8
  </AffinityEngine_AffinityItems>
9
  </modules>
10
  </config>
4
  <AffinityEngine_AffinityItems>
5
  <active>true</active>
6
  <codePool>local</codePool>
7
+ <version>1.1.5</version>
8
  </AffinityEngine_AffinityItems>
9
  </modules>
10
  </config>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Affinity_Items</name>
4
- <version>1.1.4</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3</license>
7
  <channel>community</channel>
@@ -42,14 +42,15 @@ Affinity items pricing model is a pure success based pricing model. There are no
42
  Developers&#xD;
43
  &#xD;
44
  Affinity items Magento extension is also downloadable from our developer platform: http://developer.affinity-engine.fr/affinityitems/magento/wikis/master/en-home</description>
45
- <notes>- added multisite functionnality&#xD;
46
- - added more logs&#xD;
47
- - fixed read action js error&#xD;
 
48
  </notes>
49
  <authors><author><name>Mathieu</name><user>BARAN</user><email>mathieu@affinity-engine.fr</email></author></authors>
50
- <date>2015-09-09</date>
51
- <time>08:49:44</time>
52
- <contents><target name="magelocal"><dir name="AffinityEngine"><dir name="AffinityItems"><dir name="Block"><dir name="Adminhtml"><dir name="Affinityitems"><file name="Grid.php" hash="de34b472132fc34610da4b2257f17176"/></dir><file name="Affinityitems.php" hash="5b3ec37b91405b80e060902a21ed8e9c"/><file name="Affinityitemsbackend.php" hash="40aa694ef6ee2f256f202cf1a144ce0b"/></dir><file name="Index.php" hash="0149583572d9d455c4bb3cf78336d2af"/><dir name="Renderer"><dir name="Config"><file name="Classes.php" hash="8c3d39529ef95c439b8e679a3912d9be"/><file name="Imagesize.php" hash="1a1bdd54722e5cf9ecb0318655b5f6db"/><file name="Ipblacklist.php" hash="645526f7fc6ad0ca8835f027d3a8c5f9"/><file name="Serverlist.php" hash="5c0f647a50a9444cde02909bcc164c6f"/><file name="Siteinfo.php" hash="baed3f0f265f0e93537d75ed988c871b"/><file name="Version.php" hash="48fe7d204de5dbc4194b54b6c3df41e9"/></dir></dir></dir><dir name="Helper"><file name="Aeadapter.php" hash="d2ff77ec63677d25e411d45042aeb326"/><file name="Data.php" hash="659e81e6fe364e5f1970191e3b2115e3"/></dir><dir name="Model"><file name="Action.php" hash="2eb81ffd225b596d389c63f158818809"/><file name="Cart.php" hash="726ae5561ab9e01ee72c036f42914469"/><file name="CatProdRepo.php" hash="326f055745d51d128b1e2e00c7fdb286"/><file name="Config.php" hash="b29bcfd6f1ed91bd0f83b56563732a4b"/><file name="Cron.php" hash="d4c580adc720b8c93b3d2735046cc3bb"/><file name="Log.php" hash="2c2f523188b50e7a4cf5ff6d79d1c3b5"/><file name="Observer.php" hash="a27c175b5c067cf10d5784b05b963eed"/><dir name="Resource"><dir name="Action"><file name="Collection.php" hash="326d82fe39153680f99defdb1e846476"/></dir><file name="Action.php" hash="6cd9f6a6d4b87e220c3bbf271a24810d"/><dir name="Cart"><file name="Collection.php" hash="9a8c23023645f9170102980ce56bc193"/></dir><file name="Cart.php" hash="8bb395c3ebfc043326c6001d623270a4"/><dir name="CatProdRepo"><file name="Collection.php" hash="bf98be72eae2c0859046142ed2d7fb4c"/></dir><file name="CatProdRepo.php" hash="4781a985d1b889633ed28d98b28378bf"/><dir name="Log"><file name="Collection.php" hash="935eae91b74f30c4a960b1c18f373050"/></dir><file name="Log.php" hash="bc36af5602145cc1fc094fa17289eb1a"/><dir name="Syncrotate"><file name="Collection.php" hash="66bd261226b6865c5a52ef28e9b064ea"/></dir><file name="Syncrotate.php" hash="0d3b60d41d19f49c8dc673fd61007de5"/></dir><dir name="Sdk"><dir name="Abtesting"><file name="Abtesting.php" hash="7e15e1a98aaa55f0dee24ecacf813f54"/></dir><dir name="Core"><file name="AbstractRequest.php" hash="d92ec4494b9cee5fa1343594024336fd"/><file name="Curl.php" hash="4d79b217f9dc05d6a0afdb2515e372f9"/></dir><dir name="Recommendation"><file name="Recommendation.php" hash="64929784b877e32281705eee0c056533"/></dir><dir name="Request"><file name="ActionRequest.php" hash="a4128a5365d69a19e72ed9d7fe357514"/><file name="CategoryRequest.php" hash="31db44e9f404ee80a29939424a1a3596"/><file name="CustomerRequest.php" hash="3f1a0758034a2865e5bdf0e439694212"/><file name="DisableRequest.php" hash="9eeb721518be067c57eb8ce58df3d270"/><file name="GuestRequest.php" hash="78dd970ae4d0612853ddcdafd4de8ec4"/><file name="HostRequest.php" hash="8df4275aaf02019d9228ee14b395abe5"/><file name="LinkGuestToMemberRequest.php" hash="499c3986c89b09942c424542375d4d58"/><file name="MemberRequest.php" hash="74747f67cca8cccad5e6e346cfc157b0"/><file name="NotificationRequest.php" hash="3758c90470a9a32bafc8395a30127490"/><file name="OrderRequest.php" hash="590c8d40c2202f0becd50ec9a97c6885"/><file name="ProductRequest.php" hash="ad20d6f489728b5863867bd6bfaca753"/><file name="RecommendationRequest.php" hash="dc4e986ed4b224cbc1f36464e8610a43"/><file name="ResynchronizeRequest.php" hash="5d534d27011644ba14aa58bd935394bd"/><file name="SiteRequest.php" hash="42029a530971606fd2a2fd4cdb23b8b3"/></dir></dir><dir name="Source"><file name="Enviroment.php" hash="099b2a345377ceb795674a5d4d30a6a7"/><file name="Imagesize.php" hash="fa63ae1460a85dae21b0c6a3aabd6e35"/><file name="Loglevel.php" hash="8ffa64757752eaba56cac5b8bb1ff7a3"/><file name="Recoconfig.php" hash="cc99f674dd147f270969d05f02c615a6"/></dir><dir name="Sync"><file name="ActionSync.php" hash="52f8661cf04949ee8d390fa84cef2b4c"/><file name="CartActionSync.php" hash="00ffa3870ffab842261b771e80b89c3a"/><file name="CategorySync.php" hash="829ffddb16589edda245860f25452ef9"/><file name="MemberSync.php" hash="1b4216a76bfeb78490ae34a31c6fc6a8"/><file name="OrderSync.php" hash="01aefd33bfd7802038e9e5658c628901"/><file name="ProductSync.php" hash="9e3dfb3d1aa92491211414ab4958f1ce"/><file name="Sync.php" hash="def552c615693c6e217fc272335aab4c"/></dir><file name="Syncrotate.php" hash="358dd78e37da93c0450162c0b20e185b"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Dropdown"><file name="Values.php" hash="5e4f3df023f2745c27d72b73ff2d09ec"/></dir></dir></dir></dir></dir><dir name="bin"><file name="manual-run.php" hash="cb2223d194aea92cf5626000c4ddfde8"/></dir><dir name="controllers"><file name="ActionController.php" hash="de57a5b767913931b63fe29eb6e2311f"/><dir name="Adminhtml"><file name="AffinityitemsbackendController.php" hash="a1f7026fd8ac2def3b25826a11b41f0a"/><file name="AffinityitemslogController.php" hash="54903640158b2163526431001a1c51d9"/><file name="AjaxController.php" hash="793c65d49a7932a5c2fac07ea9a40e9e"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="3db0abc036764375bece30c5bb5dc976"/><file name="config.xml" hash="3e6e39ca3bf87e37137a9256eef79612"/><file name="system.xml" hash="16effd86c38e6c13f166a5ffbb10f5c1"/></dir><dir name="sql"><dir name="affinityitems_setup"><file name="mysql4-install-1.0.0.php" hash="084acd16e18a817ab84e2479bcf2622e"/><file name="mysql4-upgrade-1.1.3-1.1.4.php" hash="ebd883bed32bd6bb2f5eb4976e1b1699"/></dir></dir><file name="uninstall.sql" hash="73cb0928320f6f5325c6d21a87bf49eb"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="AffinityEngine_AffinityItems.xml" hash="9bc174dad4c7965b6ee01d4360e797fc"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="affinityitems.xml" hash="32d45a407463b4e76b5e30dab765b965"/></dir><dir name="template"><dir name="affinityitems"><file name="affinityitems_login.phtml" hash="f5673a792b174e9595290d60e2257135"/><file name="affinityitems_sync.phtml" hash="4e4713289acda3e95b592c94f8587906"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="affinityengine"><file name="affinityitems.xml" hash="9a2c254e32f5d69deef0e3d74f007905"/></dir></dir><dir name="template"><dir name="affinityengine"><file name="ae_css.phtml" hash="828164eb0fcf039ac670c432d2d56c0d"/><file name="ae_js.phtml" hash="cde8d2a00a5f76b5932d1ad71c4ac4d2"/><file name="horizontal.phtml" hash="ef22dbc5d8803e0fab10cce0f94cfe32"/><file name="pricehtml.phtml" hash="a4c2c740d9119fb016c8e005ed5ad7ca"/><file name="vertical.phtml" hash="4b378f94d695d2eabc30560636c91aa5"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="affinityitems"><file name="affinityitems.css" hash="ecb8e40e67270c872e53b18f46a42671"/></dir></dir><dir name="js"><dir name="affinityitems"><file name="affinityitems.js" hash="9dd718da50afee4a5bbdc4780e10ae72"/><file name="jquery-noconflict.js" hash="1f3b8801b59144eeaee27caa7c5c15db"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="affinityengine"><dir name="img"><file name="aeboard.jpg" hash="9481a712582bcac6bdc2727a9cf52b3b"/><file name="aemoney.jpg" hash="6dc4d7612be1efe77784c622fa73985d"/><file name="aestart.jpg" hash="277c540ae19974133f473a731145f33d"/><file name="ailogo.png" hash="df2799c4ee9e68bd793cb85149fea2e7"/><file name="checked.png" hash="d4122f013483f59be79719385405a0de"/><file name="disabled.png" hash="fd56b078b4c3423735c667358285dc06"/><file name="enabled.png" hash="2499c302772cacbaf5d3c85427f2e7c5"/><file name="error.png" hash="bc87cd99143fc930408e379d5c3aa0f0"/><file name="index.php" hash="931175008efa4be6a17827fefd16937d"/><file name="loading.gif" hash="30d8e72bfdae694b1938658e1b087df0"/><file name="logo.png" hash="af48761d7b17a4e5115b8f16aaf634b6"/><file name="pdf.png" hash="95b561422892384337eb2eabb968a558"/><file name="unchecked.png" hash="0f5ec71a07abf89590209349c85b58ff"/></dir><file name="jquery-noconflict.js" hash="3d8c3103282467d2cd94031dbf4a75b6"/><file name="main.css" hash="58cbab2fcea443ea9dad70bb0cd4dad8"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="fr_FR"><file name="AffinityEngine_AffinityItems.csv" hash="e8531b7ad38442694a0091c4daf586d4"/></dir></target></contents>
53
  <compatible/>
54
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
55
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Affinity_Items</name>
4
+ <version>1.1.5</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">OSL v3</license>
7
  <channel>community</channel>
42
  Developers&#xD;
43
  &#xD;
44
  Affinity items Magento extension is also downloadable from our developer platform: http://developer.affinity-engine.fr/affinityitems/magento/wikis/master/en-home</description>
45
+ <notes>- added stock management&#xD;
46
+ - added layered recommendation&#xD;
47
+ - fixed attribute management&#xD;
48
+ - fixed recoId empty list issue&#xD;
49
  </notes>
50
  <authors><author><name>Mathieu</name><user>BARAN</user><email>mathieu@affinity-engine.fr</email></author></authors>
51
+ <date>2015-09-30</date>
52
+ <time>12:26:59</time>
53
+ <contents><target name="magelocal"><dir name="AffinityEngine"><dir name="AffinityItems"><dir name="Block"><dir name="Adminhtml"><dir name="Affinityitems"><file name="Grid.php" hash="de34b472132fc34610da4b2257f17176"/></dir><file name="Affinityitems.php" hash="5b3ec37b91405b80e060902a21ed8e9c"/><file name="Affinityitemsbackend.php" hash="40aa694ef6ee2f256f202cf1a144ce0b"/></dir><file name="Index.php" hash="26dd228804672c0d45f10b9fc39f903b"/><dir name="Renderer"><dir name="Config"><file name="Classes.php" hash="8c3d39529ef95c439b8e679a3912d9be"/><file name="Imagesize.php" hash="1a1bdd54722e5cf9ecb0318655b5f6db"/><file name="Ipblacklist.php" hash="645526f7fc6ad0ca8835f027d3a8c5f9"/><file name="Serverlist.php" hash="5c0f647a50a9444cde02909bcc164c6f"/><file name="Siteinfo.php" hash="baed3f0f265f0e93537d75ed988c871b"/><file name="Version.php" hash="48fe7d204de5dbc4194b54b6c3df41e9"/></dir></dir></dir><dir name="Helper"><file name="Aeadapter.php" hash="d2ff77ec63677d25e411d45042aeb326"/><file name="Data.php" hash="659e81e6fe364e5f1970191e3b2115e3"/></dir><dir name="Model"><file name="Action.php" hash="2eb81ffd225b596d389c63f158818809"/><file name="Cart.php" hash="726ae5561ab9e01ee72c036f42914469"/><file name="CatProdRepo.php" hash="326f055745d51d128b1e2e00c7fdb286"/><file name="Config.php" hash="b29bcfd6f1ed91bd0f83b56563732a4b"/><file name="Cron.php" hash="d4c580adc720b8c93b3d2735046cc3bb"/><file name="Log.php" hash="2c2f523188b50e7a4cf5ff6d79d1c3b5"/><file name="Observer.php" hash="a27c175b5c067cf10d5784b05b963eed"/><dir name="Resource"><dir name="Action"><file name="Collection.php" hash="326d82fe39153680f99defdb1e846476"/></dir><file name="Action.php" hash="6cd9f6a6d4b87e220c3bbf271a24810d"/><dir name="Cart"><file name="Collection.php" hash="9a8c23023645f9170102980ce56bc193"/></dir><file name="Cart.php" hash="8bb395c3ebfc043326c6001d623270a4"/><dir name="CatProdRepo"><file name="Collection.php" hash="bf98be72eae2c0859046142ed2d7fb4c"/></dir><file name="CatProdRepo.php" hash="4781a985d1b889633ed28d98b28378bf"/><dir name="Log"><file name="Collection.php" hash="935eae91b74f30c4a960b1c18f373050"/></dir><file name="Log.php" hash="bc36af5602145cc1fc094fa17289eb1a"/><dir name="Syncrotate"><file name="Collection.php" hash="66bd261226b6865c5a52ef28e9b064ea"/></dir><file name="Syncrotate.php" hash="0d3b60d41d19f49c8dc673fd61007de5"/></dir><dir name="Sdk"><dir name="Abtesting"><file name="Abtesting.php" hash="7e15e1a98aaa55f0dee24ecacf813f54"/></dir><dir name="Core"><file name="AbstractRequest.php" hash="d92ec4494b9cee5fa1343594024336fd"/><file name="Curl.php" hash="4d79b217f9dc05d6a0afdb2515e372f9"/></dir><dir name="Recommendation"><file name="Recommendation.php" hash="64929784b877e32281705eee0c056533"/></dir><dir name="Request"><file name="ActionRequest.php" hash="a4128a5365d69a19e72ed9d7fe357514"/><file name="CategoryRequest.php" hash="31db44e9f404ee80a29939424a1a3596"/><file name="CustomerRequest.php" hash="3f1a0758034a2865e5bdf0e439694212"/><file name="DisableRequest.php" hash="9eeb721518be067c57eb8ce58df3d270"/><file name="GuestRequest.php" hash="78dd970ae4d0612853ddcdafd4de8ec4"/><file name="HostRequest.php" hash="8df4275aaf02019d9228ee14b395abe5"/><file name="LinkGuestToMemberRequest.php" hash="499c3986c89b09942c424542375d4d58"/><file name="MemberRequest.php" hash="74747f67cca8cccad5e6e346cfc157b0"/><file name="NotificationRequest.php" hash="3758c90470a9a32bafc8395a30127490"/><file name="OrderRequest.php" hash="590c8d40c2202f0becd50ec9a97c6885"/><file name="ProductRequest.php" hash="ad20d6f489728b5863867bd6bfaca753"/><file name="RecommendationRequest.php" hash="dc4e986ed4b224cbc1f36464e8610a43"/><file name="ResynchronizeRequest.php" hash="5d534d27011644ba14aa58bd935394bd"/><file name="SiteRequest.php" hash="42029a530971606fd2a2fd4cdb23b8b3"/></dir></dir><dir name="Source"><file name="Enviroment.php" hash="099b2a345377ceb795674a5d4d30a6a7"/><file name="Imagesize.php" hash="fa63ae1460a85dae21b0c6a3aabd6e35"/><file name="Loglevel.php" hash="8ffa64757752eaba56cac5b8bb1ff7a3"/><file name="Recoconfig.php" hash="6c22772e25b4832021067090c61a1e88"/></dir><dir name="Sync"><file name="ActionSync.php" hash="52f8661cf04949ee8d390fa84cef2b4c"/><file name="CartActionSync.php" hash="00ffa3870ffab842261b771e80b89c3a"/><file name="CategorySync.php" hash="829ffddb16589edda245860f25452ef9"/><file name="MemberSync.php" hash="1b4216a76bfeb78490ae34a31c6fc6a8"/><file name="OrderSync.php" hash="9f8fc7058302125e276f875fbb9ccfa3"/><file name="ProductSync.php" hash="89c149843dd4f217883cc7789d8ea5d5"/><file name="Sync.php" hash="def552c615693c6e217fc272335aab4c"/></dir><file name="Syncrotate.php" hash="358dd78e37da93c0450162c0b20e185b"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Dropdown"><file name="Values.php" hash="5e4f3df023f2745c27d72b73ff2d09ec"/></dir></dir></dir></dir></dir><dir name="bin"><file name="manual-run.php" hash="cb2223d194aea92cf5626000c4ddfde8"/></dir><dir name="controllers"><file name="ActionController.php" hash="de57a5b767913931b63fe29eb6e2311f"/><dir name="Adminhtml"><file name="AffinityitemsbackendController.php" hash="a1f7026fd8ac2def3b25826a11b41f0a"/><file name="AffinityitemslogController.php" hash="54903640158b2163526431001a1c51d9"/><file name="AjaxController.php" hash="793c65d49a7932a5c2fac07ea9a40e9e"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="3db0abc036764375bece30c5bb5dc976"/><file name="config.xml" hash="4ab7571e5ae93c0a29e22eccaaefad5b"/><file name="system.xml" hash="16effd86c38e6c13f166a5ffbb10f5c1"/></dir><dir name="sql"><dir name="affinityitems_setup"><file name="mysql4-install-1.0.0.php" hash="084acd16e18a817ab84e2479bcf2622e"/><file name="mysql4-upgrade-1.1.3-1.1.4.php" hash="ebd883bed32bd6bb2f5eb4976e1b1699"/></dir></dir><file name="uninstall.sql" hash="73cb0928320f6f5325c6d21a87bf49eb"/></dir></dir></target><target name="mageetc"><dir name="modules"><file name="AffinityEngine_AffinityItems.xml" hash="3c29cccc323b328b2969ece831694211"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="affinityitems.xml" hash="32d45a407463b4e76b5e30dab765b965"/></dir><dir name="template"><dir name="affinityitems"><file name="affinityitems_login.phtml" hash="f5673a792b174e9595290d60e2257135"/><file name="affinityitems_sync.phtml" hash="4e4713289acda3e95b592c94f8587906"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="affinityengine"><file name="affinityitems.xml" hash="9a2c254e32f5d69deef0e3d74f007905"/></dir></dir><dir name="template"><dir name="affinityengine"><file name="ae_css.phtml" hash="828164eb0fcf039ac670c432d2d56c0d"/><file name="ae_js.phtml" hash="cde8d2a00a5f76b5932d1ad71c4ac4d2"/><file name="horizontal.phtml" hash="ef22dbc5d8803e0fab10cce0f94cfe32"/><file name="pricehtml.phtml" hash="a4c2c740d9119fb016c8e005ed5ad7ca"/><file name="vertical.phtml" hash="4b378f94d695d2eabc30560636c91aa5"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="affinityitems"><file name="affinityitems.css" hash="ecb8e40e67270c872e53b18f46a42671"/></dir></dir><dir name="js"><dir name="affinityitems"><file name="affinityitems.js" hash="9dd718da50afee4a5bbdc4780e10ae72"/><file name="jquery-noconflict.js" hash="1f3b8801b59144eeaee27caa7c5c15db"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="affinityengine"><dir name="img"><file name="aeboard.jpg" hash="9481a712582bcac6bdc2727a9cf52b3b"/><file name="aemoney.jpg" hash="6dc4d7612be1efe77784c622fa73985d"/><file name="aestart.jpg" hash="277c540ae19974133f473a731145f33d"/><file name="ailogo.png" hash="df2799c4ee9e68bd793cb85149fea2e7"/><file name="checked.png" hash="d4122f013483f59be79719385405a0de"/><file name="disabled.png" hash="fd56b078b4c3423735c667358285dc06"/><file name="enabled.png" hash="2499c302772cacbaf5d3c85427f2e7c5"/><file name="error.png" hash="bc87cd99143fc930408e379d5c3aa0f0"/><file name="index.php" hash="931175008efa4be6a17827fefd16937d"/><file name="loading.gif" hash="30d8e72bfdae694b1938658e1b087df0"/><file name="logo.png" hash="af48761d7b17a4e5115b8f16aaf634b6"/><file name="pdf.png" hash="95b561422892384337eb2eabb968a558"/><file name="unchecked.png" hash="0f5ec71a07abf89590209349c85b58ff"/></dir><file name="jquery-noconflict.js" hash="3d8c3103282467d2cd94031dbf4a75b6"/><file name="main.css" hash="58cbab2fcea443ea9dad70bb0cd4dad8"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="fr_FR"><file name="AffinityEngine_AffinityItems.csv" hash="e8531b7ad38442694a0091c4daf586d4"/></dir></target></contents>
54
  <compatible/>
55
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
56
  </package>