Doofinder_Feed - Version 1.8.6

Version Notes

Added Price Export Mode setting to the Product Data Feed options.

Download this release

Release Info

Developer Carlos Escribano Rey
Extension Doofinder_Feed
Version 1.8.6
Comparing to
See all releases


Code changes from version 1.8.5 to 1.8.6

Files changed (47) hide show
  1. app/code/community/Doofinder/Feed/Block/Adminhtml/Log/View.php +1 -1
  2. app/code/community/Doofinder/Feed/Block/Adminhtml/Map/Additional.php +1 -1
  3. app/code/community/Doofinder/Feed/Block/Integration.php +1 -1
  4. app/code/community/Doofinder/Feed/Block/Settings/Buttons/Generate.php +1 -1
  5. app/code/community/Doofinder/Feed/Block/Settings/Buttons/ViewLog.php +1 -1
  6. app/code/community/Doofinder/Feed/Block/Settings/Panel/Crondescription.php +1 -1
  7. app/code/community/Doofinder/Feed/Block/Settings/Panel/Datetime.php +1 -1
  8. app/code/community/Doofinder/Feed/Block/Settings/Panel/Description.php +1 -1
  9. app/code/community/Doofinder/Feed/Block/Settings/Panel/File.php +1 -1
  10. app/code/community/Doofinder/Feed/Block/Settings/Panel/Layerdescription.php +1 -1
  11. app/code/community/Doofinder/Feed/Block/Settings/Panel/Message.php +1 -1
  12. app/code/community/Doofinder/Feed/Helper/Data.php +21 -316
  13. app/code/community/Doofinder/Feed/Helper/Log.php +2 -2
  14. app/code/community/Doofinder/Feed/Helper/Tax.php +10 -8
  15. app/code/community/Doofinder/Feed/Model/Adminhtml/System/Config/Backend/Cron.php +1 -1
  16. app/code/community/Doofinder/Feed/Model/Config.php +2 -2
  17. app/code/community/Doofinder/Feed/Model/Cron.php +1 -1
  18. app/code/community/Doofinder/Feed/Model/Generator.php +2 -2
  19. app/code/community/Doofinder/Feed/Model/Log.php +1 -1
  20. app/code/community/Doofinder/Feed/Model/Map/Product/Abstract.php +38 -118
  21. app/code/community/Doofinder/Feed/Model/Map/Product/Associated.php +2 -2
  22. app/code/community/Doofinder/Feed/Model/Map/Product/Bundle.php +2 -2
  23. app/code/community/Doofinder/Feed/Model/Map/Product/Configurable.php +2 -2
  24. app/code/community/Doofinder/Feed/Model/Map/Product/Downloadable.php +2 -2
  25. app/code/community/Doofinder/Feed/Model/Map/Product/Grouped.php +2 -2
  26. app/code/community/Doofinder/Feed/Model/Map/Product/Simple.php +2 -2
  27. app/code/community/Doofinder/Feed/Model/Map/Product/Virtual.php +2 -2
  28. app/code/community/Doofinder/Feed/Model/Mysql4/Cron.php +1 -1
  29. app/code/community/Doofinder/Feed/Model/Mysql4/Cron/Collection.php +1 -1
  30. app/code/community/Doofinder/Feed/Model/Mysql4/Log.php +1 -1
  31. app/code/community/Doofinder/Feed/Model/Mysql4/Log/Collection.php +1 -1
  32. app/code/community/Doofinder/Feed/Model/Observers/Feed.php +1 -1
  33. app/code/community/Doofinder/Feed/Model/Observers/Logs.php +1 -1
  34. app/code/community/Doofinder/Feed/Model/Observers/Schedule.php +1 -1
  35. app/code/community/Doofinder/Feed/Model/Resource/Mysql4/Setup.php +1 -1
  36. app/code/community/Doofinder/Feed/Model/System/Config/Backend/Map/Additional.php +1 -1
  37. app/code/community/Doofinder/Feed/Model/System/Config/Reset.php +1 -1
  38. app/code/community/Doofinder/Feed/Model/System/Config/Source/Feed/Pricetaxmode.php +31 -0
  39. app/code/community/Doofinder/Feed/Model/System/Config/Source/Product/Attributes.php +1 -1
  40. app/code/community/Doofinder/Feed/Model/Tools.php +2 -2
  41. app/code/community/Doofinder/Feed/controllers/DoofinderFeedFeedController.php +1 -1
  42. app/code/community/Doofinder/Feed/controllers/DoofinderFeedLogController.php +1 -1
  43. app/code/community/Doofinder/Feed/controllers/FeedController.php +2 -2
  44. app/code/community/Doofinder/Feed/controllers/IndexController.php +2 -2
  45. app/code/community/Doofinder/Feed/etc/config.xml +7 -1
  46. app/code/community/Doofinder/Feed/etc/system.xml +12 -2
  47. package.xml +5 -5
app/code/community/Doofinder/Feed/Block/Adminhtml/Log/View.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Adminhtml_Log_View extends Mage_Adminhtml_Block_Widget_Grid
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Adminhtml_Log_View extends Mage_Adminhtml_Block_Widget_Grid
app/code/community/Doofinder/Feed/Block/Adminhtml/Map/Additional.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Adminhtml_Map_Additional extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Adminhtml_Map_Additional extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Integration.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Integration extends Mage_Core_Block_Abstract
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Integration extends Mage_Core_Block_Abstract
app/code/community/Doofinder/Feed/Block/Settings/Buttons/Generate.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Buttons_Generate extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Buttons_Generate extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Settings/Buttons/ViewLog.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Buttons_ViewLog extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Buttons_ViewLog extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Settings/Panel/Crondescription.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_CronDescription extends Doofinder_Feed_Block_Settings_Panel_Description
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_CronDescription extends Doofinder_Feed_Block_Settings_Panel_Description
app/code/community/Doofinder/Feed/Block/Settings/Panel/Datetime.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Datetime extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Datetime extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Settings/Panel/Description.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Description extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Description extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Settings/Panel/File.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Block/Settings/Panel/Layerdescription.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_LayerDescription extends Doofinder_Feed_Block_Settings_Panel_Description
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_LayerDescription extends Doofinder_Feed_Block_Settings_Panel_Description
app/code/community/Doofinder/Feed/Block/Settings/Panel/Message.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Message extends Mage_Adminhtml_Block_System_Config_Form_Field
6
  /**
7
  * @category blocks
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Block_Settings_Panel_Message extends Mage_Adminhtml_Block_System_Config_Form_Field
app/code/community/Doofinder/Feed/Helper/Data.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Data helper for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Helper_Data extends Mage_Core_Helper_Abstract
@@ -48,332 +48,37 @@ class Doofinder_Feed_Helper_Data extends Mage_Core_Helper_Abstract
48
  const MSG_DISABLED = "The feed generator for this view is currently disabled.";
49
  const MSG_WAITING = "Waiting for registering the new process of generating the feed.";
50
 
51
-
52
  /**
53
- * $product => Product instance
54
- * $oStore => Store instance
55
- * $currencyConvert => Boolean, Convert prices to $oStore currency.
56
- * $useMinimalPrice => Boolean, See below.
57
- * $groupConfigurables => Boolean
58
- *
59
- * If $useMinimalPrice == true then, the price is checked against tier
60
- * prices. If there is a smaller price in the tier then that price is used
61
- * instead the regular one.
62
- *
63
- * So, if there is a special price defined and it is greater than the
64
- * minimal price found in tier, then it is not returned as the "sale_price".
65
  *
66
- * ----
67
- *
68
- * If a Fixed Product Tax exists for the product, then it is applied if
69
- * the $oStore settings are configured to do so.
70
- *
71
- * NOTICE: FPT are ALWAYS applied to prices including taxes. Configuration
72
- * is only applied to prices excluding taxes.
73
  */
74
- public function collectProductPrices(Mage_Catalog_Model_Product $product, $oStore, $currencyConvert=false, $useMinimalPrice=false, $groupConfigurables=true)
75
- {
76
- $this->store = $oStore;
77
- $this->currencyConvert = $currencyConvert;
78
- $this->useMinimalPrice = $useMinimalPrice;
79
- $this->groupConfigurables = $groupConfigurables;
80
-
81
- $weeeHelper = Mage::helper('weee');
82
- $taxHelper = Mage::helper('tax');
83
- $coreHelper = Mage::helper('core');
84
-
85
- // Tier Prices
86
-
87
- $tierPrices = $this->getProductTierPrices($product, $oStore);
88
-
89
- foreach ($tierPrices as $tier)
90
- {
91
- if ( is_null($this->minTierPrice) || $tier['base_price_excl_tax'] < $this->minTierPrice['base_price_excl_tax'] )
92
- {
93
- $this->minTierPrice = $tier;
94
- continue;
95
- }
96
- }
97
-
98
- if ( $product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_GROUPED )
99
- {
100
- $prices = $this->_getGroupedProductPrice($product);
101
- }
102
- elseif ( $product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE )
103
- {
104
- $prices = $this->_getBundleProductPrice($product);
105
- }
106
- else /* ! $product->isGrouped */
107
- {
108
- $prices = $this->_getProductPrice($product);
109
- }
110
-
111
- $prices = $this->_cleanPrices($prices);
112
-
113
- foreach ( array('price', 'sale_price') as $priceType )
114
- {
115
- if ( !isset($prices[$priceType]) )
116
- continue;
117
- foreach ( $prices[$priceType] as $priceMode => $priceValue )
118
- {
119
- if ( $currencyConvert ) {
120
- $priceValue = $oStore->convertPrice($priceValue, false, false);
121
- }
122
- $prices[$priceType][$priceMode] = $priceValue;
123
- }
124
- }
125
-
126
- return $prices;
127
- }
128
-
129
- protected function _cleanPrices($prices)
130
- {
131
- if (!isset($prices['price'])) return $prices;
132
- if ( isset($prices['sale_price']['excluding_tax']) &&
133
- $prices['price']['excluding_tax'] <= $prices['sale_price']['excluding_tax'] )
134
- {
135
- unset($prices['sale_price']['excluding_tax']);
136
- unset($prices['sale_price']['including_tax']);
137
- }
138
-
139
- if ( $prices['price']['excluding_tax'] <= 0 )
140
- {
141
- unset($prices['price']['excluding_tax']);
142
- unset($prices['price']['including_tax']);
143
- }
144
-
145
- return $prices;
146
- }
147
-
148
- protected function _getProductPrice($product)
149
- {
150
- $prices = array();
151
-
152
- $weeeHelper = Mage::helper('weee');
153
- $taxHelper = Mage::helper('tax');
154
- $coreHelper = Mage::helper('core');
155
-
156
- $prices['price_type'] = 'normal';
157
-
158
- $weeeTaxAmount = $weeeHelper->getAmountForDisplay($product);
159
-
160
- $weeeTaxAttributes = null;
161
-
162
- if ( $weeeHelper->typeOfDisplay($product, array(1, 2, 4), null, $this->store) )
163
- {
164
- $weeeTaxAmount = $weeeHelper->getAmount($product, null, null, $this->store->getWebsiteId(), false);
165
- $weeeTaxAttributes = $weeeHelper->getProductWeeeAttributesForDisplay($product);
166
- }
167
-
168
- // Precios originales y finales (segun Magento) sin Weee
169
-
170
- $base_price_excl_tax = $taxHelper->getPrice($product, $product->getPrice(), false, null, null, null, $this->store, null);
171
- $base_price_incl_tax = $taxHelper->getPrice($product, $product->getPrice(), true, null, null, null, $this->store, null);
172
-
173
- $final_price_excl_tax = $taxHelper->getPrice($product, $product->getFinalPrice(), false, null, null, null, $this->store, null);
174
- $final_price_incl_tax = $taxHelper->getPrice($product, $product->getFinalPrice(), true, null, null, null, $this->store, null);
175
-
176
- if ( $this->minTierPrice && $this->useMinimalPrice
177
- && $this->minTierPrice['base_price_excl_tax'] < $final_price_excl_tax)
178
- {
179
- $prices['price_type'] = 'minimal';
180
-
181
- $base_price_excl_tax = $this->minTierPrice['base_price_excl_tax'];
182
- $base_price_incl_tax = $this->minTierPrice['base_price_incl_tax'];
183
- }
184
-
185
- // Algunas preguntas
186
-
187
- $inclFptOnly = $weeeHelper->typeOfDisplay($product, 0, null, $this->store); // Including FPT only
188
- $inclFptAndDescription = $weeeHelper->typeOfDisplay($product, 1, null, $this->store); // Including FPT and FPT description
189
- $exclFptAndDescriptionFinalPrice = $weeeHelper->typeOfDisplay($product, 2, null, $this->store); // Excluding FPT, FPT description, final price
190
- $exclFpt = $weeeHelper->typeOfDisplay($product, 3, null, $this->store); // Excluding FPT
191
- $inclFptAndDescriptionWithTaxes = $weeeHelper->typeOfDisplay($product, 4, null, $this->store); // Including FPT and FPT description [incl. FPT VAT]
192
-
193
- // Elegimos y calculamos los precios finales
194
-
195
- if ( $final_price_excl_tax >= $base_price_excl_tax )
196
- {
197
- $prices['price']['excluding_tax'] = $base_price_excl_tax;
198
- $prices['price']['including_tax'] = $base_price_incl_tax;
199
-
200
- if ( $weeeTaxAmount )
201
- {
202
- $prices['price']['including_tax'] += $weeeTaxAmount;
203
-
204
- if ( $inclFptOnly || $inclFptAndDescription || $inclFptAndDescriptionWithTaxes )
205
- $prices['price']['excluding_tax'] += $weeeTaxAmount;
206
- }
207
- }
208
- else
209
- {
210
- $prices['price']['excluding_tax'] = $base_price_excl_tax;
211
- $prices['price']['including_tax'] = $base_price_incl_tax;
212
-
213
- $prices['sale_price']['excluding_tax'] = $final_price_excl_tax;
214
- $prices['sale_price']['including_tax'] = $final_price_incl_tax;
215
-
216
- $originalWeeeTaxAmount = $weeeHelper->getOriginalAmount($product);
217
-
218
- if ( $weeeTaxAmount )
219
- {
220
- $prices['price']['including_tax'] += $originalWeeeTaxAmount;
221
- $prices['sale_price']['including_tax'] += $weeeTaxAmount;
222
-
223
- if ( $inclFptOnly || $inclFptAndDescription || $inclFptAndDescriptionWithTaxes )
224
- {
225
- $prices['price']['excluding_tax'] += $originalWeeeTaxAmount;
226
- $prices['sale_price']['excluding_tax'] += $weeeTaxAmount;
227
- }
228
- }
229
- }
230
-
231
- if ( $product->getTypeId() == Mage_Catalog_Model_Product_Type::TYPE_CONFIGURABLE && $this->groupConfigurables && $this->useMinimalPrice )
232
- {
233
- $prices = $this->_getConfigurableProductPrice($product);
234
- }
235
- return $prices;
236
- }
237
-
238
- protected function _getConfigurableProductPrice($product, $prices)
239
- {
240
- $childProducts = $product->getTypeInstance()->getUsedProducts();
241
-
242
- foreach ( $childProducts as $child )
243
- {
244
- $childPrices = $this->collectProductPrices($child, $this->store, false, $this->useMinimalPrice, $this->groupConfigurables);
245
-
246
- // Compare regular price
247
- if ( $childPrices['price']['excluding_tax'] < $prices['price']['excluding_tax'] )
248
- {
249
- $prices['price']['excluding_tax'] = $childPrices['price']['excluding_tax'];
250
- $prices['price']['including_tax'] = $childPrices['price']['including_tax'];
251
- $prices['price']['overriden'] = true;
252
- }
253
-
254
- // Compare sale price
255
- if ( array_key_exists('sale_price', $childPrices) )
256
- {
257
- if ( ! array_key_exists('sale_price', $prices)
258
- || $childPrices['sale_price']['excluding_tax'] < $prices['sale_price']['excluding_tax'] )
259
- {
260
- $prices['sale_price']['excluding_tax'] = $childPrices['sale_price']['excluding_tax'];
261
- $prices['sale_price']['including_tax'] = $childPrices['sale_price']['including_tax'];
262
- $prices['sale_price']['overriden'] = true;
263
- }
264
- }
265
- }
266
- return $prices;
267
- }
268
-
269
- protected function _getGroupedProductPrice($product)
270
- {
271
- $weeeHelper = Mage::helper('weee');
272
- $taxHelper = Mage::helper('tax');
273
- $coreHelper = Mage::helper('core');
274
-
275
- $minimal_prices = array(
276
- 'price' => array(
277
- 'including_tax' => 0,
278
- 'excluding_tax' => 0
279
- ),
280
- 'sale_price' => array(
281
- 'including_tax' => 0,
282
- 'excluding_tax' => 0
283
- )
284
- );
285
-
286
- $childrenIds = $product->getTypeInstance()->getChildrenIds($product->getId());
287
- $childrenIds = $childrenIds[Mage_Catalog_Model_Product_Link::LINK_TYPE_GROUPED];
288
-
289
- if (empty($childrenIds) || !is_array($childrenIds)) {
290
- return $minimal_prices;
291
- }
292
-
293
- $collection = Mage::getModel('catalog/product')->getCollection();
294
- $collection
295
- ->addIdFilter($childrenIds)
296
- ->addAttributeToSelect('*')
297
- ->load();
298
-
299
- foreach($collection as $product)
300
- {
301
- $sub_prices = $this->collectProductPrices($product, $this->store, $this->currencyConvert, $this->useMinimalPrice, $this->groupConfigurables);
302
-
303
- if (! empty($sub_prices['price']['excluding_tax'])) {
304
- if ($minimal_prices['price']['excluding_tax'] === 0 ||
305
- $minimal_prices['price']['excluding_tax'] > $sub_prices['price']['excluding_tax'])
306
- $minimal_prices = $sub_prices;
307
- }
308
- }
309
-
310
- return $minimal_prices;
311
- }
312
-
313
- protected function _getBundleProductPrice($product)
314
  {
315
- $prices = array();
316
-
317
- $weeeHelper = Mage::helper('weee');
318
  $taxHelper = Mage::helper('tax');
319
- $coreHelper = Mage::helper('core');
320
 
321
- if ( method_exists($product->getPriceModel(), 'getTotalPrices') )
322
- {
323
- $bundle_price_excl_tax = $product->getPriceModel()->getTotalPrices($product, 'min', false, true);
324
- $bundle_price_incl_tax = $product->getPriceModel()->getTotalPrices($product, 'min', true, true);
325
- }
326
- else // Magento 1.5.0.1 + 1.5.1.0
327
- {
328
- $bundle_price_excl_tax = $product->getPriceModel()->getPricesDependingOnTax($product, 'min', false);
329
- $bundle_price_incl_tax = $product->getPriceModel()->getPricesDependingOnTax($product, 'min', true);
330
- }
331
 
332
- if ( $bundle_price_excl_tax )
333
- {
334
- $prices['price_type'] = 'minimal';
 
335
 
336
- $prices['price']['excluding_tax'] = $bundle_price_excl_tax;
337
- $prices['price']['including_tax'] = $bundle_price_incl_tax;
338
  }
339
 
340
- return $prices;
341
- }
342
-
343
- public function getProductTierPrices(Mage_Catalog_Model_Product $product, $oStore)
344
- {
345
- if (is_null($product))
346
- return array();
347
-
348
- $prices = array();
349
- $taxHelper = Mage::helper('tax');
350
-
351
- // Get Tier Prices
352
-
353
- $tierPrices = $product->getTierPrice(null);
354
-
355
- if (! is_array($tierPrices))
356
- $tierPrices = (array) $tierPrices;
357
-
358
- foreach ( $tierPrices as $price )
359
- {
360
- $result = array();
361
-
362
- if ( $price['website_id'] != $oStore->getWebsiteId() && $price['website_id'] != 0 )
363
- continue;
364
-
365
- $result['price_qty'] = $price['price_qty'] * 1; // make int
366
-
367
- if ( $price['price'] < $product->getFinalPrice() )
368
- $result['save_percent'] = ceil(100 - ((100 / $product->getFinalPrice()) * $price['price']));
369
-
370
- $result['base_price_excl_tax'] = $taxHelper->getPrice($product, $price['website_price'], false, null, null, null, $oStore, null);
371
- $result['base_price_incl_tax'] = $taxHelper->getPrice($product, $price['website_price'], true, null, null, null, $oStore, null);
372
-
373
- $prices[] = $result;
374
  }
375
 
376
- return $prices;
377
  }
378
 
379
  /**
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Data helper for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Helper_Data extends Mage_Core_Helper_Abstract
48
  const MSG_DISABLED = "The feed generator for this view is currently disabled.";
49
  const MSG_WAITING = "Waiting for registering the new process of generating the feed.";
50
 
 
51
  /**
52
+ * Get product price
 
 
 
 
 
 
 
 
 
 
 
53
  *
54
+ * @param Magento_Catalog_Model_Product $product
55
+ * @param string $attribute = 'price'
56
+ * @param boolean|null $tax = null
57
+ * @return float
 
 
 
58
  */
59
+ public function getProductPrice(Magento_Catalog_Model_Product $product, $attribute = 'price', $tax = null)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
60
  {
 
 
 
61
  $taxHelper = Mage::helper('tax');
 
62
 
63
+ switch ($attribute) {
64
+ case 'price':
65
+ $price = $product->getData('price');
66
+ break;
 
 
 
 
 
 
67
 
68
+ case 'sale_price':
69
+ $salePrice = $product->getPriceModel()->getFinalPrice(null, $product);
70
+ $price = $product->getData('price') == $salePrice ? null : $salePrice;
71
+ break;
72
 
73
+ default:
74
+ $price = null;
75
  }
76
 
77
+ if ($tax === null) {
78
+ $tax = $taxHelper->getPriceDisplayType() != Mage_Tax_Model_Config::DISPLAY_TYPE_EXCLUDING_TAX;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
79
  }
80
 
81
+ return $taxHelper->getPrice($product, $price, $tax);
82
  }
83
 
84
  /**
app/code/community/Doofinder/Feed/Helper/Log.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Log helper for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Helper_Log extends Mage_Core_Helper_Abstract
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Log helper for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Helper_Log extends Mage_Core_Helper_Abstract
app/code/community/Doofinder/Feed/Helper/Tax.php CHANGED
@@ -6,19 +6,21 @@
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
- /**
13
- * Tax helper for Doofinder Feed
14
- *
15
- * @version 1.8.5
16
- * @package Doofinder_Feed
17
- */
18
  class Doofinder_Feed_Helper_Tax extends Mage_Tax_Helper_Data
19
  {
20
  public function needPriceConversion($store = null)
21
  {
22
- return true;
 
 
 
 
 
 
 
 
23
  }
24
  }
6
  /**
7
  * @category Helpers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
 
 
 
 
 
 
12
  class Doofinder_Feed_Helper_Tax extends Mage_Tax_Helper_Data
13
  {
14
  public function needPriceConversion($store = null)
15
  {
16
+ $needPriceConversion = parent::needPriceConversion($store);
17
+
18
+ // Already needs price conversion so do nothig
19
+ if ($needPriceConversion !== false) {
20
+ return $needPriceConversion;
21
+ }
22
+ $taxMode = Mage::getStoreConfig('doofinder_cron/feed_settings/price_tax_mode', $store);
23
+ // Force price conversion only in case of 'with tax' price export mode
24
+ return $taxMode == Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode::MODE_WITH_TAX;
25
  }
26
  }
app/code/community/Doofinder/Feed/Model/Adminhtml/System/Config/Backend/Cron.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Adminhtml_System_Config_Backend_Cron extends Mage_Core_Model_Config_Data {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Adminhtml_System_Config_Backend_Cron extends Mage_Core_Model_Config_Data {
app/code/community/Doofinder/Feed/Model/Config.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Config model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Config extends Mage_Core_Model_Config_Data
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Config model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Config extends Mage_Core_Model_Config_Data
app/code/community/Doofinder/Feed/Model/Cron.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Cron extends Mage_Core_Model_Abstract {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Cron extends Mage_Core_Model_Abstract {
app/code/community/Doofinder/Feed/Model/Generator.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Generator model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  if (!defined('DS'))
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Generator model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  if (!defined('DS'))
app/code/community/Doofinder/Feed/Model/Log.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Log extends Mage_Core_Model_Abstract {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Log extends Mage_Core_Model_Abstract {
app/code/community/Doofinder/Feed/Model/Map/Product/Abstract.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Abstract Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
@@ -213,83 +213,60 @@ class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
213
  return $this->mapDirectiveImageLink($args, 'small_image');
214
  }
215
 
216
- public function collectProductPrices()
 
 
 
 
 
 
 
217
  {
218
- if ( ! $this->getData('collected_product_prices') )
219
- {
220
- $dataHelper = Mage::helper('doofinder_feed');
221
- $taxHelper = Mage::helper('tax');
222
-
223
- $datum = $dataHelper->collectProductPrices(
224
- $this->getProduct(),
225
- $this->getGenerator()->getStore(),
226
- true,
227
- $this->getGenerator()->getData('minimal_price'),
228
- $this->getGenerator()->getData('grouped')
229
- );
230
 
231
- $priceDisplayType = $taxHelper->getPriceDisplayType($this->getGenerator()->getStore());
 
 
 
 
 
232
 
233
- if ( $priceDisplayType == Mage_Tax_Model_Config::DISPLAY_TYPE_INCLUDING_TAX
234
- || $priceDisplayType == Mage_Tax_Model_Config::DISPLAY_TYPE_BOTH )
235
- {
236
- $priceKey = 'including_tax';
237
- }
238
- else
239
- {
240
- $priceKey = 'excluding_tax';
241
  }
 
242
 
243
- $priceType = isset($datum['price_type']) ? $datum['price_type'] : false;
244
 
245
- $prices = array(
246
- 'price_type' => $priceType,
247
- );
248
 
249
- foreach ( $datum as $priceType => $data ) {
250
- if ( !is_array($data) ) continue;
251
 
252
- foreach ( $data as $key => $price ) {
253
- if ( $key == $priceKey ) {
254
- $prices[$priceType] = $data[$key];
255
- }
256
- }
257
- }
258
 
259
- $this->setData('collected_product_prices', $prices);
260
- }
 
261
 
262
- return $this->getData('collected_product_prices');
 
 
263
  }
264
 
265
  protected function mapDirectivePrice()
266
  {
267
- $prices = $this->collectProductPrices();
268
-
269
- if ( ! array_key_exists('price', $prices) )
270
- return null;
271
-
272
- $fieldData = $this->cleanField($prices['price']);
273
-
274
- if ( $fieldData < 0 )
275
- $this->skip = true;
276
-
277
- return $fieldData;
278
  }
279
 
280
  protected function mapDirectiveSalePrice()
281
  {
282
- $prices = $this->collectProductPrices();
283
-
284
- if ( ! array_key_exists('sale_price', $prices) )
285
- return null;
286
-
287
- $fieldData = $this->cleanField($prices['sale_price']);
288
-
289
- if ( $fieldData <= 0 )
290
- return null;
291
-
292
- return $fieldData;
293
  }
294
 
295
  protected function mapDirectiveCurrency()
@@ -466,63 +443,6 @@ class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
466
  return $assocIds;
467
  }
468
 
469
- public function getPrice()
470
- {
471
- return $this->getProduct()->getPrice();
472
- }
473
-
474
- public function calcMinimalPrice($product)
475
- {
476
- return $product->getMinimalPrice();
477
- }
478
-
479
- public function getSpecialPrice()
480
- {
481
- return $this->getProduct()->getSpecialPrice();
482
- }
483
-
484
- public function hasSpecialPrice()
485
- {
486
- $has = false;
487
- $product = $this->getProduct();
488
-
489
- if ($this->getSpecialPrice() <= 0)
490
- return $has;
491
- if (is_empty_date($product->getSpecialFromDate()))
492
- return $has;
493
-
494
- $cDate = Mage::app()->getLocale()->date(null, null, Mage::app()->getLocale()->getDefaultLocale());
495
- $timezone = Mage::app()->getStore($this->getStoreId())->getConfig(Mage_Core_Model_Locale::XML_PATH_DEFAULT_TIMEZONE);
496
-
497
- $fromDate = new Zend_Date(null, null, Mage::app()->getLocale()->getDefaultLocale());
498
- if ($timezone) $fromDate->setTimezone($timezone);
499
- $fromDate->setDate(substr($product->getSpecialFromDate(), 0, 10), 'yyyy-MM-dd');
500
- $fromDate->setTime(substr($product->getSpecialFromDate(), 11, 8), 'HH:mm:ss');
501
-
502
- $toDate = new Zend_Date(null, null, Mage::app()->getLocale()->getDefaultLocale());
503
- if (!is_empty_date($product->getSpecialToDate())) {
504
- if ($timezone) $toDate->setTimezone($timezone);
505
- $toDate->setDate(substr($product->getSpecialToDate(), 0, 10), 'yyyy-MM-dd');
506
- $toDate->setTime('23:59:59', 'HH:mm:ss');
507
- } else {
508
- if ($timezone) $toDate->setTimezone($timezone);
509
- $toDate->setDate($cDate->toString('yyyy-MM-dd'), 'yyyy-MM-dd');
510
- $toDate->setTime('23:59:59', 'HH:mm:ss');
511
- $toDate->add(7, Zend_Date::DAY);
512
- }
513
-
514
- if (($fromDate->compare($cDate) == -1
515
- || $fromDate->compare($cDate) == 0)
516
- && ($toDate->compare($cDate) == 1
517
- || $toDate->compare($cDate) == 0))
518
- {
519
- $has = true;
520
- }
521
-
522
- return $has;
523
- }
524
-
525
-
526
  //
527
  // protected::Tools
528
  //
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Abstract Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
213
  return $this->mapDirectiveImageLink($args, 'small_image');
214
  }
215
 
216
+ /**
217
+ * Get product price
218
+ *
219
+ * @param \Magento\Catalog\Model\Product $product
220
+ * @param string $field
221
+ * @return string|null
222
+ */
223
+ protected function getProductPrice($field)
224
  {
225
+ if (!Mage::getStoreConfig('doofinder_cron/feed_settings/display_price', $this->getStoreCode())) {
226
+ return null;
227
+ }
 
 
 
 
 
 
 
 
 
228
 
229
+ $tax = null;
230
+ if (Mage::helper('tax')->needPriceConversion($this->getStoreCode())) {
231
+ switch (Mage::getStoreConfig('doofinder_cron/feed_settings/price_tax_mode', $this->getStoreCode())) {
232
+ case Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode::MODE_WITH_TAX:
233
+ $tax = true;
234
+ break;
235
 
236
+ case Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode::MODE_WITHOUT_TAX:
237
+ $tax = false;
238
+ break;
 
 
 
 
 
239
  }
240
+ }
241
 
242
+ $price = Mage::helper('doofinder_feed')->getProductPrice($this->getProduct(), $field, $tax);
243
 
244
+ if ($price === null) {
245
+ return $price;
246
+ }
247
 
248
+ $store = Mage::app()->getStore($this->getStoreCode());
 
249
 
250
+ // Convert price to store currency
251
+ $price = Mage::helper('core')->currencyByStore($price, $store, false, false);
 
 
 
 
252
 
253
+ // Format price with store currency
254
+ return $store->getCurrentCurrency()->format($price, array('display' => Zend_Currency::NO_SYMBOL), false);
255
+ }
256
 
257
+ protected function mapFieldPrice()
258
+ {
259
+ return $this->mapDirectivePrice();
260
  }
261
 
262
  protected function mapDirectivePrice()
263
  {
264
+ return $this->getProductPrice('price');
 
 
 
 
 
 
 
 
 
 
265
  }
266
 
267
  protected function mapDirectiveSalePrice()
268
  {
269
+ return $this->getProductPrice('sale_price');
 
 
 
 
 
 
 
 
 
 
270
  }
271
 
272
  protected function mapDirectiveCurrency()
443
  return $assocIds;
444
  }
445
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
446
  //
447
  // protected::Tools
448
  //
app/code/community/Doofinder/Feed/Model/Map/Product/Associated.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Associated Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Associated
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Associated Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Associated
app/code/community/Doofinder/Feed/Model/Map/Product/Bundle.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Bundle Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Bundle
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Bundle Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Bundle
app/code/community/Doofinder/Feed/Model/Map/Product/Configurable.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Configurable Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Configurable
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Configurable Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Configurable
app/code/community/Doofinder/Feed/Model/Map/Product/Downloadable.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Downloadable Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Downloadable
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Downloadable Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Downloadable
app/code/community/Doofinder/Feed/Model/Map/Product/Grouped.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Grouped Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Grouped
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Grouped Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Grouped
app/code/community/Doofinder/Feed/Model/Map/Product/Simple.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Simple Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Simple
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Simple Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Simple
app/code/community/Doofinder/Feed/Model/Map/Product/Virtual.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Virtual Product Map Model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Virtual
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Virtual Product Map Model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Map_Product_Virtual
app/code/community/Doofinder/Feed/Model/Mysql4/Cron.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Cron extends Mage_Core_Model_Mysql4_Abstract {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Cron extends Mage_Core_Model_Mysql4_Abstract {
app/code/community/Doofinder/Feed/Model/Mysql4/Cron/Collection.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Cron_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Cron_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
app/code/community/Doofinder/Feed/Model/Mysql4/Log.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Log extends Mage_Core_Model_Mysql4_Abstract {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Log extends Mage_Core_Model_Mysql4_Abstract {
app/code/community/Doofinder/Feed/Model/Mysql4/Log/Collection.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Log_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Mysql4_Log_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
app/code/community/Doofinder/Feed/Model/Observers/Feed.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Feed
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Feed
app/code/community/Doofinder/Feed/Model/Observers/Logs.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Logs
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Logs
app/code/community/Doofinder/Feed/Model/Observers/Schedule.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Schedule
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Observers_Schedule
app/code/community/Doofinder/Feed/Model/Resource/Mysql4/Setup.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_Resource_Mysql4_Setup extends Mage_Core_Model_Resource_Setup {
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_Resource_Mysql4_Setup extends Mage_Core_Model_Resource_Setup {
app/code/community/Doofinder/Feed/Model/System/Config/Backend/Map/Additional.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Backend_Map_Additional extends Mage_Adminhtml_Model_System_Config_Backend_Serialized
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Backend_Map_Additional extends Mage_Adminhtml_Model_System_Config_Backend_Serialized
app/code/community/Doofinder/Feed/Model/System/Config/Reset.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Reset extends Mage_Core_Model_Config_Data
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Reset extends Mage_Core_Model_Config_Data
app/code/community/Doofinder/Feed/Model/System/Config/Source/Feed/Pricetaxmode.php ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * This file is part of Doofinder_Feed.
4
+ */
5
+
6
+ /**
7
+ * @category Models
8
+ * @package Doofinder_Feed
9
+ * @version 1.8.6
10
+ */
11
+
12
+ class Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode
13
+ {
14
+ const MODE_AUTO = 0;
15
+ const MODE_WITH_TAX = 1;
16
+ const MODE_WITHOUT_TAX = -1;
17
+
18
+ /**
19
+ * Options getter
20
+ *
21
+ * @return array
22
+ */
23
+ public function toOptionArray()
24
+ {
25
+ return [
26
+ ['value' => 0, 'label' => __('Auto')],
27
+ ['value' => 1, 'label' => __('With Tax')],
28
+ ['value' => -1, 'label' => __('Without Tax')],
29
+ ];
30
+ }
31
+ }
app/code/community/Doofinder/Feed/Model/System/Config/Source/Product/Attributes.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Source_Product_Attributes
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_Model_System_Config_Source_Product_Attributes
app/code/community/Doofinder/Feed/Model/Tools.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Tools model for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Tools extends Varien_Object
6
  /**
7
  * @category Models
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Tools model for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_Model_Tools extends Varien_Object
app/code/community/Doofinder/Feed/controllers/DoofinderFeedFeedController.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_DoofinderFeedFeedController extends Mage_Adminhtml_Controller_Action
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_DoofinderFeedFeedController extends Mage_Adminhtml_Controller_Action
app/code/community/Doofinder/Feed/controllers/DoofinderFeedLogController.php CHANGED
@@ -6,7 +6,7 @@
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  class Doofinder_Feed_DoofinderFeedLogController extends Mage_Adminhtml_Controller_Action
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  class Doofinder_Feed_DoofinderFeedLogController extends Mage_Adminhtml_Controller_Action
app/code/community/Doofinder/Feed/controllers/FeedController.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Feed controller for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_FeedController extends Mage_Core_Controller_Front_Action
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Feed controller for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_FeedController extends Mage_Core_Controller_Front_Action
app/code/community/Doofinder/Feed/controllers/IndexController.php CHANGED
@@ -6,13 +6,13 @@
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
- * @version 1.8.5
10
  */
11
 
12
  /**
13
  * Index controller for Doofinder Feed
14
  *
15
- * @version 1.8.5
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_IndexController extends Mage_Core_Controller_Front_Action
6
  /**
7
  * @category controllers
8
  * @package Doofinder_Feed
9
+ * @version 1.8.6
10
  */
11
 
12
  /**
13
  * Index controller for Doofinder Feed
14
  *
15
+ * @version 1.8.6
16
  * @package Doofinder_Feed
17
  */
18
  class Doofinder_Feed_IndexController extends Mage_Core_Controller_Front_Action
app/code/community/Doofinder/Feed/etc/config.xml CHANGED
@@ -3,7 +3,7 @@
3
 
4
  <modules>
5
  <Doofinder_Feed>
6
- <version>1.8.5</version>
7
  </Doofinder_Feed>
8
  </modules>
9
  <global>
@@ -11,6 +11,11 @@
11
  <doofinder_feed>
12
  <class>Doofinder_Feed_Helper</class>
13
  </doofinder_feed>
 
 
 
 
 
14
  </helpers>
15
  <models>
16
  <doofinder_feed>
@@ -248,6 +253,7 @@
248
  <image_size></image_size>
249
  <atomic_updates_enabled>0</atomic_updates_enabled>
250
  <categories_in_navigation>0</categories_in_navigation>
 
251
  </feed_settings>
252
  <attributes_mapping>
253
  <id>df_directive_id</id>
3
 
4
  <modules>
5
  <Doofinder_Feed>
6
+ <version>1.8.6</version>
7
  </Doofinder_Feed>
8
  </modules>
9
  <global>
11
  <doofinder_feed>
12
  <class>Doofinder_Feed_Helper</class>
13
  </doofinder_feed>
14
+ <tax>
15
+ <rewrite>
16
+ <data>Doofinder_Feed_Helper_Tax</data>
17
+ </rewrite>
18
+ </tax>
19
  </helpers>
20
  <models>
21
  <doofinder_feed>
253
  <image_size></image_size>
254
  <atomic_updates_enabled>0</atomic_updates_enabled>
255
  <categories_in_navigation>0</categories_in_navigation>
256
+ <price_tax_mode>0</price_tax_mode>
257
  </feed_settings>
258
  <attributes_mapping>
259
  <id>df_directive_id</id>
app/code/community/Doofinder/Feed/etc/system.xml CHANGED
@@ -209,11 +209,21 @@
209
  <show_in_website>0</show_in_website>
210
  <show_in_store>1</show_in_store>
211
  </grouped>
 
 
 
 
 
 
 
 
 
 
212
  <image_size translate="label">
213
  <label>Image size</label>
214
  <comment>Export product image with given width. Leave empty to use original size.</comment>
215
  <frontend_type>text</frontend_type>
216
- <sort_order>9</sort_order>
217
  <show_in_default>1</show_in_default>
218
  <show_in_website>0</show_in_website>
219
  <show_in_store>1</show_in_store>
@@ -233,7 +243,7 @@
233
  <frontend_type>select</frontend_type>
234
  <comment>Whether this option is enabled or not, only active categories will be exported.</comment>
235
  <source_model>adminhtml/system_config_source_yesno</source_model>
236
- <sort_order>10</sort_order>
237
  <show_in_default>1</show_in_default>
238
  <show_in_website>0</show_in_website>
239
  <show_in_store>1</show_in_store>
209
  <show_in_website>0</show_in_website>
210
  <show_in_store>1</show_in_store>
211
  </grouped>
212
+ <price_tax_mode translate="label">
213
+ <label>Price Export Mode</label>
214
+ <comment>Export product price tax mode: Auto - use catalog display setting; With tax - export prices with tax; Without tax - export prices without tax.</comment>
215
+ <frontend_type>select</frontend_type>
216
+ <source_model>doofinder_feed/system_config_source_feed_pricetaxmode</source_model>
217
+ <sort_order>9</sort_order>
218
+ <show_in_default>1</show_in_default>
219
+ <show_in_website>0</show_in_website>
220
+ <show_in_store>1</show_in_store>
221
+ </price_tax_mode>
222
  <image_size translate="label">
223
  <label>Image size</label>
224
  <comment>Export product image with given width. Leave empty to use original size.</comment>
225
  <frontend_type>text</frontend_type>
226
+ <sort_order>10</sort_order>
227
  <show_in_default>1</show_in_default>
228
  <show_in_website>0</show_in_website>
229
  <show_in_store>1</show_in_store>
243
  <frontend_type>select</frontend_type>
244
  <comment>Whether this option is enabled or not, only active categories will be exported.</comment>
245
  <source_model>adminhtml/system_config_source_yesno</source_model>
246
+ <sort_order>11</sort_order>
247
  <show_in_default>1</show_in_default>
248
  <show_in_website>0</show_in_website>
249
  <show_in_store>1</show_in_store>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Doofinder_Feed</name>
4
- <version>1.8.5</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
7
  <channel>community</channel>
@@ -48,11 +48,11 @@ Doofinder is fast and innovative. With no doubt, it is the best search engine fo
48
  You can get more info and create your account visiting the Doofinder site:&#xD;
49
  &#xD;
50
  http://www.doofinder.com</description>
51
- <notes>Fix availability in configurable products.</notes>
52
  <authors><author><name>Carlos Escribano Rey</name><user>doofinder</user><email>carlos@doofinder.com</email></author></authors>
53
- <date>2017-04-03</date>
54
- <time>07:43:33</time>
55
- <contents><target name="magecommunity"><dir name="Doofinder"><dir name="Feed"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="View.php" hash="86dabbcf4a30d9feff89aefaf3948deb"/></dir><dir name="Map"><file name="Additional.php" hash="6e08e08d26f94270cbfd2859dfea36cc"/></dir></dir><file name="Integration.php" hash="24f1efcf417ffbe5fc9ebf193acc5ccf"/><dir name="Settings"><dir name="Buttons"><file name="Generate.php" hash="7ecafc93fe80a1885a128da989a6d46d"/><file name="ViewLog.php" hash="855edf08fd893f4ef62c9edcbcfc8f63"/></dir><dir name="Panel"><file name="Cron.php" hash="e93e0471544eef8d6cc1ea5c2a8037dd"/><file name="Crondescription.php" hash="970d79e71d29780982eace2163f81c98"/><file name="Datetime.php" hash="9128b4a552fc091ce2624450ffb7fed0"/><file name="Description.php" hash="cb3bf408312ba2818f7d896a8e98142a"/><file name="File.php" hash="e002a659f73d6c8f6caf32ba49213cc9"/><file name="Hashdescription.php" hash="707aa2f0eff7a1e170e6355787e09e84"/><file name="Layerdescription.php" hash="b891639558afa66b4725ec945d50b9ad"/><file name="Message.php" hash="4038ee24324db68e1a915ef0d8ec1b3f"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="8e2779361fca716903e111a451fc0c14"/><file name="Log.php" hash="1e0a95883b9d1d0f78caff87a4f728a6"/><file name="Search.php" hash="adedec93e07dadb8edfcac8dd74fa07c"/><file name="Tax.php" hash="dc97dca7cb75d62f0ee544b88147fa40"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><file name="Cron.php" hash="355063d26cd1c9f678aad6c0323edc70"/></dir><dir name="Validation"><file name="Hashid.php" hash="5c84ddebe10442c48bc8bca05a9253d1"/></dir></dir></dir></dir><dir name="CatalogSearch"><dir name="Resource"><file name="Fulltext.php" hash="a3ece9fe463669dc6c16a232f7160aba"/></dir></dir><file name="Config.php" hash="5a30c9fcde61ce7f59ed39817e66cb5a"/><file name="Cron.php" hash="4c4b011ad4f1f431580a9d1856cbd227"/><file name="Generator.php" hash="9c28e74d40f3cb9ff7eb97766d9f6fa1"/><file name="Log.php" hash="08007119f8e740663f461163c0be7f6e"/><dir name="Map"><dir name="Product"><file name="Abstract.php" hash="8f5c08cafe0b92ebfb30fed420759f8e"/><file name="Associated.php" hash="1f12d6aafd468ab0eaa1cf14704113c9"/><file name="Bundle.php" hash="e45edb4e2fa6d03749ac2f165daf3746"/><file name="Configurable.php" hash="d9fe9787ab3e498522913ceee8a34e11"/><file name="Downloadable.php" hash="3ba4d0c2fe445f950046ba5c0f6a7925"/><file name="Grouped.php" hash="5fcb4f4042cb5daa14fe717ddde16ee1"/><file name="Simple.php" hash="f21fcb6d76c3bbadbc6036d0ac0ac9b2"/><file name="Virtual.php" hash="55bda1925b78d71b2bdd9cc5ee9c15be"/></dir></dir><dir name="Mysql4"><dir name="Cron"><file name="Collection.php" hash="7d25e745da816ab9f72fd0c77a49caed"/></dir><file name="Cron.php" hash="480254a989d777dbe4cb45aa39b7aaa2"/><dir name="Log"><file name="Collection.php" hash="b0710ae49ad9145a2f235d62538b458a"/></dir><file name="Log.php" hash="1c81df44305172b8e7a3d3e9dd42548a"/></dir><dir name="Observers"><file name="Feed.php" hash="34de36d26aad1ed5ed5c80e130675544"/><file name="Logs.php" hash="8e05ae436a924cb262b5b6246ffb6aa6"/><file name="Schedule.php" hash="01b17598e5951964f68e0d3791b7c318"/></dir><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="bf8969c2406dc8bad2109f10f750265c"/></dir></dir><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Map"><file name="Additional.php" hash="882b78b845326f6b0af28b7d8cce538c"/></dir><file name="Password.php" hash="b52b0e16c0ae02fd528bf5c567a7a8b5"/><dir name="Total"><file name="Limit.php" hash="a23092ea72cbe81e2779b086ad055bf6"/></dir></dir><file name="Reset.php" hash="140c6a9e09256cacd3c85879b4f39dee"/><dir name="Source"><dir name="Product"><file name="Attributes.php" hash="8bfda6da55cc2647b9285adeee91d401"/></dir></dir></dir></dir><file name="Tools.php" hash="1b704554c7cad12ad91ac143a31b288b"/></dir><dir name="Test"><dir name="Controller"><dir name="Index"><dir name="fixtures"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="694cf25a35a9a301a8ae678866937909"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir><dir name="providers"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="1ea2f638be8fdcea22ef47767ed8d7db"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir></dir><file name="Index.php" hash="2771de706303653d039818bd0f6590ea"/></dir><dir name="Model"><dir name="Product"><dir name="expectations"><file name="testGenerator.yaml" hash="232dda1f4fd88b8ef081393f08044731"/></dir><dir name="fixtures"><file name="testGenerator.yaml" hash="df25e3ca67fd98ab1b933c4951c599ef"/></dir><dir name="providers"><file name="testGenerator.yaml" hash="84779d5dcd8d92abdecf0cd5ee65cfb0"/></dir></dir><file name="Product.php" hash="6c45ae2b36c6cc721ef634855ed6d596"/></dir></dir><dir name="controllers"><file name="DoofinderFeedFeedController.php" hash="2f9949a956973144f888fe40b1f278db"/><file name="DoofinderFeedLogController.php" hash="a8ff195f8042e3f9d31156a2c053b3a7"/><file name="FeedController.php" hash="dbe05505b99010f6e1396937799698c9"/><file name="IndexController.php" hash="77807a962a9ce2592c9d352bce29fc8e"/></dir><dir name="etc"><file name="config.xml" hash="b82ffed226db01ba6a86c94fe96a8a83"/><file name="system.xml" hash="70700f4423a64e4af4368cbcf6082023"/></dir><dir name="sql"><dir name="doofinder_feed_setup"><file name="mysql4-install-1.5.4.php" hash="9dc5ed4e10febbe75ab1911259a1c9fe"/><file name="mysql4-install-1.5.7.php" hash="85baa03d9c4d76f6b744ba107c21f8da"/><file name="mysql4-upgrade-1.5.4-1.5.5.php" hash="df7158f6d6cdded9bdfc5cb72c1dc8e3"/><file name="mysql4-upgrade-1.5.5-1.5.6.php" hash="0f3ca5263356a0bc83d9352b463944dc"/><file name="mysql4-upgrade-1.5.6-1.5.7.php" hash="b0180770655f36d6723483aa3bd1541f"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Doofinder_Feed.xml" hash="9d3b6fbbbec12708461c33260715451c"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="a7b9105a4e613086340b042845793d9f"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="48a8636096950914917461260416c355"/></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="doofinder"><file name="admin.js" hash="ca050b0527ae101c75532fbca1c4a274"/></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="doofinder"><file name="styles.css" hash="d6ec303c3199db3ab4dffa8d2491105e"/></dir></dir></dir></dir></target><target name="magelib"><dir name="php-doofinder"><file name="CHANGELOG.txt" hash="b4fc19b1cb37810d8faa6a1e784ab32b"/><file name="README.md" hash="f9eda30362e3356947f86a9248122c2f"/><file name="autoload.php" hash="1ab27f8a639e30c5a25a6100f1a3035d"/><file name="composer.json" hash="76f54c3a763a3ae683fa677106b41027"/><file name="phpunit.xml" hash="97d89bb72790578c7ca60aebe7e3b1dd"/><dir name="src"><dir name="Management"><file name="AggregatesIterator.php" hash="431618213beb8294f6cab35376c935c8"/><file name="Client.php" hash="3d4dc1dbabcb42c7b1e4835ff5056d21"/><dir name="Errors"><file name="BadRequest.php" hash="45113fccee9500f4ee2a20e845ef8ee2"/><file name="NotAllowed.php" hash="98169302570fcf34a49277c5afbbed20"/><file name="NotFound.php" hash="9b08d95a549cfaea5562ecfa74a28746"/><file name="NotProcessedResponse.php" hash="63984cfbe90b6912e8d53faa293e65d6"/><file name="QuotaExhausted.php" hash="75f95704e509d7b5a4c61ebdb76208f5"/><file name="ThrottledResponse.php" hash="d3cd9c6df62246b5c3e80de3e1ecfc9c"/><file name="Utils.php" hash="be1220fc529292e8cc723dc9f68ef81d"/><file name="WrongResponse.php" hash="3c0fd79d6c04ac2c8f93984912369333"/></dir><file name="ItemsResultSet.php" hash="67532bd88b478fb4e0ce9f05d2ffd94a"/><file name="ScrollIterator.php" hash="0d916403f85a791af8e4e2240ad9e1be"/><file name="SearchEngine.php" hash="417e44ce9f11be52d3a6679161014eb8"/><file name="TopTermsIterator.php" hash="9ef2a784ce1d2cae81e577ce8c13ed08"/></dir><dir name="Search"><file name="Client.php" hash="857ed6a6594776f3060d87c2c9b86aca"/><file name="Error.php" hash="38a4283a860ed443f43a8452cc931c99"/><file name="Results.php" hash="87417657ec8a4908d6fd35868b782d7e"/></dir><dir name="Test"><dir name="Management"><file name="AggregatesIteratorTest.php" hash="eb9abdc3de26ac6396efc007373906ca"/><file name="ClientTest.php" hash="9958013403856eab97a44a14b8c32569"/><file name="ScrollIteratorTest.php" hash="34ef0111f1bb3633e6950151efd5e3ec"/><file name="SearchEngineTest.php" hash="a354a2e690851ab8d2b9a41495fcd979"/><file name="TopTermsIteratorTest.php" hash="9804ca4b89dce16d1e89b6614c11c2c0"/></dir><dir name="Search"><file name="ClientTest.php" hash="6aeac0a72fc4a4798233dfde15014543"/><file name="ResultsTests.php" hash="64503776af865c5d23e261b71d36a6bc"/></dir></dir></dir></dir></target></contents>
56
  <compatible/>
57
  <dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
58
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Doofinder_Feed</name>
4
+ <version>1.8.6</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
7
  <channel>community</channel>
48
  You can get more info and create your account visiting the Doofinder site:&#xD;
49
  &#xD;
50
  http://www.doofinder.com</description>
51
+ <notes>Added Price Export Mode setting to the Product Data Feed options.</notes>
52
  <authors><author><name>Carlos Escribano Rey</name><user>doofinder</user><email>carlos@doofinder.com</email></author></authors>
53
+ <date>2017-05-12</date>
54
+ <time>07:46:06</time>
55
+ <contents><target name="magecommunity"><dir name="Doofinder"><dir name="Feed"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="View.php" hash="40b4bcf5b362dabde5dd319a60f439ef"/></dir><dir name="Map"><file name="Additional.php" hash="0f1e52deeb1346c1e1e4be47daff3ba7"/></dir></dir><file name="Integration.php" hash="5c6f65d7e49232aef46bbd47985a35c3"/><dir name="Settings"><dir name="Buttons"><file name="Generate.php" hash="c791c6d49e03753cad4503685e2582e6"/><file name="ViewLog.php" hash="513725b3bb031e4e4f9a2155990c8596"/></dir><dir name="Panel"><file name="Cron.php" hash="e93e0471544eef8d6cc1ea5c2a8037dd"/><file name="Crondescription.php" hash="3794347b2d47b2a9d1ebc1d13fdee0a8"/><file name="Datetime.php" hash="9ffa1041671e44112eb130949d050941"/><file name="Description.php" hash="6bfc26b68814fc03eb4c0e75fe543830"/><file name="File.php" hash="7b9d57f1777e035225df37b4eeb1148f"/><file name="Hashdescription.php" hash="707aa2f0eff7a1e170e6355787e09e84"/><file name="Layerdescription.php" hash="255f8155b17629031e3c8caa3df7da2a"/><file name="Message.php" hash="6a287855398337fadbf8e2a95c3404bf"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="04c27f082b6aa665548c874cd2981bcf"/><file name="Log.php" hash="068995e716183572f5e2df5e015684c8"/><file name="Search.php" hash="adedec93e07dadb8edfcac8dd74fa07c"/><file name="Tax.php" hash="276b41c9f3df73865261bde361f1d52e"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><file name="Cron.php" hash="3287ff79371e7862876da0270b937706"/></dir><dir name="Validation"><file name="Hashid.php" hash="5c84ddebe10442c48bc8bca05a9253d1"/></dir></dir></dir></dir><dir name="CatalogSearch"><dir name="Resource"><file name="Fulltext.php" hash="a3ece9fe463669dc6c16a232f7160aba"/></dir></dir><file name="Config.php" hash="715d41cbe9e8e328ce85879db6e1f997"/><file name="Cron.php" hash="d529048f2d57b6fb861f2db73e393e0c"/><file name="Generator.php" hash="3cfb5e12c854a59371965ddde36e9a2d"/><file name="Log.php" hash="7fa6875b1daaff914ac9284586c3500b"/><dir name="Map"><dir name="Product"><file name="Abstract.php" hash="85c7d7e8525e4821077c16c75505d1ce"/><file name="Associated.php" hash="8c099ab689d17a6fcdd0941902decd9b"/><file name="Bundle.php" hash="be71e7b9272ac155fc79eb664652bc82"/><file name="Configurable.php" hash="27706911b4ae645f754cda798decae1c"/><file name="Downloadable.php" hash="f89836f5587ec3d56d651162946768d1"/><file name="Grouped.php" hash="2e54adc3e91d24b203665a149f0d7c0e"/><file name="Simple.php" hash="e5b6c1c3d6aadc394b4fa58253f2a7d5"/><file name="Virtual.php" hash="130ccec4ff709f85b4d45e938503d13c"/></dir></dir><dir name="Mysql4"><dir name="Cron"><file name="Collection.php" hash="9ffcc4f22a61f950fc6d6623a9ba2cf3"/></dir><file name="Cron.php" hash="70c6f2606300d73f6bfb9c3db8488078"/><dir name="Log"><file name="Collection.php" hash="a8fe83577936f433399982ee879ce2d7"/></dir><file name="Log.php" hash="eaa0a5571075a7aa201ed1ac7edd2304"/></dir><dir name="Observers"><file name="Feed.php" hash="77a0ca33eb9f186353c0095292f5a37c"/><file name="Logs.php" hash="02b0a830444455ca5316a8e54fcfa3f0"/><file name="Schedule.php" hash="a9bbdfba5d8d683905a63d7f5eae6585"/></dir><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="0e5b3569802424adf7c7f50a8894d273"/></dir></dir><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Map"><file name="Additional.php" hash="e4dc89db03e143af4ebd7cea13910a26"/></dir><file name="Password.php" hash="b52b0e16c0ae02fd528bf5c567a7a8b5"/><dir name="Total"><file name="Limit.php" hash="a23092ea72cbe81e2779b086ad055bf6"/></dir></dir><file name="Reset.php" hash="ee5b68f996a0ec1b532cf64f931e7a72"/><dir name="Source"><dir name="Feed"><file name="Pricetaxmode.php" hash="f9e8cd0af76f25cbfae3fb42c01211e1"/></dir><dir name="Product"><file name="Attributes.php" hash="b49f69f7c35d6dbe54003bd6d0a5510d"/></dir></dir></dir></dir><file name="Tools.php" hash="522242e680baa02d196aa55343cb31f8"/></dir><dir name="Test"><dir name="Controller"><dir name="Index"><dir name="fixtures"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="694cf25a35a9a301a8ae678866937909"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir><dir name="providers"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="1ea2f638be8fdcea22ef47767ed8d7db"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir></dir><file name="Index.php" hash="2771de706303653d039818bd0f6590ea"/></dir><dir name="Model"><dir name="Product"><dir name="expectations"><file name="testGenerator.yaml" hash="232dda1f4fd88b8ef081393f08044731"/></dir><dir name="fixtures"><file name="testGenerator.yaml" hash="df25e3ca67fd98ab1b933c4951c599ef"/></dir><dir name="providers"><file name="testGenerator.yaml" hash="84779d5dcd8d92abdecf0cd5ee65cfb0"/></dir></dir><file name="Product.php" hash="6c45ae2b36c6cc721ef634855ed6d596"/></dir></dir><dir name="controllers"><file name="DoofinderFeedFeedController.php" hash="f7febd774ddd62a1400d567ae9a46ef7"/><file name="DoofinderFeedLogController.php" hash="fab7b3902460013b725f1125d2d88c1f"/><file name="FeedController.php" hash="1f4664f7be2da11c556b5d04586db550"/><file name="IndexController.php" hash="742000ac654484abbe04e6a051bc4c7b"/></dir><dir name="etc"><file name="config.xml" hash="b430b0662446d8522862c78f0be21843"/><file name="system.xml" hash="f7138fa707defa46ec4a8433b6e24624"/></dir><dir name="sql"><dir name="doofinder_feed_setup"><file name="mysql4-install-1.5.4.php" hash="9dc5ed4e10febbe75ab1911259a1c9fe"/><file name="mysql4-install-1.5.7.php" hash="85baa03d9c4d76f6b744ba107c21f8da"/><file name="mysql4-upgrade-1.5.4-1.5.5.php" hash="df7158f6d6cdded9bdfc5cb72c1dc8e3"/><file name="mysql4-upgrade-1.5.5-1.5.6.php" hash="0f3ca5263356a0bc83d9352b463944dc"/><file name="mysql4-upgrade-1.5.6-1.5.7.php" hash="b0180770655f36d6723483aa3bd1541f"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Doofinder_Feed.xml" hash="9d3b6fbbbec12708461c33260715451c"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="a7b9105a4e613086340b042845793d9f"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="48a8636096950914917461260416c355"/></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="doofinder"><file name="admin.js" hash="ca050b0527ae101c75532fbca1c4a274"/></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="doofinder"><file name="styles.css" hash="d6ec303c3199db3ab4dffa8d2491105e"/></dir></dir></dir></dir></target><target name="magelib"><dir name="php-doofinder"><file name="CHANGELOG.txt" hash="b4fc19b1cb37810d8faa6a1e784ab32b"/><file name="README.md" hash="f9eda30362e3356947f86a9248122c2f"/><file name="autoload.php" hash="1ab27f8a639e30c5a25a6100f1a3035d"/><file name="composer.json" hash="76f54c3a763a3ae683fa677106b41027"/><file name="phpunit.xml" hash="97d89bb72790578c7ca60aebe7e3b1dd"/><dir name="src"><dir name="Management"><file name="AggregatesIterator.php" hash="431618213beb8294f6cab35376c935c8"/><file name="Client.php" hash="3d4dc1dbabcb42c7b1e4835ff5056d21"/><dir name="Errors"><file name="BadRequest.php" hash="45113fccee9500f4ee2a20e845ef8ee2"/><file name="NotAllowed.php" hash="98169302570fcf34a49277c5afbbed20"/><file name="NotFound.php" hash="9b08d95a549cfaea5562ecfa74a28746"/><file name="NotProcessedResponse.php" hash="63984cfbe90b6912e8d53faa293e65d6"/><file name="QuotaExhausted.php" hash="75f95704e509d7b5a4c61ebdb76208f5"/><file name="ThrottledResponse.php" hash="d3cd9c6df62246b5c3e80de3e1ecfc9c"/><file name="Utils.php" hash="be1220fc529292e8cc723dc9f68ef81d"/><file name="WrongResponse.php" hash="3c0fd79d6c04ac2c8f93984912369333"/></dir><file name="ItemsResultSet.php" hash="67532bd88b478fb4e0ce9f05d2ffd94a"/><file name="ScrollIterator.php" hash="0d916403f85a791af8e4e2240ad9e1be"/><file name="SearchEngine.php" hash="417e44ce9f11be52d3a6679161014eb8"/><file name="TopTermsIterator.php" hash="9ef2a784ce1d2cae81e577ce8c13ed08"/></dir><dir name="Search"><file name="Client.php" hash="857ed6a6594776f3060d87c2c9b86aca"/><file name="Error.php" hash="38a4283a860ed443f43a8452cc931c99"/><file name="Results.php" hash="87417657ec8a4908d6fd35868b782d7e"/></dir><dir name="Test"><dir name="Management"><file name="AggregatesIteratorTest.php" hash="eb9abdc3de26ac6396efc007373906ca"/><file name="ClientTest.php" hash="9958013403856eab97a44a14b8c32569"/><file name="ScrollIteratorTest.php" hash="34ef0111f1bb3633e6950151efd5e3ec"/><file name="SearchEngineTest.php" hash="a354a2e690851ab8d2b9a41495fcd979"/><file name="TopTermsIteratorTest.php" hash="9804ca4b89dce16d1e89b6614c11c2c0"/></dir><dir name="Search"><file name="ClientTest.php" hash="6aeac0a72fc4a4798233dfde15014543"/><file name="ResultsTests.php" hash="64503776af865c5d23e261b71d36a6bc"/></dir></dir></dir></dir></target></contents>
56
  <compatible/>
57
  <dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
58
  </package>