Version Notes
- Fixed bug with attribute name with space character in slider #127
- Improved attributes product export #121
- Fixed bug with static fields not being exported #190
- Improved export performance
- Add possibility to use any JSONP callback #145
- multiple small bugfixes (tracking, export, suggest)
Download this release
Release Info
Developer | FACTFinder |
Extension | Flagbit_Factfinder |
Version | 4.1.13 |
Comparing to | |
See all releases |
Code changes from version 4.1.12 to 4.1.13
- app/code/community/FACTFinder/Asn/Helper/Data.php +25 -1
- app/code/community/FACTFinder/Asn/Model/Handler/Search.php +3 -2
- app/code/community/FACTFinder/Campaigns/Block/Feedback/Product.php +15 -0
- app/code/community/FACTFinder/Campaigns/Block/Pushed/Product.php +15 -0
- app/code/community/FACTFinder/Campaigns/Model/Observer.php +1 -1
- app/code/community/FACTFinder/Core/Block/Adminhtml/Exportlink.php +2 -2
- app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Attributes.php +63 -23
- app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/{Attribute.php → Column/Attribute.php} +17 -3
- app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Column/Type.php +72 -0
- app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Column/Unit.php +80 -0
- app/code/community/FACTFinder/Core/Block/Catalog/Product/List/Toolbar.php +5 -3
- app/code/community/FACTFinder/Core/Block/Catalog/Product/Pager.php +3 -3
- app/code/community/FACTFinder/Core/Block/CatalogSearch/Layer.php +1 -1
- app/code/community/FACTFinder/Core/Block/EnterpriseSearch/Layer.php +1 -1
- app/code/community/FACTFinder/Core/Helper/Backend.php +2 -2
- app/code/community/FACTFinder/Core/Helper/Data.php +2 -2
- app/code/community/FACTFinder/Core/Helper/Debug.php +2 -2
- app/code/community/FACTFinder/Core/Helper/Export.php +15 -1
- app/code/community/FACTFinder/Core/Helper/Rewrite.php +1 -1
- app/code/community/FACTFinder/Core/Helper/Search.php +2 -2
- app/code/community/FACTFinder/Core/Model/Autoloader.php +2 -2
- app/code/community/FACTFinder/Core/Model/CatalogSearch/Layer.php +2 -2
- app/code/community/FACTFinder/Core/Model/CatalogSearch/Query.php +1 -1
- app/code/community/FACTFinder/Core/Model/Export/Observer.php +1 -1
- app/code/community/FACTFinder/Core/Model/Export/Semaphore.php +2 -2
- app/code/community/FACTFinder/Core/Model/Export/Type/Price.php +8 -4
- app/code/community/FACTFinder/Core/Model/Export/Type/Product.php +148 -564
- app/code/community/FACTFinder/Core/Model/Export/Type/Product/Attribute.php +646 -0
- app/code/community/FACTFinder/Core/Model/Export/Type/Stock.php +8 -4
- app/code/community/FACTFinder/Core/Model/Facade.php +27 -3
- app/code/community/FACTFinder/Core/Model/File.php +2 -2
- app/code/community/FACTFinder/Core/Model/File/Validator/Abstract.php +3 -3
- app/code/community/FACTFinder/Core/Model/Ftp.php +1 -1
- app/code/community/FACTFinder/Core/Model/Handler/Abstract.php +2 -2
- app/code/community/FACTFinder/Core/Model/Handler/Search.php +6 -6
- app/code/community/FACTFinder/Core/Model/Handler/Status.php +2 -2
- app/code/community/FACTFinder/Core/Model/Observer.php +2 -2
- app/code/community/FACTFinder/Core/Model/Resource/Attribute.php +101 -0
- app/code/community/FACTFinder/Core/Model/Resource/Fulltext.php +2 -2
- app/code/community/FACTFinder/Core/Model/Resource/{Export.php → Product.php} +3 -84
- app/code/community/FACTFinder/Core/Model/Resource/Search/Collection.php +2 -2
- app/code/community/FACTFinder/Core/Model/Resource/Search/Engine.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Backend/Attributes.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Backend/Cron.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Backend/Enabled.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Backend/Engine.php +1 -1
- app/code/community/FACTFinder/Core/Model/System/Config/Source/Authtype.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Source/Engine.php +1 -1
- app/code/community/FACTFinder/Core/Model/System/Config/Source/Identifier.php +2 -2
- app/code/community/FACTFinder/Core/Model/System/Config/Source/Protocol.php +2 -2
- app/code/community/FACTFinder/Core/Model/Url.php +1 -1
- app/code/community/FACTFinder/Core/controllers/ExportController.php +2 -2
- app/code/community/FACTFinder/Core/etc/adminhtml.xml +1 -1
- app/code/community/FACTFinder/Core/etc/config.xml +1 -1
- app/code/community/FACTFinder/Core/etc/system.xml +22 -12
- app/code/community/FACTFinder/Suggest/Block/TopSearch.php +2 -2
- app/code/community/FACTFinder/Suggest/Block/XmlConnect/Catalog/Search/Suggest.php +2 -2
- app/code/community/FACTFinder/Suggest/Helper/Data.php +2 -2
- app/code/community/FACTFinder/Suggest/Model/Facade.php +2 -2
- app/code/community/FACTFinder/Suggest/Model/Handler/Suggest.php +7 -7
- app/code/community/FACTFinder/Suggest/Model/Observer.php +2 -2
- app/code/community/FACTFinder/Suggest/Model/Processor.php +20 -3
- app/code/community/FACTFinder/Suggest/Model/System/Config/Source/Imagetype.php +2 -2
- app/code/community/FACTFinder/Suggest/controllers/ProxyController.php +2 -2
- app/code/community/FACTFinder/Suggest/etc/config.xml +4 -1
- app/code/community/FACTFinder/Suggest/etc/system.xml +1 -1
- app/code/community/FACTFinder/Tagcloud/Block/TagCloud.php +2 -2
- app/code/community/FACTFinder/Tagcloud/Helper/Data.php +2 -2
- app/code/community/FACTFinder/Tagcloud/Model/Facade.php +2 -2
- app/code/community/FACTFinder/Tagcloud/Model/Handler/TagCloud.php +2 -2
- app/code/community/FACTFinder/Tagcloud/etc/config.xml +1 -1
- app/code/community/FACTFinder/Tracking/Block/Abstract.php +1 -1
- app/code/community/FACTFinder/Tracking/Block/Click.php +2 -2
- app/code/community/FACTFinder/Tracking/Block/Recommendation.php +2 -2
- app/code/community/FACTFinder/Tracking/Helper/Data.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Facade.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Handler/Tracking.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Observer.php +4 -3
- app/code/community/FACTFinder/Tracking/Model/Processor.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Queue.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Resource/Queue.php +2 -2
- app/code/community/FACTFinder/Tracking/Model/Resource/Queue/Collection.php +2 -2
- app/code/community/FACTFinder/Tracking/controllers/ProxyController.php +2 -2
- app/code/community/FACTFinder/Tracking/etc/config.xml +1 -1
- app/code/community/FACTFinder/Tracking/etc/system.xml +1 -1
- app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/install-1.0.0.php +1 -1
- app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-1.0.0-4.1.2.php +1 -1
- app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-4.1.11-4.1.12.php +1 -1
- app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-4.1.2-4.1.11.php +1 -1
- app/design/adminhtml/default/default/template/factfinder/core/system/config/form/field/attributes.phtml +183 -0
- app/design/frontend/base/default/layout/factfinder/core.xml +1 -1
- app/design/frontend/base/default/layout/factfinder/suggest.xml +1 -1
- app/design/frontend/base/default/layout/factfinder/tagcloud.xml +1 -1
- app/design/frontend/base/default/layout/factfinder/tracking.xml +1 -1
- app/design/frontend/base/default/template/factfinder/core/export/locked.phtml +1 -1
- app/design/frontend/base/default/template/factfinder/core/export/nofile.phtml +1 -1
- app/design/frontend/base/default/template/factfinder/suggest/advancedsuggest.phtml +1 -1
- app/design/frontend/base/default/template/factfinder/tracking/click.phtml +1 -1
- app/design/frontend/base/default/template/factfinder/tracking/recommendation.phtml +1 -1
- js/factfinder/suggest.js +2 -2
- js/factfinder/tracking.js +1 -1
- package.xml +12 -11
- skin/frontend/base/default/css/factfinder_suggest.css +2 -6
app/code/community/FACTFinder/Asn/Helper/Data.php
CHANGED
@@ -44,7 +44,7 @@ class FACTFinder_Asn_Helper_Data extends Mage_Core_Helper_Abstract
|
|
44 |
|
45 |
$parseUrl = parse_url($url);
|
46 |
if (isset($parseUrl['query'])) {
|
47 |
-
|
48 |
}
|
49 |
|
50 |
// recover spaces
|
@@ -94,4 +94,28 @@ class FACTFinder_Asn_Helper_Data extends Mage_Core_Helper_Abstract
|
|
94 |
}
|
95 |
|
96 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
97 |
}
|
44 |
|
45 |
$parseUrl = parse_url($url);
|
46 |
if (isset($parseUrl['query'])) {
|
47 |
+
$queryParams = $this->parseStr($parseUrl['query']);
|
48 |
}
|
49 |
|
50 |
// recover spaces
|
94 |
}
|
95 |
|
96 |
|
97 |
+
/**
|
98 |
+
* Does practically the same as parse_str
|
99 |
+
* but does NOT underscore parameter names
|
100 |
+
*
|
101 |
+
* @param string $string
|
102 |
+
*
|
103 |
+
* @return array
|
104 |
+
*
|
105 |
+
*/
|
106 |
+
public function parseStr($string)
|
107 |
+
{
|
108 |
+
$result = array();
|
109 |
+
$query = trim($string, '?&');
|
110 |
+
$query = explode('&', $query);
|
111 |
+
|
112 |
+
foreach ($query as $item) {
|
113 |
+
$item = explode('=', $item);
|
114 |
+
$result[urldecode(array_shift($item))] = urldecode(array_shift($item));
|
115 |
+
}
|
116 |
+
|
117 |
+
return $result;
|
118 |
+
}
|
119 |
+
|
120 |
+
|
121 |
}
|
app/code/community/FACTFinder/Asn/Model/Handler/Search.php
CHANGED
@@ -73,10 +73,11 @@ class FACTFinder_Asn_Model_Handler_Search extends FACTFinder_Core_Model_Handler_
|
|
73 |
* Get Attribute Options Array from FactFinder FilterGroupItems
|
74 |
*
|
75 |
* @param FACTFinder\Data\FilterGroup $filterGroup
|
|
|
76 |
*
|
77 |
* @return array
|
78 |
*/
|
79 |
-
protected function _getAttributeOptions(FACTFinder\Data\FilterGroup $filterGroup)
|
80 |
{
|
81 |
$attributeOptions = array();
|
82 |
|
@@ -98,7 +99,7 @@ class FACTFinder_Asn_Model_Handler_Search extends FACTFinder_Core_Model_Handler_
|
|
98 |
}
|
99 |
|
100 |
if ($filterGroup->isSliderStyle()) {
|
101 |
-
$queryParams['filter' . $option->getFieldName()] = $filterValue;
|
102 |
$attributeOptions[] = $this->_prepareSliderOption($option, $filterGroup, $queryParams);
|
103 |
} else {
|
104 |
if (!$option->getLabel() || $this->_isTopLevelNavigation($option, $currentCategoryPath)) {
|
73 |
* Get Attribute Options Array from FactFinder FilterGroupItems
|
74 |
*
|
75 |
* @param FACTFinder\Data\FilterGroup $filterGroup
|
76 |
+
* @param string $unit
|
77 |
*
|
78 |
* @return array
|
79 |
*/
|
80 |
+
protected function _getAttributeOptions(FACTFinder\Data\FilterGroup $filterGroup, $unit = '')
|
81 |
{
|
82 |
$attributeOptions = array();
|
83 |
|
99 |
}
|
100 |
|
101 |
if ($filterGroup->isSliderStyle()) {
|
102 |
+
$queryParams[urldecode('filter' . $option->getFieldName())] = $filterValue;
|
103 |
$attributeOptions[] = $this->_prepareSliderOption($option, $filterGroup, $queryParams);
|
104 |
} else {
|
105 |
if (!$option->getLabel() || $this->_isTopLevelNavigation($option, $currentCategoryPath)) {
|
app/code/community/FACTFinder/Campaigns/Block/Feedback/Product.php
CHANGED
@@ -26,6 +26,21 @@ class FACTFinder_Campaigns_Block_Feedback_Product extends FACTFinder_Campaigns_B
|
|
26 |
protected $_handlerModel = 'factfinder_campaigns/handler_product';
|
27 |
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
/**
|
30 |
* Check is the campign can be shown on product page
|
31 |
*
|
26 |
protected $_handlerModel = 'factfinder_campaigns/handler_product';
|
27 |
|
28 |
|
29 |
+
/**
|
30 |
+
* @return Mage_Core_Model_Abstract
|
31 |
+
*/
|
32 |
+
protected function _getHandler()
|
33 |
+
{
|
34 |
+
$product = Mage::registry('current_product');
|
35 |
+
if ($product) {
|
36 |
+
$productId = $product->getData(Mage::helper('factfinder_campaigns')->getIdFieldName());
|
37 |
+
return Mage::getSingleton($this->_handlerModel, array($productId));
|
38 |
+
}
|
39 |
+
|
40 |
+
return parent::_getHandler();
|
41 |
+
}
|
42 |
+
|
43 |
+
|
44 |
/**
|
45 |
* Check is the campign can be shown on product page
|
46 |
*
|
app/code/community/FACTFinder/Campaigns/Block/Pushed/Product.php
CHANGED
@@ -26,6 +26,21 @@ class FACTFinder_Campaigns_Block_Pushed_Product extends FACTFinder_Campaigns_Blo
|
|
26 |
protected $_handlerModel = 'factfinder_campaigns/handler_product';
|
27 |
|
28 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
29 |
/**
|
30 |
* Check is the campign can be shown on product page
|
31 |
*
|
26 |
protected $_handlerModel = 'factfinder_campaigns/handler_product';
|
27 |
|
28 |
|
29 |
+
/**
|
30 |
+
* @return Mage_Core_Model_Abstract
|
31 |
+
*/
|
32 |
+
protected function _getHandler()
|
33 |
+
{
|
34 |
+
$product = Mage::registry('current_product');
|
35 |
+
if ($product) {
|
36 |
+
$productId = $product->getData(Mage::helper('factfinder_campaigns')->getIdFieldName());
|
37 |
+
return Mage::getSingleton($this->_handlerModel, array($productId));
|
38 |
+
}
|
39 |
+
|
40 |
+
return parent::_getHandler();
|
41 |
+
}
|
42 |
+
|
43 |
+
|
44 |
/**
|
45 |
* Check is the campign can be shown on product page
|
46 |
*
|
app/code/community/FACTFinder/Campaigns/Model/Observer.php
CHANGED
@@ -45,7 +45,7 @@ class FACTFinder_Campaigns_Model_Observer
|
|
45 |
if (Mage::registry('current_product')) {
|
46 |
$product = Mage::registry('current_product');
|
47 |
$ids = array($product->getData(Mage::helper('factfinder_campaigns')->getIdFieldName()));
|
48 |
-
$handler = Mage::
|
49 |
} elseif (Mage::helper('factfinder/search')->getIsOnSearchPage()) {
|
50 |
$handler = Mage::getSingleton('factfinder_campaigns/handler_search');
|
51 |
} else {
|
45 |
if (Mage::registry('current_product')) {
|
46 |
$product = Mage::registry('current_product');
|
47 |
$ids = array($product->getData(Mage::helper('factfinder_campaigns')->getIdFieldName()));
|
48 |
+
$handler = Mage::getSingleton('factfinder_campaigns/handler_product', $ids);
|
49 |
} elseif (Mage::helper('factfinder/search')->getIsOnSearchPage()) {
|
50 |
$handler = Mage::getSingleton('factfinder_campaigns/handler_search');
|
51 |
} else {
|
app/code/community/FACTFinder/Core/Block/Adminhtml/Exportlink.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Attributes.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,37 +17,28 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
24 |
class FACTFinder_Core_Block_Adminhtml_Form_Field_Attributes
|
25 |
extends Mage_Adminhtml_Block_System_Config_Form_Field_Array_Abstract
|
26 |
{
|
|
|
|
|
|
|
27 |
|
28 |
-
|
29 |
-
* @var FACTFinder_Core_Block_Adminhtml_Form_Field_Attribute
|
30 |
-
*/
|
31 |
-
protected $_attributeRenderer;
|
32 |
|
|
|
33 |
|
34 |
-
|
35 |
-
|
36 |
-
*
|
37 |
-
* @return FACTFinder_Core_Block_Adminhtml_Form_Field_Attribute
|
38 |
-
*/
|
39 |
-
protected function _getAttributeRenderer()
|
40 |
{
|
41 |
-
if (!$this->
|
42 |
-
$this->
|
43 |
-
'factfinder/adminhtml_form_field_attribute', '',
|
44 |
-
array('is_render_to_js_template' => true)
|
45 |
-
);
|
46 |
-
$this->_attributeRenderer->setClass('attribute_select');
|
47 |
-
$this->_attributeRenderer->setExtraParams('style="width:200px"');
|
48 |
}
|
49 |
-
|
50 |
-
return $this->_attributeRenderer;
|
51 |
}
|
52 |
|
53 |
|
@@ -60,7 +51,17 @@ class FACTFinder_Core_Block_Adminhtml_Form_Field_Attributes
|
|
60 |
{
|
61 |
$this->addColumn('attribute', array(
|
62 |
'label' => Mage::helper('factfinder')->__('Attribute'),
|
63 |
-
'renderer' => $this->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
64 |
));
|
65 |
|
66 |
$this->_addAfter = false;
|
@@ -78,9 +79,48 @@ class FACTFinder_Core_Block_Adminhtml_Form_Field_Attributes
|
|
78 |
protected function _prepareArrayRow(Varien_Object $row)
|
79 |
{
|
80 |
$row->setData(
|
81 |
-
'option_extra_attr_' . $this->
|
|
|
82 |
'selected="selected"'
|
83 |
);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
84 |
}
|
85 |
|
86 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
24 |
class FACTFinder_Core_Block_Adminhtml_Form_Field_Attributes
|
25 |
extends Mage_Adminhtml_Block_System_Config_Form_Field_Array_Abstract
|
26 |
{
|
27 |
+
const RENDERER_ATTRIBUTE = 'factfinder/adminhtml_form_field_column_attribute';
|
28 |
+
const RENDERER_TYPE = 'factfinder/adminhtml_form_field_column_type';
|
29 |
+
const RENDERER_UNIT = 'factfinder/adminhtml_form_field_column_unit';
|
30 |
|
31 |
+
protected $_columnRenderers = array();
|
|
|
|
|
|
|
32 |
|
33 |
+
protected $_template = 'factfinder/core/system/config/form/field/attributes.phtml';
|
34 |
|
35 |
+
|
36 |
+
public function __construct()
|
|
|
|
|
|
|
|
|
37 |
{
|
38 |
+
if (!$this->_addButtonLabel) {
|
39 |
+
$this->_addButtonLabel = Mage::helper('adminhtml')->__('Add');
|
|
|
|
|
|
|
|
|
|
|
40 |
}
|
41 |
+
parent::__construct();
|
|
|
42 |
}
|
43 |
|
44 |
|
51 |
{
|
52 |
$this->addColumn('attribute', array(
|
53 |
'label' => Mage::helper('factfinder')->__('Attribute'),
|
54 |
+
'renderer' => $this->_getRenderer(self::RENDERER_ATTRIBUTE),
|
55 |
+
));
|
56 |
+
|
57 |
+
$this->addColumn('type', array(
|
58 |
+
'label' => Mage::helper('factfinder')->__('Data Type'),
|
59 |
+
'renderer' => $this->_getRenderer(self::RENDERER_TYPE),
|
60 |
+
));
|
61 |
+
|
62 |
+
$this->addColumn('unit', array(
|
63 |
+
'label' => Mage::helper('factfinder')->__('Unit'),
|
64 |
+
'renderer' => $this->_getRenderer(self::RENDERER_UNIT),
|
65 |
));
|
66 |
|
67 |
$this->_addAfter = false;
|
79 |
protected function _prepareArrayRow(Varien_Object $row)
|
80 |
{
|
81 |
$row->setData(
|
82 |
+
'option_extra_attr_' . $this->_getRenderer(self::RENDERER_TYPE)
|
83 |
+
->calcOptionHash($row->getData('type')),
|
84 |
'selected="selected"'
|
85 |
);
|
86 |
+
$row->setData(
|
87 |
+
'option_extra_attr_' . $this->_getRenderer(self::RENDERER_ATTRIBUTE)
|
88 |
+
->calcOptionHash($row->getData('attribute')),
|
89 |
+
'selected="selected"'
|
90 |
+
);
|
91 |
+
}
|
92 |
+
|
93 |
+
|
94 |
+
/**
|
95 |
+
* @param $blockType
|
96 |
+
* @param array $data
|
97 |
+
*
|
98 |
+
* @return Mage_Core_Block_Abstract
|
99 |
+
*/
|
100 |
+
protected function _getRenderer($blockType, $data = array())
|
101 |
+
{
|
102 |
+
if (!isset($this->_columnRenderers[$blockType])) {
|
103 |
+
$renderer = $this->getLayout()->createBlock(
|
104 |
+
$blockType, '',
|
105 |
+
array('is_render_to_js_template' => true)
|
106 |
+
);
|
107 |
+
|
108 |
+
foreach ($data as $key => $value) {
|
109 |
+
$renderer->setData($key, $value);
|
110 |
+
}
|
111 |
+
|
112 |
+
$this->_columnRenderers[$blockType] = $renderer;
|
113 |
+
}
|
114 |
+
|
115 |
+
return $this->_columnRenderers[$blockType];
|
116 |
+
}
|
117 |
+
|
118 |
+
|
119 |
+
protected function _toHtml()
|
120 |
+
{
|
121 |
+
$html = parent::_toHtml();
|
122 |
+
|
123 |
+
return $this->_afterToHtml($html);
|
124 |
}
|
125 |
|
126 |
|
app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/{Attribute.php → Column/Attribute.php}
RENAMED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,13 +17,27 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
24 |
-
class
|
25 |
{
|
26 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
27 |
/**
|
28 |
* Attributes cache
|
29 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
24 |
+
class FACTFinder_Core_Block_Adminhtml_Form_Field_Column_Attribute extends Mage_Core_Block_Html_Select
|
25 |
{
|
26 |
|
27 |
+
/**
|
28 |
+
* Set initial options
|
29 |
+
*/
|
30 |
+
protected function _construct()
|
31 |
+
{
|
32 |
+
parent::_construct();
|
33 |
+
|
34 |
+
$this->setId('attibute_select')
|
35 |
+
->setTitle('attribute')
|
36 |
+
->setClass('attribute_select')
|
37 |
+
;
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
/**
|
42 |
* Attributes cache
|
43 |
*
|
app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Column/Type.php
ADDED
@@ -0,0 +1,72 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* FACTFinder_Core
|
4 |
+
*
|
5 |
+
* @category Mage
|
6 |
+
* @package FACTFinder_Core
|
7 |
+
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
+
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
+
* @link http://www.flagbit.de
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Class FACTFinder_Core_Block_Adminhtml_Form_Field_Attribute
|
16 |
+
*
|
17 |
+
* @category Mage
|
18 |
+
* @package FACTFinder_Core
|
19 |
+
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
+
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
+
* @link http://www.flagbit.de
|
23 |
+
*/
|
24 |
+
class FACTFinder_Core_Block_Adminhtml_Form_Field_Column_Type extends Mage_Core_Block_Html_Select
|
25 |
+
{
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Set initial options
|
29 |
+
*/
|
30 |
+
protected function _construct()
|
31 |
+
{
|
32 |
+
parent::_construct();
|
33 |
+
|
34 |
+
$this->setId('type_select')
|
35 |
+
->setTitle('type')
|
36 |
+
->setClass('type_select')
|
37 |
+
;
|
38 |
+
}
|
39 |
+
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Set name of the html input
|
43 |
+
*
|
44 |
+
* @param string $value
|
45 |
+
*
|
46 |
+
* @return mixed
|
47 |
+
*/
|
48 |
+
public function setInputName($value)
|
49 |
+
{
|
50 |
+
return $this->setName($value);
|
51 |
+
}
|
52 |
+
|
53 |
+
|
54 |
+
/**
|
55 |
+
* Render block HTML
|
56 |
+
*
|
57 |
+
* @return string
|
58 |
+
*/
|
59 |
+
public function _toHtml()
|
60 |
+
{
|
61 |
+
if (!$this->getOptions()) {
|
62 |
+
foreach (array('text' => 'Text', 'number' => 'Number') as $id => $label) {
|
63 |
+
$htmlLabel = htmlspecialchars($label, ENT_QUOTES);
|
64 |
+
$this->addOption($id, $htmlLabel);
|
65 |
+
}
|
66 |
+
}
|
67 |
+
|
68 |
+
return parent::_toHtml();
|
69 |
+
}
|
70 |
+
|
71 |
+
|
72 |
+
}
|
app/code/community/FACTFinder/Core/Block/Adminhtml/Form/Field/Column/Unit.php
ADDED
@@ -0,0 +1,80 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* FACTFinder_Core
|
4 |
+
*
|
5 |
+
* @category Mage
|
6 |
+
* @package FACTFinder_Core
|
7 |
+
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
+
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
+
* @link http://www.flagbit.de
|
11 |
+
*
|
12 |
+
*/
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Class FACTFinder_Core_Block_Adminhtml_Form_Field_Attribute
|
16 |
+
*
|
17 |
+
* @category Mage
|
18 |
+
* @package FACTFinder_Core
|
19 |
+
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
+
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
+
* @link http://www.flagbit.de
|
23 |
+
*/
|
24 |
+
class FACTFinder_Core_Block_Adminhtml_Form_Field_Column_Unit extends Mage_Core_Block_Abstract
|
25 |
+
{
|
26 |
+
|
27 |
+
const COLUMN_NAME = 'unit';
|
28 |
+
|
29 |
+
|
30 |
+
/**
|
31 |
+
* @return void
|
32 |
+
*/
|
33 |
+
protected function _construct()
|
34 |
+
{
|
35 |
+
parent::_construct();
|
36 |
+
|
37 |
+
$this->addData(array(
|
38 |
+
'id' => 'attribute_unit',
|
39 |
+
'name' => self::COLUMN_NAME,
|
40 |
+
'title' => $this->__('Attribute Unit'),
|
41 |
+
'class' => 'attribute_unit',
|
42 |
+
));
|
43 |
+
}
|
44 |
+
|
45 |
+
|
46 |
+
/**
|
47 |
+
* Render HTML
|
48 |
+
*
|
49 |
+
* @return string
|
50 |
+
*/
|
51 |
+
protected function _toHtml()
|
52 |
+
{
|
53 |
+
if (!$this->_beforeToHtml()) {
|
54 |
+
return '';
|
55 |
+
}
|
56 |
+
|
57 |
+
$html = '<input name="' . $this->getName() . '" id="' . $this->getId() . '" class="'
|
58 |
+
. $this->getClass() . '" title="' . $this->getTitle() . '" ' . $this->getExtraParams()
|
59 |
+
. 'value="#{' . self::COLUMN_NAME . '}">';
|
60 |
+
|
61 |
+
$html .= '</input>';
|
62 |
+
|
63 |
+
return $html;
|
64 |
+
}
|
65 |
+
|
66 |
+
|
67 |
+
/**
|
68 |
+
* Set name of the html input
|
69 |
+
*
|
70 |
+
* @param string $value
|
71 |
+
*
|
72 |
+
* @return mixed
|
73 |
+
*/
|
74 |
+
public function setInputName($value)
|
75 |
+
{
|
76 |
+
return $this->setName($value);
|
77 |
+
}
|
78 |
+
|
79 |
+
|
80 |
+
}
|
app/code/community/FACTFinder/Core/Block/Catalog/Product/List/Toolbar.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
@@ -224,7 +224,9 @@ class FACTFinder_Core_Block_Catalog_Product_List_Toolbar extends Mage_Catalog_Bl
|
|
224 |
|
225 |
if (!isset($orders[$defaultOrder])) {
|
226 |
$keys = array_keys($orders);
|
227 |
-
|
|
|
|
|
228 |
}
|
229 |
|
230 |
// the only change of this method is here
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
224 |
|
225 |
if (!isset($orders[$defaultOrder])) {
|
226 |
$keys = array_keys($orders);
|
227 |
+
if (isset($keys[0])) {
|
228 |
+
$defaultOrder = $keys[0];
|
229 |
+
}
|
230 |
}
|
231 |
|
232 |
// the only change of this method is here
|
app/code/community/FACTFinder/Core/Block/Catalog/Product/Pager.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
@@ -70,7 +70,7 @@ class FACTFinder_Core_Block_Catalog_Product_Pager extends Mage_Page_Block_Html_P
|
|
70 |
return parent::getPagerUrl($params);
|
71 |
}
|
72 |
|
73 |
-
$pageNum = $params['p'];
|
74 |
|
75 |
if (!isset($this->_pagingUrls[$pageNum])) {
|
76 |
$this->_pagingUrls[$pageNum] = '';
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
70 |
return parent::getPagerUrl($params);
|
71 |
}
|
72 |
|
73 |
+
$pageNum = (isset($params['p']) ? $params['p'] : 0);
|
74 |
|
75 |
if (!isset($this->_pagingUrls[$pageNum])) {
|
76 |
$this->_pagingUrls[$pageNum] = '';
|
app/code/community/FACTFinder/Core/Block/CatalogSearch/Layer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Block/EnterpriseSearch/Layer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Helper/Backend.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Core/Helper/Data.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Helper/Debug.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Helper/Export.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
@@ -29,6 +29,7 @@ class FACTFinder_Core_Helper_Export extends Mage_Core_Helper_Abstract
|
|
29 |
const EXPORT_URLS_IMAGES = 'urls';
|
30 |
const OUT_OF_STOCK_PRODUCTS = 'out_of_stock_products';
|
31 |
const VALIDATION_DISABLED = 'disabled_validation';
|
|
|
32 |
|
33 |
/**
|
34 |
* @var int
|
@@ -393,4 +394,17 @@ class FACTFinder_Core_Helper_Export extends Mage_Core_Helper_Abstract
|
|
393 |
}
|
394 |
|
395 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
396 |
}
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
29 |
const EXPORT_URLS_IMAGES = 'urls';
|
30 |
const OUT_OF_STOCK_PRODUCTS = 'out_of_stock_products';
|
31 |
const VALIDATION_DISABLED = 'disabled_validation';
|
32 |
+
const EXPLICIT_ATTRIBUTES = 'explicit_attributes';
|
33 |
|
34 |
/**
|
35 |
* @var int
|
394 |
}
|
395 |
|
396 |
|
397 |
+
/**
|
398 |
+
* Check if explicit attribute type configuration should be used
|
399 |
+
*
|
400 |
+
* @param int $storeId
|
401 |
+
*
|
402 |
+
* @return bool
|
403 |
+
*/
|
404 |
+
public function useExplicitAttributes($storeId = 0)
|
405 |
+
{
|
406 |
+
return (bool) $this->getExportConfigValue(self::EXPLICIT_ATTRIBUTES, $storeId);
|
407 |
+
}
|
408 |
+
|
409 |
+
|
410 |
}
|
app/code/community/FACTFinder/Core/Helper/Rewrite.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Helper/Search.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/Autoloader.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -20,7 +20,7 @@
|
|
20 |
* @category Mage
|
21 |
* @package FACTFinder_Core
|
22 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
23 |
-
* @copyright Copyright (c)
|
24 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
25 |
* @link http://www.flagbit.de
|
26 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
20 |
* @category Mage
|
21 |
* @package FACTFinder_Core
|
22 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
23 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
24 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
25 |
* @link http://www.flagbit.de
|
26 |
*/
|
app/code/community/FACTFinder/Core/Model/CatalogSearch/Layer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/CatalogSearch/Query.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Model/Export/Observer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Model/Export/Semaphore.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
@@ -16,7 +16,7 @@
|
|
16 |
* @category Mage
|
17 |
* @package FACTFinder_Core
|
18 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
19 |
-
* @copyright Copyright (c)
|
20 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
21 |
* @link http://www.flagbit.de
|
22 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
16 |
* @category Mage
|
17 |
* @package FACTFinder_Core
|
18 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
19 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
20 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
21 |
* @link http://www.flagbit.de
|
22 |
*/
|
app/code/community/FACTFinder/Core/Model/Export/Type/Price.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
@@ -86,7 +86,11 @@ class FACTFinder_Core_Model_Export_Type_Price extends Mage_Core_Model_Resource_D
|
|
86 |
$dir = Mage::helper('factfinder/export')->getExportDirectory();
|
87 |
$fileName = $this->getFilenameForStore($storeId);
|
88 |
$this->_file = Mage::getModel('factfinder/file');
|
89 |
-
|
|
|
|
|
|
|
|
|
90 |
$this->_file->open($dir, $fileName);
|
91 |
}
|
92 |
|
@@ -137,7 +141,7 @@ class FACTFinder_Core_Model_Export_Type_Price extends Mage_Core_Model_Resource_D
|
|
137 |
$semaphore->release();
|
138 |
}
|
139 |
|
140 |
-
if (
|
141 |
return false;
|
142 |
}
|
143 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
86 |
$dir = Mage::helper('factfinder/export')->getExportDirectory();
|
87 |
$fileName = $this->getFilenameForStore($storeId);
|
88 |
$this->_file = Mage::getModel('factfinder/file');
|
89 |
+
|
90 |
+
if (Mage::helper('factfinder/export')->isValidationEnabled($storeId) ) {
|
91 |
+
$this->_file->setValidator(Mage::getModel(self::FILE_VALIDATOR));
|
92 |
+
}
|
93 |
+
|
94 |
$this->_file->open($dir, $fileName);
|
95 |
}
|
96 |
|
141 |
$semaphore->release();
|
142 |
}
|
143 |
|
144 |
+
if (!$this->_getFile($storeId)->isValid()) {
|
145 |
return false;
|
146 |
}
|
147 |
|
app/code/community/FACTFinder/Core/Model/Export/Type/Product.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -16,12 +16,12 @@
|
|
16 |
*
|
17 |
* This class provides the Product export
|
18 |
*
|
19 |
-
* @method getResource()
|
20 |
*
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Core
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
-
* @copyright Copyright (c)
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
@@ -33,12 +33,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
33 |
const CSV_DELIMITER = ';';
|
34 |
const FILE_VALIDATOR = 'factfinder/file_validator_product';
|
35 |
|
36 |
-
/**
|
37 |
-
* Option ID to Value Mapping Array
|
38 |
-
* @var mixed
|
39 |
-
*/
|
40 |
-
protected $_optionIdToValue = null;
|
41 |
-
|
42 |
/**
|
43 |
* Products to Category Path Mapping
|
44 |
*
|
@@ -56,26 +50,7 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
56 |
* export attribute codes
|
57 |
* @var mixed
|
58 |
*/
|
59 |
-
protected $
|
60 |
-
|
61 |
-
/**
|
62 |
-
* export attribute objects
|
63 |
-
* @var mixed
|
64 |
-
*/
|
65 |
-
protected $_exportAttributes = null;
|
66 |
-
|
67 |
-
/**
|
68 |
-
* helper to generate the image urls
|
69 |
-
* @var Mage_Catalog_Helper_Image
|
70 |
-
*/
|
71 |
-
protected $_imageHelper = null;
|
72 |
-
|
73 |
-
/**
|
74 |
-
* add CSV Row
|
75 |
-
*
|
76 |
-
* @param array $data
|
77 |
-
*/
|
78 |
-
protected $_lines = array();
|
79 |
|
80 |
/**
|
81 |
* @var FACTFinder_Core_Model_File
|
@@ -96,9 +71,18 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
96 |
);
|
97 |
|
98 |
/**
|
99 |
-
*
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
100 |
*/
|
101 |
-
protected $
|
102 |
|
103 |
|
104 |
/**
|
@@ -107,8 +91,7 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
107 |
*/
|
108 |
protected function _construct()
|
109 |
{
|
110 |
-
$this->_init('factfinder/
|
111 |
-
$this->_engine = Mage::helper('catalogsearch')->getEngine();
|
112 |
}
|
113 |
|
114 |
|
@@ -150,35 +133,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
150 |
}
|
151 |
|
152 |
|
153 |
-
/**
|
154 |
-
* get Option Text by Option ID
|
155 |
-
*
|
156 |
-
* @param int $optionId Option ID
|
157 |
-
* @param int $storeId Store ID
|
158 |
-
*
|
159 |
-
* @return string
|
160 |
-
*/
|
161 |
-
protected function _getAttributeOptionText($optionId, $storeId)
|
162 |
-
{
|
163 |
-
$value = '';
|
164 |
-
if (intval($optionId)) {
|
165 |
-
if ($this->_optionIdToValue === null) {
|
166 |
-
/** @var Mage_Eav_Model_Resource_Entity_Attribute_Option_Collection $optionCollection */
|
167 |
-
$optionCollection = Mage::getResourceModel('eav/entity_attribute_option_collection');
|
168 |
-
$optionCollection->setStoreFilter($storeId);
|
169 |
-
$this->_optionIdToValue = array();
|
170 |
-
foreach ($optionCollection as $option) {
|
171 |
-
$this->_optionIdToValue[$option->getId()] = $option->getValue();
|
172 |
-
}
|
173 |
-
}
|
174 |
-
|
175 |
-
$value = isset($this->_optionIdToValue[$optionId]) ? $this->_optionIdToValue[$optionId] : '';
|
176 |
-
}
|
177 |
-
|
178 |
-
return $value;
|
179 |
-
}
|
180 |
-
|
181 |
-
|
182 |
/**
|
183 |
* Get CSV Header Array
|
184 |
*
|
@@ -186,58 +140,31 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
186 |
*
|
187 |
* @return array
|
188 |
*/
|
189 |
-
protected function
|
190 |
{
|
191 |
-
if (!isset($this->
|
192 |
-
$headerDynamic = array();
|
193 |
-
|
194 |
$additionalColumns = array();
|
195 |
if (Mage::getStoreConfigFlag('factfinder/export/urls', $storeId)) {
|
196 |
$additionalColumns[] = 'image';
|
197 |
-
$this->_imageHelper = Mage::helper('catalog/image');
|
198 |
}
|
199 |
$additionalColumns[] = 'deeplink';
|
200 |
|
201 |
-
|
202 |
-
foreach ($this->_getSearchableAttributes(null, 'system', $storeId) as $attribute) {
|
203 |
-
if (in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility'))) {
|
204 |
-
continue;
|
205 |
-
}
|
206 |
|
207 |
-
|
208 |
-
}
|
209 |
-
|
210 |
-
// compare dynamic with setup attributes
|
211 |
-
$headerSetup = Mage::helper('factfinder/backend')
|
212 |
-
->unserializeFieldValue(Mage::getStoreConfig('factfinder/export/attributes', $storeId));
|
213 |
-
foreach ($headerDynamic as $code) {
|
214 |
-
if (in_array($code, $headerSetup)) {
|
215 |
-
continue;
|
216 |
-
}
|
217 |
-
|
218 |
-
$headerSetup[$code]['attribute'] = $code;
|
219 |
-
}
|
220 |
-
|
221 |
-
// remove default attributes from setup
|
222 |
-
foreach ($this->_defaultHeader as $code) {
|
223 |
-
if (array_key_exists($code, $headerSetup)) {
|
224 |
-
unset($headerSetup[$code]);
|
225 |
-
}
|
226 |
-
}
|
227 |
-
|
228 |
-
$this->_exportAttributeCodes[$storeId] = array_merge(
|
229 |
$this->_defaultHeader,
|
230 |
$additionalColumns,
|
231 |
-
|
232 |
);
|
233 |
|
234 |
// apply field limit as required by ff
|
235 |
-
if(count($this->
|
236 |
-
array_splice($this->
|
237 |
}
|
238 |
}
|
239 |
|
240 |
-
|
|
|
241 |
}
|
242 |
|
243 |
|
@@ -318,8 +245,12 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
318 |
$fileName = $this->getFilenameForStore($storeId);
|
319 |
|
320 |
$file = Mage::getModel('factfinder/file');
|
321 |
-
|
322 |
-
|
|
|
|
|
|
|
|
|
323 |
|
324 |
$this->_file[$storeId] = $file;
|
325 |
}
|
@@ -342,115 +273,72 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
342 |
|
343 |
$idFieldName = Mage::helper('factfinder/search')->getIdFieldName();
|
344 |
|
345 |
-
$header = $this->
|
346 |
$this->_writeCsvRow($header, $storeId);
|
347 |
|
348 |
-
|
349 |
-
$
|
350 |
-
|
351 |
-
$dynamicFields = $this->_getDynamicFields();
|
352 |
-
|
353 |
-
// status and visibility filter
|
354 |
-
$visibility = $this->getResource()->getSearchableAttribute('visibility');
|
355 |
-
$status = $this->getResource()->getSearchableAttribute('status');
|
356 |
-
$visibilityVals = Mage::getSingleton('catalog/product_visibility')->getVisibleInSearchIds();
|
357 |
-
$statusVals = Mage::getSingleton('catalog/product_status')->getVisibleStatusIds();
|
358 |
|
359 |
$lastProductId = 0;
|
360 |
while (true) {
|
|
|
361 |
$products = $this->getResource()->getSearchableProducts($storeId, $staticFields, $lastProductId);
|
362 |
if (!$products) {
|
363 |
break;
|
364 |
}
|
365 |
|
366 |
-
$
|
367 |
$productRelations = array();
|
368 |
foreach ($products as $productData) {
|
369 |
-
$
|
370 |
-
$
|
371 |
-
$productChildren = $this->getResource()
|
372 |
-
|
373 |
-
|
374 |
-
foreach ($productChildren as $productChild) {
|
375 |
-
$productAttributes[$productChild['entity_id']] = $productChild;
|
376 |
}
|
|
|
|
|
377 |
}
|
378 |
|
379 |
-
$
|
380 |
-
->getProductAttributes($storeId,
|
|
|
381 |
foreach ($products as $productData) {
|
382 |
-
if (
|
383 |
continue;
|
384 |
}
|
385 |
|
386 |
-
$
|
387 |
-
|
388 |
-
if (!isset($productAttr[$visibility->getId()])
|
389 |
-
|| !in_array($productAttr[$visibility->getId()], $visibilityVals)
|
390 |
-
) {
|
391 |
-
continue;
|
392 |
-
}
|
393 |
|
394 |
-
|
395 |
-
continue;
|
396 |
-
}
|
397 |
|
398 |
-
$categoryPath = $this->_getCategoryPath($
|
399 |
|
400 |
if ($categoryPath == '' && !$this->_isExportProductsWithoutCategories($storeId)) {
|
401 |
continue;
|
402 |
}
|
403 |
|
404 |
$productIndex = array(
|
405 |
-
$
|
406 |
$productData[$idFieldName],
|
407 |
$productData['sku'],
|
408 |
$categoryPath,
|
409 |
-
$this->_formatAttributes('filterable', $
|
410 |
-
$this->_formatAttributes('searchable', $
|
411 |
-
$this->_formatAttributes('numerical', $
|
412 |
);
|
413 |
|
414 |
$productIndex = $this->_exportImageAndDeepLink($productIndex, $productData, $storeId);
|
415 |
-
|
416 |
-
|
417 |
|
418 |
$this->_writeCsvRow($productIndex, $storeId);
|
419 |
|
420 |
-
$
|
421 |
-
foreach ($productChildren as $productChild) {
|
422 |
-
if (isset($productAttributes[$productChild['entity_id']])) {
|
423 |
-
|
424 |
-
$productAttr = $productAttributes[$productChild['entity_id']];
|
425 |
-
|
426 |
-
$subProductIndex = array(
|
427 |
-
$productChild['entity_id'],
|
428 |
-
$productData[$idFieldName],
|
429 |
-
$productChild['sku'],
|
430 |
-
$this->_getCategoryPath($productData['entity_id'], $storeId),
|
431 |
-
$this->_formatAttributes('filterable', $productAttr, $storeId),
|
432 |
-
$this->_formatAttributes('searchable', $productAttr, $storeId),
|
433 |
-
$this->_formatAttributes('numerical', $productAttr, $storeId),
|
434 |
-
);
|
435 |
-
//dont need to add image and deeplink to child product, just add empty values
|
436 |
-
if ($this->getHelper()->shouldExportImages($storeId)) {
|
437 |
-
$subProductIndex[] = '';
|
438 |
-
}
|
439 |
-
$subProductIndex[] = '';
|
440 |
-
|
441 |
-
$subProductIndex = $this->_getAttributesRowArray(
|
442 |
-
$subProductIndex,
|
443 |
-
$productAttributes[$productChild['entity_id']],
|
444 |
-
$storeId
|
445 |
-
);
|
446 |
-
|
447 |
-
$this->_writeCsvRow($subProductIndex, $storeId);
|
448 |
-
}
|
449 |
-
}
|
450 |
}
|
451 |
}
|
452 |
|
453 |
-
if (
|
454 |
return false;
|
455 |
}
|
456 |
|
@@ -468,102 +356,8 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
468 |
*/
|
469 |
protected function _resetInternalState()
|
470 |
{
|
471 |
-
$this->_lines = array();
|
472 |
$this->_categoryNames = null;
|
473 |
$this->_productsToCategoryPath = null;
|
474 |
-
$this->_exportAttributes = null;
|
475 |
-
}
|
476 |
-
|
477 |
-
/**
|
478 |
-
* Get attributes by type
|
479 |
-
*
|
480 |
-
* @param string $type Possible values: filterable|searchable|numerical
|
481 |
-
* @param int $storeId
|
482 |
-
*
|
483 |
-
* @return array
|
484 |
-
*/
|
485 |
-
protected function _getAttributesByType($type, $storeId)
|
486 |
-
{
|
487 |
-
switch ($type) {
|
488 |
-
case 'numerical':
|
489 |
-
$attributes = $this->_getSearchableAttributes('decimal', $type, $storeId);
|
490 |
-
break;
|
491 |
-
default:
|
492 |
-
$attributes = $this->_getSearchableAttributes(null, $type, $storeId);
|
493 |
-
}
|
494 |
-
|
495 |
-
return $attributes;
|
496 |
-
}
|
497 |
-
|
498 |
-
|
499 |
-
/**
|
500 |
-
* Format attributes for csv
|
501 |
-
*
|
502 |
-
* @param string $type
|
503 |
-
* @param array $values
|
504 |
-
* @param null|int $storeId
|
505 |
-
*
|
506 |
-
* @return string
|
507 |
-
*/
|
508 |
-
protected function _formatAttributes($type, $values, $storeId = null)
|
509 |
-
{
|
510 |
-
$attributes = $this->_getAttributesByType($type, $storeId);
|
511 |
-
|
512 |
-
$returnArray = array();
|
513 |
-
$counter = 0;
|
514 |
-
|
515 |
-
foreach ($attributes as $attribute) {
|
516 |
-
$attributeValue = isset($values[$attribute->getId()]) ? $values[$attribute->getId()] : null;
|
517 |
-
if (!$attributeValue
|
518 |
-
|| in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility', 'price'))
|
519 |
-
) {
|
520 |
-
continue;
|
521 |
-
}
|
522 |
-
|
523 |
-
$attributeValues = $this->_getAttributeValue($attribute->getId(), $attributeValue, $storeId);
|
524 |
-
|
525 |
-
if (!is_array($attributeValues)) {
|
526 |
-
$attributeValues = array($attributeValues);
|
527 |
-
}
|
528 |
-
|
529 |
-
$attributeValues = $this->_filterAttributeValues($attributeValues);
|
530 |
-
foreach ($attributeValues as $attributeValue) {
|
531 |
-
$attributeValue = $this->_removeTags($attributeValue, $storeId);
|
532 |
-
if ($type == 'searchable') {
|
533 |
-
$returnArray[] = $attributeValue;
|
534 |
-
} else {
|
535 |
-
$attributeCode = $this->_removeTags($attribute->getAttributeCode(), $storeId);
|
536 |
-
$attributeValue = str_replace(array('|', '=', '#'), '', array($attributeCode, $attributeValue));
|
537 |
-
$returnArray[] = implode('=', $attributeValue);
|
538 |
-
}
|
539 |
-
}
|
540 |
-
|
541 |
-
// apply field limit as required by ff
|
542 |
-
$counter++;
|
543 |
-
if ($counter >= 1000) {
|
544 |
-
break;
|
545 |
-
}
|
546 |
-
}
|
547 |
-
|
548 |
-
$delimiter = ($type == 'searchable' ? ',' : '|');
|
549 |
-
|
550 |
-
return implode($delimiter, $returnArray);
|
551 |
-
}
|
552 |
-
|
553 |
-
|
554 |
-
/**
|
555 |
-
* Remove all empty values from array
|
556 |
-
*
|
557 |
-
* @param array $values
|
558 |
-
*
|
559 |
-
* @return array
|
560 |
-
*/
|
561 |
-
protected function _filterAttributeValues($values)
|
562 |
-
{
|
563 |
-
// filter all empty values out
|
564 |
-
return array_filter($values, function ($value) {
|
565 |
-
return !empty($value);
|
566 |
-
});
|
567 |
}
|
568 |
|
569 |
|
@@ -613,193 +407,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
613 |
}
|
614 |
|
615 |
|
616 |
-
/**
|
617 |
-
* Retrieve attribute source value for search
|
618 |
-
* This method is mostly copied from Mage_CatalogSearch_Model_Resource_Fulltext,
|
619 |
-
* but it also retrieves attribute values from non-searchable/non-filterable attributes
|
620 |
-
*
|
621 |
-
* @param int $attributeId
|
622 |
-
* @param mixed $value
|
623 |
-
* @param int $storeId
|
624 |
-
*
|
625 |
-
* @return mixed
|
626 |
-
*/
|
627 |
-
protected function _getAttributeValue($attributeId, $value, $storeId)
|
628 |
-
{
|
629 |
-
$attribute = $this->getResource()->getSearchableAttribute($attributeId);
|
630 |
-
if (!$attribute->getIsSearchable() && $attribute->getAttributeCode() == 'visibility') {
|
631 |
-
return $value;
|
632 |
-
}
|
633 |
-
|
634 |
-
if ($attribute->usesSource()) {
|
635 |
-
if (method_exists($this->_engine, 'allowAdvancedIndex') && $this->_engine->allowAdvancedIndex()) {
|
636 |
-
return $value;
|
637 |
-
}
|
638 |
-
|
639 |
-
$attribute->setStoreId($storeId);
|
640 |
-
$value = $attribute->getSource()->getOptionText($value);
|
641 |
-
|
642 |
-
if (empty($value)) {
|
643 |
-
$inputType = $attribute->getFrontend()->getInputType();
|
644 |
-
if ($inputType == 'select' || $inputType == 'multiselect') {
|
645 |
-
return null;
|
646 |
-
}
|
647 |
-
}
|
648 |
-
} elseif ($attribute->getBackendType() == 'datetime') {
|
649 |
-
$value = strtotime($value) * 1000; // Java.lang.System.currentTimeMillis()
|
650 |
-
} else {
|
651 |
-
$inputType = $attribute->getFrontend()->getInputType();
|
652 |
-
if ($inputType == 'price') {
|
653 |
-
$value = Mage::app()->getStore($storeId)->roundPrice($value);
|
654 |
-
}
|
655 |
-
}
|
656 |
-
|
657 |
-
return $value;
|
658 |
-
}
|
659 |
-
|
660 |
-
|
661 |
-
/**
|
662 |
-
* get Attribute Row Array
|
663 |
-
*
|
664 |
-
* @param array $dataArray Export row Array
|
665 |
-
* @param array $values Attributes Array
|
666 |
-
* @param int $storeId Store ID
|
667 |
-
*
|
668 |
-
* @return array
|
669 |
-
*/
|
670 |
-
protected function _getAttributesRowArray($dataArray, $values, $storeId = null)
|
671 |
-
{
|
672 |
-
// get attributes objects assigned to their position at the export
|
673 |
-
if ($this->_exportAttributes == null) {
|
674 |
-
$this->_exportAttributes = array_fill(0, count($this->_getExportAttributes($storeId)), null);
|
675 |
-
|
676 |
-
$attributeCodes = array_flip($this->_getExportAttributes($storeId));
|
677 |
-
foreach ($this->_getSearchableAttributes() as $attribute) {
|
678 |
-
if (isset($attributeCodes[$attribute->getAttributeCode()])
|
679 |
-
&& !in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility'))
|
680 |
-
) {
|
681 |
-
$this->_exportAttributes[$attributeCodes[$attribute->getAttributeCode()]] = $attribute;
|
682 |
-
}
|
683 |
-
}
|
684 |
-
}
|
685 |
-
|
686 |
-
// fill dataArray with the values of the attributes that should be exported
|
687 |
-
foreach ($this->_exportAttributes as $pos => $attribute) {
|
688 |
-
if ($attribute != null) {
|
689 |
-
$value = isset($values[$attribute->getId()]) ? $values[$attribute->getId()] : null;
|
690 |
-
$value = $this->_getAttributeValue($attribute->getId(), $value, $storeId);
|
691 |
-
$value = $this->_removeTags($value, $storeId);
|
692 |
-
$dataArray[$pos] = $value;
|
693 |
-
} else if (!array_key_exists($pos, $dataArray)) {
|
694 |
-
// it's unlikely that an attribute exists in header but is not delivered by "getSearchableAttributes",
|
695 |
-
// but actually it might be a result of a broken database or something like that..
|
696 |
-
$dataArray[$pos] = null;
|
697 |
-
}
|
698 |
-
}
|
699 |
-
|
700 |
-
return $dataArray;
|
701 |
-
}
|
702 |
-
|
703 |
-
|
704 |
-
/**
|
705 |
-
* Check whether the attribute should be skipped
|
706 |
-
*
|
707 |
-
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
708 |
-
* @param string $type
|
709 |
-
*
|
710 |
-
* @return bool
|
711 |
-
*/
|
712 |
-
protected function _checkIfSkipAttribute($attribute, $type)
|
713 |
-
{
|
714 |
-
$shouldSkip = false;
|
715 |
-
switch ($type) {
|
716 |
-
case "system":
|
717 |
-
if ($attribute->getIsUserDefined() && !$attribute->getUsedForSortBy()) {
|
718 |
-
$shouldSkip = true;
|
719 |
-
}
|
720 |
-
break;
|
721 |
-
case "sortable":
|
722 |
-
if (!$attribute->getUsedForSortBy()) {
|
723 |
-
$shouldSkip = true;
|
724 |
-
}
|
725 |
-
break;
|
726 |
-
case "filterable":
|
727 |
-
$shouldSkip = $this->_shouldSkipFilterableAttribute($attribute);
|
728 |
-
break;
|
729 |
-
case 'numerical':
|
730 |
-
$shouldSkip = $this->_shouldSkipNumericalAttribute($attribute);
|
731 |
-
break;
|
732 |
-
case "searchable":
|
733 |
-
$shouldSkip = $this->_shouldSkipSearchableAttribute($attribute);
|
734 |
-
break;
|
735 |
-
default:;
|
736 |
-
}
|
737 |
-
|
738 |
-
return $shouldSkip;
|
739 |
-
}
|
740 |
-
|
741 |
-
|
742 |
-
/**
|
743 |
-
* Check if we should skip searchable attribute
|
744 |
-
*
|
745 |
-
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
746 |
-
*
|
747 |
-
* @return bool
|
748 |
-
*/
|
749 |
-
protected function _shouldSkipSearchableAttribute($attribute)
|
750 |
-
{
|
751 |
-
if (!$attribute->getIsUserDefined()
|
752 |
-
|| !$attribute->getIsSearchable()
|
753 |
-
|| in_array($attribute->getAttributeCode(), $this->_getExportAttributes())
|
754 |
-
|| $attribute->getBackendType() === 'decimal'
|
755 |
-
) {
|
756 |
-
return true;
|
757 |
-
}
|
758 |
-
|
759 |
-
return false;
|
760 |
-
}
|
761 |
-
|
762 |
-
|
763 |
-
/**
|
764 |
-
* Check if we should skip filterable attribute
|
765 |
-
*
|
766 |
-
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
767 |
-
*
|
768 |
-
* @return bool
|
769 |
-
*/
|
770 |
-
protected function _shouldSkipFilterableAttribute($attribute)
|
771 |
-
{
|
772 |
-
if (!$attribute->getIsFilterableInSearch()
|
773 |
-
|| in_array($attribute->getAttributeCode(), $this->_getExportAttributes())
|
774 |
-
|| $attribute->getBackendType() === 'decimal'
|
775 |
-
) {
|
776 |
-
return true;
|
777 |
-
}
|
778 |
-
|
779 |
-
return false;
|
780 |
-
}
|
781 |
-
|
782 |
-
|
783 |
-
/**
|
784 |
-
* Check if we should skip numerical attribute
|
785 |
-
*
|
786 |
-
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
787 |
-
*
|
788 |
-
* @return bool
|
789 |
-
*/
|
790 |
-
protected function _shouldSkipNumericalAttribute($attribute)
|
791 |
-
{
|
792 |
-
if (!$attribute->getIsFilterableInSearch()
|
793 |
-
|| in_array($attribute->getAttributeCode(), $this->_getExportAttributes())
|
794 |
-
|| $attribute->getBackendType() != 'decimal'
|
795 |
-
) {
|
796 |
-
return true;
|
797 |
-
}
|
798 |
-
|
799 |
-
return false;
|
800 |
-
}
|
801 |
-
|
802 |
-
|
803 |
/**
|
804 |
* Add image and deep link information to product row
|
805 |
*
|
@@ -829,71 +436,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
829 |
}
|
830 |
|
831 |
|
832 |
-
/**
|
833 |
-
* Get array of dynamic fields to use in csv
|
834 |
-
*
|
835 |
-
* @return array
|
836 |
-
*/
|
837 |
-
protected function _getDynamicFields()
|
838 |
-
{
|
839 |
-
$dynamicFields = array();
|
840 |
-
foreach (array('int', 'varchar', 'text', 'decimal', 'datetime') as $type) {
|
841 |
-
$dynamicFields[$type] = array_keys($this->_getSearchableAttributes($type));
|
842 |
-
}
|
843 |
-
|
844 |
-
return $dynamicFields;
|
845 |
-
}
|
846 |
-
|
847 |
-
|
848 |
-
/**
|
849 |
-
* Get array of static fields to use in csv
|
850 |
-
*
|
851 |
-
* @param int $storeId
|
852 |
-
*
|
853 |
-
* @return array
|
854 |
-
*/
|
855 |
-
protected function _getStaticFields($storeId)
|
856 |
-
{
|
857 |
-
$staticFields = array();
|
858 |
-
foreach ($this->_getSearchableAttributes('static', 'system', $storeId) as $attribute) {
|
859 |
-
$staticFields[] = $attribute->getAttributeCode();
|
860 |
-
}
|
861 |
-
return $staticFields;
|
862 |
-
}
|
863 |
-
|
864 |
-
|
865 |
-
/**
|
866 |
-
* Check if html tags and entities should be removed on export
|
867 |
-
*
|
868 |
-
* @param string $value
|
869 |
-
* @param int $storeId
|
870 |
-
*
|
871 |
-
* @return bool
|
872 |
-
*/
|
873 |
-
protected function _removeTags($value, $storeId)
|
874 |
-
{
|
875 |
-
if (Mage::getStoreConfig('factfinder/export/remove_tags', $storeId)) {
|
876 |
-
$attributeValues = $value;
|
877 |
-
if (!is_array($attributeValues)) {
|
878 |
-
$attributeValues = array($value);
|
879 |
-
}
|
880 |
-
foreach ($attributeValues as &$attributeValue) {
|
881 |
-
// decode html entities
|
882 |
-
$attributeValue = html_entity_decode($attributeValue, null, 'UTF-8');
|
883 |
-
// Add spaces before HTML Tags, so that strip_tags() does not join word which were in different block elements
|
884 |
-
// Additional spaces are not an issue, because they will be removed in the next step anyway
|
885 |
-
$attributeValue = preg_replace('/</u', ' <', $attributeValue);
|
886 |
-
$attributeValue = preg_replace("#\s+#siu", ' ', trim(strip_tags($attributeValue)));
|
887 |
-
// remove rest html entities
|
888 |
-
$attributeValue = preg_replace("/&(?:[a-z\d]|#\d|#x[a-f\d]){2,8};/i", '', $attributeValue);
|
889 |
-
}
|
890 |
-
$value = implode("|", $attributeValues);
|
891 |
-
}
|
892 |
-
|
893 |
-
return $value;
|
894 |
-
}
|
895 |
-
|
896 |
-
|
897 |
/**
|
898 |
* Check if products without categories should be exported
|
899 |
*
|
@@ -932,6 +474,7 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
932 |
->getCollection()
|
933 |
->addAttributeToFilter('entity_id', $productId)
|
934 |
->setStoreId($storeId)
|
|
|
935 |
->addUrlRewrite()
|
936 |
->getFirstItem()
|
937 |
->getProductUrl();
|
@@ -985,41 +528,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
985 |
}
|
986 |
|
987 |
|
988 |
-
/**
|
989 |
-
* Get searchable attributes by type
|
990 |
-
*
|
991 |
-
* @param null $backendType Backend type of the attributes
|
992 |
-
* @param string $type Possible Types: system, sortable, filterable, searchable
|
993 |
-
* @param int $storeId
|
994 |
-
*
|
995 |
-
* @return array
|
996 |
-
*/
|
997 |
-
protected function _getSearchableAttributes($backendType = null, $type = null, $storeId = 0)
|
998 |
-
{
|
999 |
-
$attributes = array();
|
1000 |
-
|
1001 |
-
if ($type !== null || $backendType !== null) {
|
1002 |
-
foreach ($this->getResource()->getSearchableAttributes($storeId) as $attribute) {
|
1003 |
-
if ($backendType !== null
|
1004 |
-
&& $attribute->getBackendType() != $backendType
|
1005 |
-
) {
|
1006 |
-
continue;
|
1007 |
-
}
|
1008 |
-
|
1009 |
-
if ($this->_checkIfSkipAttribute($attribute, $type)) {
|
1010 |
-
continue;
|
1011 |
-
}
|
1012 |
-
|
1013 |
-
$attributes[$attribute->getId()] = $attribute;
|
1014 |
-
}
|
1015 |
-
} else {
|
1016 |
-
$attributes = $this->getResource()->getSearchableAttributes($storeId);
|
1017 |
-
}
|
1018 |
-
|
1019 |
-
return $attributes;
|
1020 |
-
}
|
1021 |
-
|
1022 |
-
|
1023 |
/**
|
1024 |
* Get number of products that should be exported
|
1025 |
*
|
@@ -1029,8 +537,8 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1029 |
*/
|
1030 |
public function getSize($storeId)
|
1031 |
{
|
1032 |
-
$staticFields = $this->
|
1033 |
-
$dynamicFields = $this->
|
1034 |
|
1035 |
$count = 0;
|
1036 |
|
@@ -1056,7 +564,8 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1056 |
|
1057 |
$lastId = $productData['entity_id'];
|
1058 |
|
1059 |
-
$attributes = $this->
|
|
|
1060 |
foreach ($products as $productData) {
|
1061 |
|
1062 |
if ($this->shouldSkipProduct($attributes, $productData)) {
|
@@ -1071,7 +580,6 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1071 |
|
1072 |
$count++;
|
1073 |
|
1074 |
-
|
1075 |
$children = $relations[$productData['entity_id']];
|
1076 |
foreach ($children as $child) {
|
1077 |
if (isset($attributes[$child['entity_id']])) {
|
@@ -1081,12 +589,11 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1081 |
}
|
1082 |
}
|
1083 |
|
1084 |
-
|
1085 |
return $count;
|
1086 |
}
|
1087 |
|
1088 |
|
1089 |
-
|
1090 |
* Check if product should be skipped in export
|
1091 |
*
|
1092 |
* @param $attributes
|
@@ -1096,24 +603,25 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1096 |
*/
|
1097 |
protected function shouldSkipProduct($attributes, $productData)
|
1098 |
{
|
1099 |
-
|
1100 |
if (!isset($attributes[$productData['entity_id']])) {
|
1101 |
return true;
|
1102 |
}
|
1103 |
|
1104 |
// status and visibility filter
|
1105 |
-
|
1106 |
-
|
|
|
|
|
1107 |
|
1108 |
$visibilities = Mage::getSingleton('catalog/product_visibility')->getVisibleInSearchIds();
|
1109 |
$statuses = Mage::getSingleton('catalog/product_status')->getVisibleStatusIds();
|
1110 |
|
1111 |
$productAttributes = $attributes[$productData['entity_id']];
|
1112 |
|
1113 |
-
if (!isset($productAttributes[$
|
1114 |
-
|| !isset($productAttributes[$
|
1115 |
-
|| !in_array($productAttributes[$
|
1116 |
-
|| !in_array($productAttributes[$
|
1117 |
) {
|
1118 |
return true;
|
1119 |
}
|
@@ -1122,4 +630,80 @@ class FACTFinder_Core_Model_Export_Type_Product extends Mage_Core_Model_Abstract
|
|
1122 |
}
|
1123 |
|
1124 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1125 |
}
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
16 |
*
|
17 |
* This class provides the Product export
|
18 |
*
|
19 |
+
* @method FACTFinder_Core_Model_Resource_Product getResource()
|
20 |
*
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Core
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
33 |
const CSV_DELIMITER = ';';
|
34 |
const FILE_VALIDATOR = 'factfinder/file_validator_product';
|
35 |
|
|
|
|
|
|
|
|
|
|
|
|
|
36 |
/**
|
37 |
* Products to Category Path Mapping
|
38 |
*
|
50 |
* export attribute codes
|
51 |
* @var mixed
|
52 |
*/
|
53 |
+
protected $_headerColumns = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
54 |
|
55 |
/**
|
56 |
* @var FACTFinder_Core_Model_File
|
71 |
);
|
72 |
|
73 |
/**
|
74 |
+
* Visibility attribute id
|
75 |
+
*
|
76 |
+
* @var int
|
77 |
+
*/
|
78 |
+
protected $_visibilityId;
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Status attribute id
|
82 |
+
*
|
83 |
+
* @var int
|
84 |
*/
|
85 |
+
protected $_statusId;
|
86 |
|
87 |
|
88 |
/**
|
91 |
*/
|
92 |
protected function _construct()
|
93 |
{
|
94 |
+
$this->_init('factfinder/product');
|
|
|
95 |
}
|
96 |
|
97 |
|
133 |
}
|
134 |
|
135 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
136 |
/**
|
137 |
* Get CSV Header Array
|
138 |
*
|
140 |
*
|
141 |
* @return array
|
142 |
*/
|
143 |
+
protected function _getHeader($storeId = 0)
|
144 |
{
|
145 |
+
if (!isset($this->_headerColumns[$storeId])) {
|
|
|
|
|
146 |
$additionalColumns = array();
|
147 |
if (Mage::getStoreConfigFlag('factfinder/export/urls', $storeId)) {
|
148 |
$additionalColumns[] = 'image';
|
|
|
149 |
}
|
150 |
$additionalColumns[] = 'deeplink';
|
151 |
|
152 |
+
$exportAttributes = $this->getAttributeModel()->getExportAttributes($storeId);
|
|
|
|
|
|
|
|
|
153 |
|
154 |
+
$this->_headerColumns[$storeId] = array_merge(
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
155 |
$this->_defaultHeader,
|
156 |
$additionalColumns,
|
157 |
+
$exportAttributes
|
158 |
);
|
159 |
|
160 |
// apply field limit as required by ff
|
161 |
+
if(count($this->_headerColumns[$storeId]) > 128) {
|
162 |
+
array_splice($this->_headerColumns[$storeId], 128);
|
163 |
}
|
164 |
}
|
165 |
|
166 |
+
|
167 |
+
return $this->_headerColumns[$storeId];
|
168 |
}
|
169 |
|
170 |
|
245 |
$fileName = $this->getFilenameForStore($storeId);
|
246 |
|
247 |
$file = Mage::getModel('factfinder/file');
|
248 |
+
|
249 |
+
if ($this->getHelper()->isValidationEnabled($storeId)) {
|
250 |
+
$file->setValidator(Mage::getModel(self::FILE_VALIDATOR));
|
251 |
+
}
|
252 |
+
|
253 |
+
$file->open($dir, $fileName);
|
254 |
|
255 |
$this->_file[$storeId] = $file;
|
256 |
}
|
273 |
|
274 |
$idFieldName = Mage::helper('factfinder/search')->getIdFieldName();
|
275 |
|
276 |
+
$header = $this->_getHeader($storeId);
|
277 |
$this->_writeCsvRow($header, $storeId);
|
278 |
|
279 |
+
$staticFields = $this->getAttributeModel()->getStaticFields($storeId);
|
280 |
+
$dynamicFields = $this->getAttributeModel()->getDynamicFields($storeId);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
281 |
|
282 |
$lastProductId = 0;
|
283 |
while (true) {
|
284 |
+
// get basic product data
|
285 |
$products = $this->getResource()->getSearchableProducts($storeId, $staticFields, $lastProductId);
|
286 |
if (!$products) {
|
287 |
break;
|
288 |
}
|
289 |
|
290 |
+
$productIds = array();
|
291 |
$productRelations = array();
|
292 |
foreach ($products as $productData) {
|
293 |
+
$productId = $productData['entity_id'];
|
294 |
+
$productIds[] = $productId;
|
295 |
+
$productChildren = $this->getResource()->getProductChildIds($productId, $productData['type_id']);
|
296 |
+
foreach ($productChildren as $child) {
|
297 |
+
$productIds[] = $child['entity_id'];
|
|
|
|
|
298 |
}
|
299 |
+
$productRelations[$productId] = $productChildren;
|
300 |
+
$lastProductId = $productId;
|
301 |
}
|
302 |
|
303 |
+
$attributeValues = $this->getAttributeModel()
|
304 |
+
->getProductAttributes($storeId, $productIds, $dynamicFields); // store, ids, codes
|
305 |
+
|
306 |
foreach ($products as $productData) {
|
307 |
+
if ($this->shouldSkipProduct($attributeValues, $productData)) {
|
308 |
continue;
|
309 |
}
|
310 |
|
311 |
+
$productId = $productData['entity_id'];
|
|
|
|
|
|
|
|
|
|
|
|
|
312 |
|
313 |
+
$productAttributes = $attributeValues[$productId];
|
|
|
|
|
314 |
|
315 |
+
$categoryPath = $this->_getCategoryPath($productId, $storeId);
|
316 |
|
317 |
if ($categoryPath == '' && !$this->_isExportProductsWithoutCategories($storeId)) {
|
318 |
continue;
|
319 |
}
|
320 |
|
321 |
$productIndex = array(
|
322 |
+
$productId,
|
323 |
$productData[$idFieldName],
|
324 |
$productData['sku'],
|
325 |
$categoryPath,
|
326 |
+
$this->_formatAttributes('filterable', $productAttributes, $storeId),
|
327 |
+
$this->_formatAttributes('searchable', $productAttributes, $storeId),
|
328 |
+
$this->_formatAttributes('numerical', $productAttributes, $storeId),
|
329 |
);
|
330 |
|
331 |
$productIndex = $this->_exportImageAndDeepLink($productIndex, $productData, $storeId);
|
332 |
+
$productIndex = $this->getAttributeModel()
|
333 |
+
->addAttributesToRow($productIndex, $productAttributes, $storeId, $productData);
|
334 |
|
335 |
$this->_writeCsvRow($productIndex, $storeId);
|
336 |
|
337 |
+
$this->_exportChildren($storeId, $productRelations, $attributeValues, $productData);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
338 |
}
|
339 |
}
|
340 |
|
341 |
+
if (!$this->_getFile($storeId)->isValid()) {
|
342 |
return false;
|
343 |
}
|
344 |
|
356 |
*/
|
357 |
protected function _resetInternalState()
|
358 |
{
|
|
|
359 |
$this->_categoryNames = null;
|
360 |
$this->_productsToCategoryPath = null;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
361 |
}
|
362 |
|
363 |
|
407 |
}
|
408 |
|
409 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
410 |
/**
|
411 |
* Add image and deep link information to product row
|
412 |
*
|
436 |
}
|
437 |
|
438 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
439 |
/**
|
440 |
* Check if products without categories should be exported
|
441 |
*
|
474 |
->getCollection()
|
475 |
->addAttributeToFilter('entity_id', $productId)
|
476 |
->setStoreId($storeId)
|
477 |
+
->setPage(1, 1)
|
478 |
->addUrlRewrite()
|
479 |
->getFirstItem()
|
480 |
->getProductUrl();
|
528 |
}
|
529 |
|
530 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
531 |
/**
|
532 |
* Get number of products that should be exported
|
533 |
*
|
537 |
*/
|
538 |
public function getSize($storeId)
|
539 |
{
|
540 |
+
$staticFields = $this->getAttributeModel()->getStaticFields($storeId);
|
541 |
+
$dynamicFields = $this->getAttributeModel()->getDynamicFields($storeId);
|
542 |
|
543 |
$count = 0;
|
544 |
|
564 |
|
565 |
$lastId = $productData['entity_id'];
|
566 |
|
567 |
+
$attributes = $this->getAttributeModel()
|
568 |
+
->getProductAttributes($storeId, array_keys($attributes), $dynamicFields);
|
569 |
foreach ($products as $productData) {
|
570 |
|
571 |
if ($this->shouldSkipProduct($attributes, $productData)) {
|
580 |
|
581 |
$count++;
|
582 |
|
|
|
583 |
$children = $relations[$productData['entity_id']];
|
584 |
foreach ($children as $child) {
|
585 |
if (isset($attributes[$child['entity_id']])) {
|
589 |
}
|
590 |
}
|
591 |
|
|
|
592 |
return $count;
|
593 |
}
|
594 |
|
595 |
|
596 |
+
/**
|
597 |
* Check if product should be skipped in export
|
598 |
*
|
599 |
* @param $attributes
|
603 |
*/
|
604 |
protected function shouldSkipProduct($attributes, $productData)
|
605 |
{
|
|
|
606 |
if (!isset($attributes[$productData['entity_id']])) {
|
607 |
return true;
|
608 |
}
|
609 |
|
610 |
// status and visibility filter
|
611 |
+
if (!$this->_visibilityId && !$this->_statusId) {
|
612 |
+
$this->_visibilityId = $this->getAttributeModel()->getSearchableAttribute('visibility')->getId();
|
613 |
+
$this->_statusId = $this->getAttributeModel()->getSearchableAttribute('status')->getId();
|
614 |
+
}
|
615 |
|
616 |
$visibilities = Mage::getSingleton('catalog/product_visibility')->getVisibleInSearchIds();
|
617 |
$statuses = Mage::getSingleton('catalog/product_status')->getVisibleStatusIds();
|
618 |
|
619 |
$productAttributes = $attributes[$productData['entity_id']];
|
620 |
|
621 |
+
if (!isset($productAttributes[$this->_visibilityId])
|
622 |
+
|| !isset($productAttributes[$this->_statusId])
|
623 |
+
|| !in_array($productAttributes[$this->_visibilityId], $visibilities)
|
624 |
+
|| !in_array($productAttributes[$this->_statusId], $statuses)
|
625 |
) {
|
626 |
return true;
|
627 |
}
|
630 |
}
|
631 |
|
632 |
|
633 |
+
/**
|
634 |
+
* Get instance of attribute model
|
635 |
+
*
|
636 |
+
* @return FACTFinder_Core_Model_Export_Type_Product_Attribute
|
637 |
+
*/
|
638 |
+
protected function getAttributeModel()
|
639 |
+
{
|
640 |
+
return Mage::getSingleton('factfinder/export_type_product_attribute');
|
641 |
+
}
|
642 |
+
|
643 |
+
|
644 |
+
/**
|
645 |
+
* Export product children
|
646 |
+
*
|
647 |
+
* @param int $storeId
|
648 |
+
* @param array $productRelations
|
649 |
+
* @param array $attributeValues
|
650 |
+
* @param array $productData
|
651 |
+
*
|
652 |
+
* @return void
|
653 |
+
*/
|
654 |
+
protected function _exportChildren($storeId, $productRelations, $attributeValues, $productData)
|
655 |
+
{
|
656 |
+
$idFieldName = Mage::helper('factfinder/search')->getIdFieldName();
|
657 |
+
$productChildren = $productRelations[$productData['entity_id']];
|
658 |
+
foreach ($productChildren as $productChild) {
|
659 |
+
if (!isset($attributeValues[$productChild['entity_id']])) {
|
660 |
+
continue;
|
661 |
+
}
|
662 |
+
|
663 |
+
$productAttributes = $attributeValues[$productChild['entity_id']];
|
664 |
+
|
665 |
+
$subProductIndex = array(
|
666 |
+
$productChild['entity_id'],
|
667 |
+
$productData[$idFieldName],
|
668 |
+
$productChild['sku'],
|
669 |
+
$this->_getCategoryPath($productData['entity_id'], $storeId),
|
670 |
+
$this->_formatAttributes('filterable', $productAttributes, $storeId),
|
671 |
+
$this->_formatAttributes('searchable', $productAttributes, $storeId),
|
672 |
+
$this->_formatAttributes('numerical', $productAttributes, $storeId),
|
673 |
+
);
|
674 |
+
|
675 |
+
//no need to add image and deeplink to child product, just add empty values
|
676 |
+
if ($this->getHelper()->shouldExportImages($storeId)) {
|
677 |
+
$subProductIndex[] = '';
|
678 |
+
}
|
679 |
+
$subProductIndex[] = '';
|
680 |
+
|
681 |
+
$subProductIndex = $this->getAttributeModel()->addAttributesToRow(
|
682 |
+
$subProductIndex,
|
683 |
+
$attributeValues[$productChild['entity_id']],
|
684 |
+
$storeId,
|
685 |
+
$productData
|
686 |
+
);
|
687 |
+
|
688 |
+
$this->_writeCsvRow($subProductIndex, $storeId);
|
689 |
+
}
|
690 |
+
}
|
691 |
+
|
692 |
+
|
693 |
+
/**
|
694 |
+
* Format attributes
|
695 |
+
* Method wrapper
|
696 |
+
*
|
697 |
+
* @param $type
|
698 |
+
* @param $attributes
|
699 |
+
* @param $storeId
|
700 |
+
*
|
701 |
+
* @return string
|
702 |
+
*/
|
703 |
+
protected function _formatAttributes($type, $attributes, $storeId)
|
704 |
+
{
|
705 |
+
return $this->getAttributeModel()->formatAttributes($type, $attributes, $storeId);
|
706 |
+
}
|
707 |
+
|
708 |
+
|
709 |
}
|
app/code/community/FACTFinder/Core/Model/Export/Type/Product/Attribute.php
ADDED
@@ -0,0 +1,646 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
/**
|
4 |
+
* Class FACTFinder_Core_Model_Export_Type_Product_Attribute
|
5 |
+
*
|
6 |
+
* @method FACTFinder_Core_Model_Resource_Attribute getResource()
|
7 |
+
*/
|
8 |
+
class FACTFinder_Core_Model_Export_Type_Product_Attribute extends Mage_Core_Model_Abstract
|
9 |
+
{
|
10 |
+
|
11 |
+
/**
|
12 |
+
* Option ID to Value Mapping Array
|
13 |
+
*
|
14 |
+
* @var mixed
|
15 |
+
*/
|
16 |
+
protected $_optionIdToValue;
|
17 |
+
|
18 |
+
/**
|
19 |
+
* @var array
|
20 |
+
*/
|
21 |
+
protected $_exportAttributeCodes;
|
22 |
+
|
23 |
+
/**
|
24 |
+
* @var
|
25 |
+
*/
|
26 |
+
protected $_engine;
|
27 |
+
|
28 |
+
/**
|
29 |
+
* @var array
|
30 |
+
*/
|
31 |
+
protected $_exportAttributes;
|
32 |
+
|
33 |
+
/**
|
34 |
+
* @var array
|
35 |
+
*/
|
36 |
+
protected $_configuredAttributes;
|
37 |
+
|
38 |
+
/**
|
39 |
+
* @var array
|
40 |
+
*/
|
41 |
+
protected $_attributesByType;
|
42 |
+
|
43 |
+
/**
|
44 |
+
* @var array
|
45 |
+
*/
|
46 |
+
protected $_searchableAttributes;
|
47 |
+
|
48 |
+
|
49 |
+
protected function _construct()
|
50 |
+
{
|
51 |
+
parent::_construct();
|
52 |
+
|
53 |
+
$this->_init('factfinder/attribute');
|
54 |
+
$this->_engine = Mage::helper('catalogsearch')->getEngine();
|
55 |
+
}
|
56 |
+
|
57 |
+
|
58 |
+
/**
|
59 |
+
* Retrieve attributes configured in FF backend
|
60 |
+
*
|
61 |
+
* @param int $storeId
|
62 |
+
* @param string $type
|
63 |
+
*
|
64 |
+
* @return mixed
|
65 |
+
*/
|
66 |
+
public function getConfiguredAttributes($storeId, $type = null)
|
67 |
+
{
|
68 |
+
if (!isset($this->_configuredAttributes[$storeId])) {
|
69 |
+
$configuredAttributes = Mage::getStoreConfig('factfinder/export/attributes', $storeId);
|
70 |
+
$this->_configuredAttributes[$storeId] = unserialize($configuredAttributes);
|
71 |
+
}
|
72 |
+
|
73 |
+
if (!empty($type)) {
|
74 |
+
$result = array();
|
75 |
+
foreach ($this->_configuredAttributes[$storeId] as $code => $configuredAttribute) {
|
76 |
+
if ($configuredAttribute['type'] == $type) {
|
77 |
+
$result[$code] = $configuredAttribute;
|
78 |
+
}
|
79 |
+
}
|
80 |
+
|
81 |
+
return $result;
|
82 |
+
}
|
83 |
+
|
84 |
+
return $this->_configuredAttributes[$storeId];
|
85 |
+
}
|
86 |
+
|
87 |
+
|
88 |
+
/**
|
89 |
+
* Get text of a select option
|
90 |
+
*
|
91 |
+
* @param $optionId
|
92 |
+
* @param $storeId
|
93 |
+
*
|
94 |
+
* @return mixed|string
|
95 |
+
*/
|
96 |
+
public function getOptionText($optionId, $storeId)
|
97 |
+
{
|
98 |
+
$value = '';
|
99 |
+
if (intval($optionId)) {
|
100 |
+
if ($this->_optionIdToValue === null) {
|
101 |
+
/** @var Mage_Eav_Model_Resource_Entity_Attribute_Option_Collection $optionCollection */
|
102 |
+
$optionCollection = Mage::getResourceModel('eav/entity_attribute_option_collection');
|
103 |
+
$optionCollection->setStoreFilter($storeId);
|
104 |
+
$this->_optionIdToValue = array();
|
105 |
+
foreach ($optionCollection as $option) {
|
106 |
+
$this->_optionIdToValue[$option->getId()] = $option->getValue();
|
107 |
+
}
|
108 |
+
}
|
109 |
+
|
110 |
+
$value = isset($this->_optionIdToValue[$optionId]) ? $this->_optionIdToValue[$optionId] : '';
|
111 |
+
}
|
112 |
+
|
113 |
+
return $value;
|
114 |
+
}
|
115 |
+
|
116 |
+
|
117 |
+
/**
|
118 |
+
* Retrieve attribute source value for search
|
119 |
+
* This method is mostly copied from Mage_CatalogSearch_Model_Resource_Fulltext,
|
120 |
+
* but it also retrieves attribute values from non-searchable/non-filterable attributes
|
121 |
+
*
|
122 |
+
* @param int $attributeId
|
123 |
+
* @param mixed $value
|
124 |
+
* @param int $storeId
|
125 |
+
*
|
126 |
+
* @return mixed
|
127 |
+
*/
|
128 |
+
public function getAttributeValue($attributeId, $value, $storeId)
|
129 |
+
{
|
130 |
+
/** @var Mage_Catalog_Model_Resource_Eav_Attribute $attribute */
|
131 |
+
$attribute = $this->getSearchableAttribute($attributeId);
|
132 |
+
if (!$attribute->getIsSearchable() && $attribute->getAttributeCode() == 'visibility') {
|
133 |
+
return $value;
|
134 |
+
}
|
135 |
+
|
136 |
+
if ($attribute->usesSource()) {
|
137 |
+
if (method_exists($this->_engine, 'allowAdvancedIndex') && $this->_engine->allowAdvancedIndex()) {
|
138 |
+
return $value;
|
139 |
+
}
|
140 |
+
|
141 |
+
$attribute->setStoreId($storeId);
|
142 |
+
$value = $attribute->getSource()->getOptionText($value);
|
143 |
+
if (!is_array($value) && empty($value)) {
|
144 |
+
$inputType = $attribute->getFrontend()->getInputType();
|
145 |
+
if ($inputType == 'select' || $inputType == 'multiselect') {
|
146 |
+
return null;
|
147 |
+
}
|
148 |
+
}
|
149 |
+
} elseif ($attribute->getBackendType() == 'datetime') {
|
150 |
+
$value = strtotime($value) * 1000; // Java.lang.System.currentTimeMillis()
|
151 |
+
} else {
|
152 |
+
$inputType = $attribute->getFrontend()->getInputType();
|
153 |
+
if ($inputType == 'price') {
|
154 |
+
$value = Mage::app()->getStore($storeId)->roundPrice($value);
|
155 |
+
}
|
156 |
+
}
|
157 |
+
|
158 |
+
return $value;
|
159 |
+
}
|
160 |
+
|
161 |
+
|
162 |
+
/**
|
163 |
+
* Get attributes that can be used in search
|
164 |
+
*
|
165 |
+
* @param null $storeId
|
166 |
+
*
|
167 |
+
* @return mixed
|
168 |
+
*/
|
169 |
+
public function getSearchableAttributes($storeId = null)
|
170 |
+
{
|
171 |
+
return $this->getResource()->getSearchableAttributes($storeId);
|
172 |
+
}
|
173 |
+
|
174 |
+
|
175 |
+
/**
|
176 |
+
* Retrieve searchable attribute by Id or code
|
177 |
+
*
|
178 |
+
* @param int|string $attribute
|
179 |
+
*
|
180 |
+
* @return Mage_Eav_Model_Entity_Attribute
|
181 |
+
*/
|
182 |
+
public function getSearchableAttribute($attribute)
|
183 |
+
{
|
184 |
+
if (!isset($this->_searchableAttributes[$attribute])) {
|
185 |
+
$this->_searchableAttributes[$attribute] = $this->getResource()->getSearchableAttribute($attribute);
|
186 |
+
}
|
187 |
+
|
188 |
+
return $this->_searchableAttributes[$attribute];
|
189 |
+
}
|
190 |
+
|
191 |
+
|
192 |
+
/**
|
193 |
+
* Load product(s) attributes
|
194 |
+
*
|
195 |
+
* @param int $storeId
|
196 |
+
* @param array $productIds
|
197 |
+
* @param array $attributeTypes
|
198 |
+
*
|
199 |
+
* @return array
|
200 |
+
*/
|
201 |
+
public function getProductAttributes($storeId, array $productIds, array $attributeTypes)
|
202 |
+
{
|
203 |
+
return $this->getResource()->getProductAttributes($storeId, $productIds, $attributeTypes);
|
204 |
+
}
|
205 |
+
|
206 |
+
|
207 |
+
/**
|
208 |
+
* Get CSV Header Array
|
209 |
+
*
|
210 |
+
* @param int $storeId
|
211 |
+
*
|
212 |
+
* @return array
|
213 |
+
*/
|
214 |
+
public function getExportAttributes($storeId = 0)
|
215 |
+
{
|
216 |
+
if (!isset($this->_exportAttributeCodes[$storeId])) {
|
217 |
+
$headerDynamic = array();
|
218 |
+
|
219 |
+
// get dynamic Attributes
|
220 |
+
foreach ($this->getSearchableAttributesByType(null, 'system', $storeId) as $attribute) {
|
221 |
+
if (in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility'))) {
|
222 |
+
continue;
|
223 |
+
}
|
224 |
+
|
225 |
+
$headerDynamic[] = $attribute->getAttributeCode();
|
226 |
+
}
|
227 |
+
|
228 |
+
$configuredAttributes = array_keys($this->getConfiguredAttributes($storeId));
|
229 |
+
if (Mage::helper('factfinder/export')->useExplicitAttributes($storeId)) {
|
230 |
+
$headerDynamic = array_diff($headerDynamic, $configuredAttributes);
|
231 |
+
$configuredAttributes = array();
|
232 |
+
}
|
233 |
+
|
234 |
+
|
235 |
+
$this->_exportAttributeCodes[$storeId] = array_values(array_unique(array_merge(
|
236 |
+
$headerDynamic,
|
237 |
+
$configuredAttributes
|
238 |
+
)));
|
239 |
+
}
|
240 |
+
|
241 |
+
return $this->_exportAttributeCodes[$storeId];
|
242 |
+
}
|
243 |
+
|
244 |
+
|
245 |
+
/**
|
246 |
+
* Get searchable attributes by type
|
247 |
+
*
|
248 |
+
* @param null $backendType Backend type of the attributes
|
249 |
+
* @param string $type Possible Types: system, sortable, filterable, searchable
|
250 |
+
* @param int $storeId
|
251 |
+
*
|
252 |
+
* @return array
|
253 |
+
*/
|
254 |
+
public function getSearchableAttributesByType($backendType = null, $type = null, $storeId = 0)
|
255 |
+
{
|
256 |
+
$cacheCode = $backendType . '|' . $type . '|' . $storeId;
|
257 |
+
|
258 |
+
if (isset($this->_attributesByType[$cacheCode])) {
|
259 |
+
return $this->_attributesByType[$cacheCode];
|
260 |
+
}
|
261 |
+
|
262 |
+
$attributes = array();
|
263 |
+
|
264 |
+
if ($type !== null || $backendType !== null) {
|
265 |
+
foreach ($this->getSearchableAttributes($storeId) as $attribute) {
|
266 |
+
if ($backendType !== null && $attribute->getBackendType() != $backendType) {
|
267 |
+
continue;
|
268 |
+
}
|
269 |
+
|
270 |
+
if (!$this->_isAttributeOfType($attribute, $type, $storeId)) {
|
271 |
+
continue;
|
272 |
+
}
|
273 |
+
|
274 |
+
$attributes[$attribute->getId()] = $attribute;
|
275 |
+
}
|
276 |
+
} else {
|
277 |
+
$attributes = $this->getSearchableAttributes($storeId);
|
278 |
+
}
|
279 |
+
|
280 |
+
$this->_attributesByType[$cacheCode] = $attributes;
|
281 |
+
|
282 |
+
return $attributes;
|
283 |
+
}
|
284 |
+
|
285 |
+
|
286 |
+
/**
|
287 |
+
* Check whether the attribute is of the requested type
|
288 |
+
*
|
289 |
+
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
290 |
+
* @param string $type
|
291 |
+
* @param int $storeId
|
292 |
+
*
|
293 |
+
* @return bool
|
294 |
+
*/
|
295 |
+
protected function _isAttributeOfType($attribute, $type, $storeId = 0)
|
296 |
+
{
|
297 |
+
if ($type
|
298 |
+
&& isset($this->_attributesByType[$type][$storeId])
|
299 |
+
&& in_array($attribute->getAttributeCode(), $this->_attributesByType[$type][$storeId])
|
300 |
+
) {
|
301 |
+
return true;
|
302 |
+
}
|
303 |
+
|
304 |
+
$isOfType = true;
|
305 |
+
switch ($type) {
|
306 |
+
case 'system':
|
307 |
+
if ($attribute->getIsUserDefined() && !$attribute->getUsedForSortBy()) {
|
308 |
+
$isOfType = false;
|
309 |
+
}
|
310 |
+
break;
|
311 |
+
case 'sortable':
|
312 |
+
if (!$attribute->getUsedForSortBy()) {
|
313 |
+
$isOfType = false;
|
314 |
+
}
|
315 |
+
break;
|
316 |
+
case 'filterable':
|
317 |
+
$isOfType = $this->_isAttributeFilterable($attribute, $storeId);
|
318 |
+
break;
|
319 |
+
case 'numerical':
|
320 |
+
$isOfType = $this->_isAttributeNumerical($attribute, $storeId);
|
321 |
+
break;
|
322 |
+
case 'searchable':
|
323 |
+
$isOfType = $this->_isAttributeSearchable($attribute, $storeId);
|
324 |
+
break;
|
325 |
+
default:;
|
326 |
+
}
|
327 |
+
|
328 |
+
if ($type && $isOfType) {
|
329 |
+
$this->_attributesByType[$type][$storeId][] = $attribute->getAttributeCode();
|
330 |
+
}
|
331 |
+
|
332 |
+
return $isOfType;
|
333 |
+
}
|
334 |
+
|
335 |
+
|
336 |
+
/**
|
337 |
+
* Check if attribute is searchable
|
338 |
+
*
|
339 |
+
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
340 |
+
* @param $storeId
|
341 |
+
*
|
342 |
+
* @return bool
|
343 |
+
*/
|
344 |
+
protected function _isAttributeSearchable($attribute, $storeId)
|
345 |
+
{
|
346 |
+
if ($this->_isAttributeNumerical($attribute, $storeId)) {
|
347 |
+
return false;
|
348 |
+
}
|
349 |
+
|
350 |
+
if (!$attribute->getIsUserDefined()
|
351 |
+
|| !$attribute->getIsSearchable()
|
352 |
+
|| in_array($attribute->getAttributeCode(), $this->getExportAttributes($storeId))
|
353 |
+
) {
|
354 |
+
return true;
|
355 |
+
}
|
356 |
+
|
357 |
+
return false;
|
358 |
+
}
|
359 |
+
|
360 |
+
|
361 |
+
/**
|
362 |
+
* Check if attribute is filterable
|
363 |
+
*
|
364 |
+
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
365 |
+
* @param int $storeId
|
366 |
+
*
|
367 |
+
* @return bool
|
368 |
+
*/
|
369 |
+
protected function _isAttributeFilterable($attribute, $storeId)
|
370 |
+
{
|
371 |
+
if ($this->_isAttributeNumerical($attribute, $storeId)) {
|
372 |
+
return false;
|
373 |
+
}
|
374 |
+
|
375 |
+
if (Mage::helper('factfinder/export')->useExplicitAttributes($storeId)) {
|
376 |
+
$attributes = $this->getConfiguredAttributes($storeId, 'text');
|
377 |
+
if (in_array($attribute->getAttributeCode(), array_keys($attributes))) {
|
378 |
+
return true;
|
379 |
+
}
|
380 |
+
}
|
381 |
+
|
382 |
+
if (!$attribute->getIsFilterableInSearch()
|
383 |
+
|| in_array($attribute->getAttributeCode(), $this->getExportAttributes($storeId))
|
384 |
+
) {
|
385 |
+
return false;
|
386 |
+
}
|
387 |
+
|
388 |
+
return true;
|
389 |
+
}
|
390 |
+
|
391 |
+
|
392 |
+
/**
|
393 |
+
* Check if attribute is numerical
|
394 |
+
*
|
395 |
+
* @param Mage_Catalog_Model_Resource_EAV_Attribute $attribute
|
396 |
+
* @param int $storeId
|
397 |
+
*
|
398 |
+
* @return bool
|
399 |
+
*/
|
400 |
+
protected function _isAttributeNumerical($attribute, $storeId)
|
401 |
+
{
|
402 |
+
if (Mage::helper('factfinder/export')->useExplicitAttributes($storeId)) {
|
403 |
+
$attributes = $this->getConfiguredAttributes($storeId, 'number');
|
404 |
+
if (in_array($attribute->getAttributeCode(), array_keys($attributes))) {
|
405 |
+
return true;
|
406 |
+
}
|
407 |
+
}
|
408 |
+
|
409 |
+
if (!$attribute->getIsFilterableInSearch()
|
410 |
+
|| in_array($attribute->getAttributeCode(), $this->getExportAttributes($storeId))
|
411 |
+
|| $attribute->getBackendType() != 'decimal'
|
412 |
+
) {
|
413 |
+
return false;
|
414 |
+
}
|
415 |
+
|
416 |
+
return true;
|
417 |
+
}
|
418 |
+
|
419 |
+
|
420 |
+
/**
|
421 |
+
* Get array of static product fields
|
422 |
+
*
|
423 |
+
* @param int $storeId
|
424 |
+
*
|
425 |
+
* @return array
|
426 |
+
*/
|
427 |
+
public function getStaticFields($storeId)
|
428 |
+
{
|
429 |
+
$staticFields = array();
|
430 |
+
foreach ($this->getSearchableAttributesByType('static', 'system', $storeId) as $attribute) {
|
431 |
+
$staticFields[] = $attribute->getAttributeCode();
|
432 |
+
}
|
433 |
+
return $staticFields;
|
434 |
+
}
|
435 |
+
|
436 |
+
|
437 |
+
/**
|
438 |
+
* Get array of dynamic fields to use in csv
|
439 |
+
*
|
440 |
+
* @param $storeId
|
441 |
+
*
|
442 |
+
* @return array
|
443 |
+
*/
|
444 |
+
public function getDynamicFields($storeId)
|
445 |
+
{
|
446 |
+
$dynamicFields = array();
|
447 |
+
foreach (array('int', 'varchar', 'text', 'decimal', 'datetime') as $type) {
|
448 |
+
$dynamicFields[$type] = array_keys($this->getSearchableAttributesByType($type, null, $storeId));
|
449 |
+
}
|
450 |
+
|
451 |
+
return $dynamicFields;
|
452 |
+
}
|
453 |
+
|
454 |
+
|
455 |
+
/**
|
456 |
+
* Get Attribute Row Array
|
457 |
+
*
|
458 |
+
* @param array $dataArray Export row Array
|
459 |
+
* @param array $values Attributes Array
|
460 |
+
* @param int $storeId Store ID
|
461 |
+
* @param array $productData
|
462 |
+
*
|
463 |
+
* @return array
|
464 |
+
*/
|
465 |
+
public function addAttributesToRow($dataArray, $values, $storeId = 0, $productData = array())
|
466 |
+
{
|
467 |
+
// get attributes objects assigned to their position at the export
|
468 |
+
if (empty($this->_exportAttributes[$storeId])) {
|
469 |
+
$attributes = $this->getExportAttributes($storeId);
|
470 |
+
$this->_exportAttributes[$storeId] = array_fill_keys(
|
471 |
+
$attributes,
|
472 |
+
null
|
473 |
+
);
|
474 |
+
|
475 |
+
$searchableAttributes = $this->getSearchableAttributesByType(null, null, $storeId);
|
476 |
+
foreach ($searchableAttributes as $attribute) {
|
477 |
+
if (in_array($attribute->getAttributeCode(), $attributes)
|
478 |
+
&& !in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility'))
|
479 |
+
) {
|
480 |
+
$this->_exportAttributes[$storeId][$attribute->getAttributeCode()] = $attribute;
|
481 |
+
}
|
482 |
+
}
|
483 |
+
}
|
484 |
+
|
485 |
+
// fill dataArray with the values of the attributes that should be exported
|
486 |
+
foreach ($this->_exportAttributes[$storeId] as $code => $attribute) {
|
487 |
+
if ($attribute != null) {
|
488 |
+
$value = isset($values[$attribute->getId()]) ? $values[$attribute->getId()] : null;
|
489 |
+
if (empty($value)) {
|
490 |
+
$value = isset($productData[$code]) ? $productData[$code] : null;
|
491 |
+
}
|
492 |
+
$value = $this->getAttributeValue($attribute->getId(), $value, $storeId);
|
493 |
+
$value = $this->_removeTags($value, $storeId);
|
494 |
+
$dataArray[$code] = $value;
|
495 |
+
} else {
|
496 |
+
$dataArray[$code] = null;
|
497 |
+
}
|
498 |
+
}
|
499 |
+
|
500 |
+
return $dataArray;
|
501 |
+
}
|
502 |
+
|
503 |
+
|
504 |
+
/**
|
505 |
+
* Format attributes for csv
|
506 |
+
*
|
507 |
+
* @param string $type Possible values: filterable|searchable|numerical
|
508 |
+
* @param array $values
|
509 |
+
* @param null|int $storeId
|
510 |
+
*
|
511 |
+
* @return string
|
512 |
+
*/
|
513 |
+
public function formatAttributes($type, $values, $storeId = null)
|
514 |
+
{
|
515 |
+
$attributes = $this->getSearchableAttributesByType(null, $type, $storeId);
|
516 |
+
|
517 |
+
$returnArray = array();
|
518 |
+
$counter = 0;
|
519 |
+
|
520 |
+
foreach ($attributes as $attribute) {
|
521 |
+
$attributeValue = isset($values[$attribute->getId()]) ? $values[$attribute->getId()] : null;
|
522 |
+
if (!$attributeValue
|
523 |
+
|| in_array($attribute->getAttributeCode(), array('sku', 'status', 'visibility', 'price'))
|
524 |
+
) {
|
525 |
+
continue;
|
526 |
+
}
|
527 |
+
|
528 |
+
$attributeValues = $this->getAttributeValue($attribute->getId(), $attributeValue, $storeId);
|
529 |
+
|
530 |
+
if (!is_array($attributeValues)) {
|
531 |
+
$attributeValues = array($attributeValues);
|
532 |
+
}
|
533 |
+
|
534 |
+
$attributeValues = $this->_filterAttributeValues($attributeValues);
|
535 |
+
foreach ($attributeValues as $attributeValue) {
|
536 |
+
$attributeValue = $this->_removeTags($attributeValue, $storeId);
|
537 |
+
if ($type == 'searchable') {
|
538 |
+
$returnArray[] = $attributeValue;
|
539 |
+
} elseif ($type == 'numerical') {
|
540 |
+
$returnArray[] = $this->_formatNumericalAttributes($storeId, $attribute, $attributeValue);
|
541 |
+
} else {
|
542 |
+
$attributeCode = $this->_removeTags($attribute->getAttributeCode(), $storeId);
|
543 |
+
$attributeValue = str_replace(array('|', '=', '#'), '', array($attributeCode, $attributeValue));
|
544 |
+
$returnArray[] = implode('=', $attributeValue);
|
545 |
+
}
|
546 |
+
}
|
547 |
+
|
548 |
+
// apply field limit as required by ff
|
549 |
+
$counter++;
|
550 |
+
if ($counter >= 1000) {
|
551 |
+
break;
|
552 |
+
}
|
553 |
+
}
|
554 |
+
|
555 |
+
$delimiter = ($type == 'searchable' ? ',' : '|');
|
556 |
+
|
557 |
+
return implode($delimiter, $returnArray);
|
558 |
+
}
|
559 |
+
|
560 |
+
|
561 |
+
/**
|
562 |
+
* Check if html tags and entities should be removed on export
|
563 |
+
*
|
564 |
+
* @param string $value
|
565 |
+
* @param int $storeId
|
566 |
+
*
|
567 |
+
* @return bool
|
568 |
+
*/
|
569 |
+
protected function _removeTags($value, $storeId)
|
570 |
+
{
|
571 |
+
if (Mage::getStoreConfig('factfinder/export/remove_tags', $storeId)) {
|
572 |
+
$attributeValues = $value;
|
573 |
+
if (!is_array($attributeValues)) {
|
574 |
+
$attributeValues = array($value);
|
575 |
+
}
|
576 |
+
foreach ($attributeValues as &$attributeValue) {
|
577 |
+
// decode html entities
|
578 |
+
$attributeValue = html_entity_decode($attributeValue, null, 'UTF-8');
|
579 |
+
// Add spaces before HTML Tags, so that strip_tags() does not join word which were in different block elements
|
580 |
+
// Additional spaces are not an issue, because they will be removed in the next step anyway
|
581 |
+
$attributeValue = preg_replace('/</u', ' <', $attributeValue);
|
582 |
+
$attributeValue = preg_replace("#\s+#siu", ' ', trim(strip_tags($attributeValue)));
|
583 |
+
// remove rest html entities
|
584 |
+
$attributeValue = preg_replace("/&(?:[a-z\d]|#\d|#x[a-f\d]){2,8};/i", '', $attributeValue);
|
585 |
+
}
|
586 |
+
$value = implode("|", $attributeValues);
|
587 |
+
}
|
588 |
+
|
589 |
+
return $value;
|
590 |
+
}
|
591 |
+
|
592 |
+
|
593 |
+
/**
|
594 |
+
* Remove all empty values from array
|
595 |
+
*
|
596 |
+
* @param array $values
|
597 |
+
*
|
598 |
+
* @return array
|
599 |
+
*/
|
600 |
+
protected function _filterAttributeValues($values)
|
601 |
+
{
|
602 |
+
// filter all empty values out
|
603 |
+
return array_filter($values, function ($value) {
|
604 |
+
return !empty($value);
|
605 |
+
});
|
606 |
+
}
|
607 |
+
|
608 |
+
|
609 |
+
/**
|
610 |
+
* Format numerical attribute value
|
611 |
+
*
|
612 |
+
* @param int $storeId
|
613 |
+
* @param Mage_Catalog_Model_Resource_Eav_Attribute $attribute
|
614 |
+
* @param string $attributeValue
|
615 |
+
*
|
616 |
+
* @return array
|
617 |
+
*/
|
618 |
+
protected function _formatNumericalAttributes($storeId, $attribute, $attributeValue)
|
619 |
+
{
|
620 |
+
$attributeCode = $attribute->getAttributeCode();
|
621 |
+
if (Mage::helper('factfinder/export')->useExplicitAttributes($storeId)) {
|
622 |
+
// make sure attributes are loaded
|
623 |
+
$this->getConfiguredAttributes($storeId);
|
624 |
+
|
625 |
+
// add unit if available
|
626 |
+
if (isset($this->_configuredAttributes[$storeId][$attributeCode])) {
|
627 |
+
$configuredAttribute = $this->_configuredAttributes[$storeId][$attributeCode];
|
628 |
+
if (!empty($configuredAttribute['unit'])) {
|
629 |
+
$unit = $configuredAttribute['unit'];
|
630 |
+
$attributeCode .= '~~' . $unit;
|
631 |
+
}
|
632 |
+
}
|
633 |
+
}
|
634 |
+
|
635 |
+
$attributeCode = $this->_removeTags($attributeCode, $storeId);
|
636 |
+
|
637 |
+
// bring it to the en_US format without thousand separator (eg. 2134.7639)
|
638 |
+
$attributeValue = round(number_format(floatval($attributeValue), 4, '.', ''), 4);
|
639 |
+
// remove forbidden symbols
|
640 |
+
$attributeValue = str_replace(array('|', '=', '#'), '', array($attributeCode, $attributeValue));
|
641 |
+
|
642 |
+
return implode('=', $attributeValue);
|
643 |
+
}
|
644 |
+
|
645 |
+
|
646 |
+
}
|
app/code/community/FACTFinder/Core/Model/Export/Type/Stock.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
@@ -87,7 +87,11 @@ class FACTFinder_Core_Model_Export_Type_Stock extends Mage_Core_Model_Resource_D
|
|
87 |
$dir = Mage::helper('factfinder/export')->getExportDirectory();
|
88 |
$fileName = $this->getFilenameForStore($storeId);
|
89 |
$this->_file = Mage::getModel('factfinder/file');
|
90 |
-
|
|
|
|
|
|
|
|
|
91 |
$this->_file->open($dir, $fileName);
|
92 |
}
|
93 |
|
@@ -137,7 +141,7 @@ class FACTFinder_Core_Model_Export_Type_Stock extends Mage_Core_Model_Resource_D
|
|
137 |
$semaphore->release();
|
138 |
}
|
139 |
|
140 |
-
if (
|
141 |
return false;
|
142 |
}
|
143 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
87 |
$dir = Mage::helper('factfinder/export')->getExportDirectory();
|
88 |
$fileName = $this->getFilenameForStore($storeId);
|
89 |
$this->_file = Mage::getModel('factfinder/file');
|
90 |
+
|
91 |
+
if (Mage::helper('factfinder/export')->isValidationEnabled($storeId)) {
|
92 |
+
$this->_file->setValidator(Mage::getModel(self::FILE_VALIDATOR));
|
93 |
+
}
|
94 |
+
|
95 |
$this->_file->open($dir, $fileName);
|
96 |
}
|
97 |
|
141 |
$semaphore->release();
|
142 |
}
|
143 |
|
144 |
+
if (!$this->_getFile($storeId)->isValid()) {
|
145 |
return false;
|
146 |
}
|
147 |
|
app/code/community/FACTFinder/Core/Model/Facade.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -22,7 +22,7 @@ use FACTFinder\Loader as FF;
|
|
22 |
* @category Mage
|
23 |
* @package FACTFinder_Core
|
24 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
25 |
-
* @copyright Copyright (c)
|
26 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
27 |
* @link http://www.flagbit.de
|
28 |
*/
|
@@ -372,6 +372,10 @@ class FACTFinder_Core_Model_Facade
|
|
372 |
*/
|
373 |
protected function _getAdapter($type, $channel = null, $id = null)
|
374 |
{
|
|
|
|
|
|
|
|
|
375 |
$hashKey = $this->_getAdapterIdentifier($type, $channel, $id);
|
376 |
|
377 |
// get the channel after calculating the adapter identifier
|
@@ -593,7 +597,7 @@ class FACTFinder_Core_Model_Facade
|
|
593 |
* @param string $channel
|
594 |
* @param int $id
|
595 |
*
|
596 |
-
* @return
|
597 |
*/
|
598 |
protected function _getFactFinderObject($type, $objectGetter, $channel = null, $id = null)
|
599 |
{
|
@@ -699,4 +703,24 @@ class FACTFinder_Core_Model_Facade
|
|
699 |
}
|
700 |
|
701 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
702 |
}
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
22 |
* @category Mage
|
23 |
* @package FACTFinder_Core
|
24 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
25 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
26 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
27 |
* @link http://www.flagbit.de
|
28 |
*/
|
372 |
*/
|
373 |
protected function _getAdapter($type, $channel = null, $id = null)
|
374 |
{
|
375 |
+
if (!$this->_validateAdapterConfiguration($type)) {
|
376 |
+
Mage::throwException('Invalid search adapter configuration');
|
377 |
+
}
|
378 |
+
|
379 |
$hashKey = $this->_getAdapterIdentifier($type, $channel, $id);
|
380 |
|
381 |
// get the channel after calculating the adapter identifier
|
597 |
* @param string $channel
|
598 |
* @param int $id
|
599 |
*
|
600 |
+
* @return \FACTFinder\Adapter\AbstractAdapter|null
|
601 |
*/
|
602 |
protected function _getFactFinderObject($type, $objectGetter, $channel = null, $id = null)
|
603 |
{
|
703 |
}
|
704 |
|
705 |
|
706 |
+
/**
|
707 |
+
* Check if all required parameters are set for the adapter
|
708 |
+
*
|
709 |
+
* @param $type
|
710 |
+
*
|
711 |
+
* @return bool
|
712 |
+
*/
|
713 |
+
protected function _validateAdapterConfiguration($type)
|
714 |
+
{
|
715 |
+
if ($type == 'search') {
|
716 |
+
$params = $this->getClientRequestParams();
|
717 |
+
if (!$params->offsetExists('navigation') && !$params->offsetExists('query')) {
|
718 |
+
return false;
|
719 |
+
}
|
720 |
+
}
|
721 |
+
|
722 |
+
return true;
|
723 |
+
}
|
724 |
+
|
725 |
+
|
726 |
}
|
app/code/community/FACTFinder/Core/Model/File.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/File/Validator/Abstract.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
@@ -122,7 +122,7 @@ abstract class FACTFinder_Core_Model_File_Validator_Abstract
|
|
122 |
{
|
123 |
$actualSize = 0;
|
124 |
$h = fopen($file, 'r');
|
125 |
-
while (fgetcsv($h)) {
|
126 |
$actualSize++;
|
127 |
}
|
128 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
122 |
{
|
123 |
$actualSize = 0;
|
124 |
$h = fopen($file, 'r');
|
125 |
+
while (fgetcsv($h, null, $this->getCsvDelimiter())) {
|
126 |
$actualSize++;
|
127 |
}
|
128 |
|
app/code/community/FACTFinder/Core/Model/Ftp.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package magento
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/Model/Handler/Abstract.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/Handler/Search.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
@@ -200,11 +200,11 @@ class FACTFinder_Core_Model_Handler_Search extends FACTFinder_Core_Model_Handler
|
|
200 |
/**
|
201 |
* Get pagination object from FF
|
202 |
*
|
203 |
-
* @return \FACTFinder\Data\Paging
|
204 |
*/
|
205 |
public function getPaging()
|
206 |
{
|
207 |
-
if (!$this->isSearchHasResult()) {
|
208 |
return null;
|
209 |
}
|
210 |
|
@@ -219,7 +219,7 @@ class FACTFinder_Core_Model_Handler_Search extends FACTFinder_Core_Model_Handler
|
|
219 |
*/
|
220 |
public function getSorting()
|
221 |
{
|
222 |
-
if (!$this->isSearchHasResult()) {
|
223 |
return null;
|
224 |
}
|
225 |
|
@@ -233,7 +233,7 @@ class FACTFinder_Core_Model_Handler_Search extends FACTFinder_Core_Model_Handler
|
|
233 |
*/
|
234 |
public function getResultsPerPageOptions()
|
235 |
{
|
236 |
-
if (!$this->isSearchHasResult()) {
|
237 |
return null;
|
238 |
}
|
239 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
200 |
/**
|
201 |
* Get pagination object from FF
|
202 |
*
|
203 |
+
* @return \FACTFinder\Data\Paging|null
|
204 |
*/
|
205 |
public function getPaging()
|
206 |
{
|
207 |
+
if (!Mage::helper('factfinder')->isEnabled() || !$this->isSearchHasResult()) {
|
208 |
return null;
|
209 |
}
|
210 |
|
219 |
*/
|
220 |
public function getSorting()
|
221 |
{
|
222 |
+
if (!Mage::helper('factfinder')->isEnabled() || !$this->isSearchHasResult()) {
|
223 |
return null;
|
224 |
}
|
225 |
|
233 |
*/
|
234 |
public function getResultsPerPageOptions()
|
235 |
{
|
236 |
+
if (!Mage::helper('factfinder')->isEnabled() || !$this->isSearchHasResult()) {
|
237 |
return null;
|
238 |
}
|
239 |
|
app/code/community/FACTFinder/Core/Model/Handler/Status.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -35,7 +35,7 @@ define('FFE_SERVER_TIME_MISMATCH', 16183003); // server time is not consistent w
|
|
35 |
* @category Mage
|
36 |
* @package FACTFinder_Core
|
37 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
38 |
-
* @copyright Copyright (c)
|
39 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
40 |
* @link http://www.flagbit.de
|
41 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
35 |
* @category Mage
|
36 |
* @package FACTFinder_Core
|
37 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
38 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
39 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
40 |
* @link http://www.flagbit.de
|
41 |
*/
|
app/code/community/FACTFinder/Core/Model/Observer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Core/Model/Resource/Attribute.php
ADDED
@@ -0,0 +1,101 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
class FACTFinder_Core_Model_Resource_Attribute extends Mage_CatalogSearch_Model_Resource_Fulltext
|
3 |
+
{
|
4 |
+
|
5 |
+
protected function _construct()
|
6 |
+
{
|
7 |
+
$this->_init('catalog/attribute', 'entity_id');
|
8 |
+
}
|
9 |
+
|
10 |
+
/**
|
11 |
+
* Retrieve EAV Config Singleton
|
12 |
+
*
|
13 |
+
* @return Mage_Eav_Model_Config
|
14 |
+
*/
|
15 |
+
public function getEavConfig()
|
16 |
+
{
|
17 |
+
return Mage::getSingleton('eav/config');
|
18 |
+
}
|
19 |
+
|
20 |
+
/**
|
21 |
+
* Retrieve Searchable attributes
|
22 |
+
*
|
23 |
+
* @param int $storeId
|
24 |
+
*
|
25 |
+
* @return array
|
26 |
+
*/
|
27 |
+
public function getSearchableAttributes($storeId = null)
|
28 |
+
{
|
29 |
+
if ($this->_searchableAttributes === null) {
|
30 |
+
$this->_searchableAttributes = array();
|
31 |
+
$entityType = $this->getEavConfig()->getEntityType('catalog_product');
|
32 |
+
$entity = $entityType->getEntity();
|
33 |
+
|
34 |
+
$userDefinedAttributes = Mage::getStoreConfig('factfinder/export/attributes', $storeId);
|
35 |
+
$userDefinedAttributes = array_keys(
|
36 |
+
Mage::helper('factfinder/backend')->unserializeFieldValue($userDefinedAttributes)
|
37 |
+
);
|
38 |
+
|
39 |
+
$whereCond = array(
|
40 |
+
$this->_getWriteAdapter()->quoteInto('additional_table.is_searchable=?', 1),
|
41 |
+
$this->_getWriteAdapter()->quoteInto('additional_table.is_filterable=?', 1),
|
42 |
+
$this->_getWriteAdapter()->quoteInto('additional_table.used_for_sort_by=?', 1),
|
43 |
+
$this->_getWriteAdapter()->quoteInto(
|
44 |
+
'main_table.attribute_code IN(?)',
|
45 |
+
array_merge(array('status', 'visibility'), $userDefinedAttributes)
|
46 |
+
)
|
47 |
+
);
|
48 |
+
|
49 |
+
$select = $this->_getWriteAdapter()->select()
|
50 |
+
->from(array('main_table' => $this->getTable('eav/attribute')))
|
51 |
+
->join(
|
52 |
+
array('additional_table' => $this->getTable('catalog/eav_attribute')),
|
53 |
+
'additional_table.attribute_id = main_table.attribute_id'
|
54 |
+
)
|
55 |
+
->where('main_table.entity_type_id=?', $entityType->getEntityTypeId())
|
56 |
+
->where(join(' OR ', $whereCond))
|
57 |
+
->order('main_table.attribute_id', 'asc');
|
58 |
+
|
59 |
+
$attributesData = $this->_getWriteAdapter()->fetchAll($select);
|
60 |
+
$this->getEavConfig()->importAttributesData($entityType, $attributesData);
|
61 |
+
|
62 |
+
foreach ($attributesData as $attributeData) {
|
63 |
+
$attributeCode = $attributeData['attribute_code'];
|
64 |
+
$attribute = $this->getEavConfig()->getAttribute($entityType, $attributeCode);
|
65 |
+
$attribute->setEntity($entity);
|
66 |
+
$this->_searchableAttributes[$attribute->getId()] = $attribute;
|
67 |
+
}
|
68 |
+
}
|
69 |
+
|
70 |
+
return $this->_searchableAttributes;
|
71 |
+
}
|
72 |
+
|
73 |
+
/**
|
74 |
+
* Retrieve searchable attribute by Id or code
|
75 |
+
*
|
76 |
+
* @param int|string $attribute
|
77 |
+
*
|
78 |
+
* @return Mage_Eav_Model_Entity_Attribute
|
79 |
+
*/
|
80 |
+
public function getSearchableAttribute($attribute)
|
81 |
+
{
|
82 |
+
return $this->_getSearchableAttribute($attribute);
|
83 |
+
}
|
84 |
+
|
85 |
+
|
86 |
+
/**
|
87 |
+
* Load product(s) attributes
|
88 |
+
*
|
89 |
+
* @param int $storeId
|
90 |
+
* @param array $productIds
|
91 |
+
* @param array $attributeTypes
|
92 |
+
*
|
93 |
+
* @return array
|
94 |
+
*/
|
95 |
+
public function getProductAttributes($storeId, array $productIds, array $attributeTypes)
|
96 |
+
{
|
97 |
+
return $this->_getProductAttributes($storeId, $productIds, $attributeTypes);
|
98 |
+
}
|
99 |
+
|
100 |
+
|
101 |
+
}
|
app/code/community/FACTFinder/Core/Model/Resource/Fulltext.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/Resource/{Export.php → Product.php}
RENAMED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,11 +19,11 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
26 |
-
class
|
27 |
{
|
28 |
|
29 |
|
@@ -84,59 +84,6 @@ class FACTFinder_Core_Model_Resource_Export extends Mage_CatalogSearch_Model_Res
|
|
84 |
}
|
85 |
|
86 |
|
87 |
-
/**
|
88 |
-
* Retrieve Searchable attributes
|
89 |
-
*
|
90 |
-
* @param int $storeId
|
91 |
-
*
|
92 |
-
* @return array
|
93 |
-
*/
|
94 |
-
public function getSearchableAttributes($storeId = null)
|
95 |
-
{
|
96 |
-
if ($this->_searchableAttributes === null) {
|
97 |
-
$this->_searchableAttributes = array();
|
98 |
-
$entityType = $this->getEavConfig()->getEntityType('catalog_product');
|
99 |
-
$entity = $entityType->getEntity();
|
100 |
-
|
101 |
-
$userDefinedAttributes = Mage::getStoreConfig('factfinder/export/attributes', $storeId);
|
102 |
-
$userDefinedAttributes = array_keys(
|
103 |
-
Mage::helper('factfinder/backend')->unserializeFieldValue($userDefinedAttributes)
|
104 |
-
);
|
105 |
-
|
106 |
-
$whereCond = array(
|
107 |
-
$this->_getWriteAdapter()->quoteInto('additional_table.is_searchable=?', 1),
|
108 |
-
$this->_getWriteAdapter()->quoteInto('additional_table.is_filterable=?', 1),
|
109 |
-
$this->_getWriteAdapter()->quoteInto('additional_table.used_for_sort_by=?', 1),
|
110 |
-
$this->_getWriteAdapter()->quoteInto(
|
111 |
-
'main_table.attribute_code IN(?)',
|
112 |
-
array_merge(array('status', 'visibility'), $userDefinedAttributes)
|
113 |
-
)
|
114 |
-
);
|
115 |
-
|
116 |
-
$select = $this->_getWriteAdapter()->select()
|
117 |
-
->from(array('main_table' => $this->getTable('eav/attribute')))
|
118 |
-
->join(
|
119 |
-
array('additional_table' => $this->getTable('catalog/eav_attribute')),
|
120 |
-
'additional_table.attribute_id = main_table.attribute_id'
|
121 |
-
)
|
122 |
-
->where('main_table.entity_type_id=?', $entityType->getEntityTypeId())
|
123 |
-
->where(join(' OR ', $whereCond))
|
124 |
-
->order('main_table.attribute_id', 'asc');
|
125 |
-
|
126 |
-
$attributesData = $this->_getWriteAdapter()->fetchAll($select);
|
127 |
-
$this->getEavConfig()->importAttributesData($entityType, $attributesData);
|
128 |
-
|
129 |
-
foreach ($attributesData as $attributeData) {
|
130 |
-
$attributeCode = $attributeData['attribute_code'];
|
131 |
-
$attribute = $this->getEavConfig()->getAttribute($entityType, $attributeCode);
|
132 |
-
$attribute->setEntity($entity);
|
133 |
-
$this->_searchableAttributes[$attribute->getId()] = $attribute;
|
134 |
-
}
|
135 |
-
}
|
136 |
-
|
137 |
-
return $this->_searchableAttributes;
|
138 |
-
}
|
139 |
-
|
140 |
|
141 |
/**
|
142 |
* Get products to category paths
|
@@ -271,32 +218,4 @@ class FACTFinder_Core_Model_Resource_Export extends Mage_CatalogSearch_Model_Res
|
|
271 |
}
|
272 |
|
273 |
|
274 |
-
/**
|
275 |
-
* Retrieve searchable attribute by Id or code
|
276 |
-
*
|
277 |
-
* @param int|string $attribute
|
278 |
-
*
|
279 |
-
* @return Mage_Eav_Model_Entity_Attribute
|
280 |
-
*/
|
281 |
-
public function getSearchableAttribute($attribute)
|
282 |
-
{
|
283 |
-
return $this->_getSearchableAttribute($attribute);
|
284 |
-
}
|
285 |
-
|
286 |
-
|
287 |
-
/**
|
288 |
-
* Load product(s) attributes
|
289 |
-
*
|
290 |
-
* @param int $storeId
|
291 |
-
* @param array $productIds
|
292 |
-
* @param array $attributeTypes
|
293 |
-
*
|
294 |
-
* @return array
|
295 |
-
*/
|
296 |
-
public function getProductAttributes($storeId, array $productIds, array $attributeTypes)
|
297 |
-
{
|
298 |
-
return $this->_getProductAttributes($storeId, $productIds, $attributeTypes);
|
299 |
-
}
|
300 |
-
|
301 |
-
|
302 |
}
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
26 |
+
class FACTFinder_Core_Model_Resource_Product extends Mage_CatalogSearch_Model_Resource_Fulltext
|
27 |
{
|
28 |
|
29 |
|
84 |
}
|
85 |
|
86 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
87 |
|
88 |
/**
|
89 |
* Get products to category paths
|
218 |
}
|
219 |
|
220 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
221 |
}
|
app/code/community/FACTFinder/Core/Model/Resource/Search/Collection.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/Resource/Search/Engine.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Backend/Attributes.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Backend/Cron.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Backend/Enabled.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Backend/Engine.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/code/community/FACTFinder/Core/Model/System/Config/Source/Authtype.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Core
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Source/Engine.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/code/community/FACTFinder/Core/Model/System/Config/Source/Identifier.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/System/Config/Source/Protocol.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Core
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Core/Model/Url.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Core/controllers/ExportController.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -20,7 +20,7 @@
|
|
20 |
* @category Mage
|
21 |
* @package FACTFinder_Core
|
22 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
23 |
-
* @copyright Copyright (c)
|
24 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
25 |
* @link http://www.flagbit.de
|
26 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
20 |
* @category Mage
|
21 |
* @package FACTFinder_Core
|
22 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
23 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG (http://www.flagbit.de)
|
24 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
25 |
* @link http://www.flagbit.de
|
26 |
*/
|
app/code/community/FACTFinder/Core/etc/adminhtml.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Core/etc/config.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Core/etc/system.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
@@ -221,11 +221,21 @@
|
|
221 |
<show_in_website>1</show_in_website>
|
222 |
<show_in_store>1</show_in_store>
|
223 |
</attributes>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
224 |
<trigger_data_import translate="label">
|
225 |
<label>Trigger Data Import</label>
|
226 |
<frontend_type>select</frontend_type>
|
227 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
228 |
-
<sort_order>
|
229 |
<show_in_default>1</show_in_default>
|
230 |
<show_in_website>1</show_in_website>
|
231 |
<show_in_store>1</show_in_store>
|
@@ -235,7 +245,7 @@
|
|
235 |
<label>Import Delay Enabled</label>
|
236 |
<frontend_type>select</frontend_type>
|
237 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
238 |
-
<sort_order>
|
239 |
<show_in_default>1</show_in_default>
|
240 |
<show_in_website>1</show_in_website>
|
241 |
<show_in_store>1</show_in_store>
|
@@ -245,7 +255,7 @@
|
|
245 |
<label>Upload files to FTP host</label>
|
246 |
<frontend_type>select</frontend_type>
|
247 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
248 |
-
<sort_order>
|
249 |
<show_in_default>1</show_in_default>
|
250 |
<show_in_website>1</show_in_website>
|
251 |
<show_in_store>1</show_in_store>
|
@@ -254,7 +264,7 @@
|
|
254 |
<ftp_host translate="label">
|
255 |
<label>FTP Host</label>
|
256 |
<frontend_type>text</frontend_type>
|
257 |
-
<sort_order>
|
258 |
<show_in_default>1</show_in_default>
|
259 |
<show_in_website>1</show_in_website>
|
260 |
<show_in_store>1</show_in_store>
|
@@ -263,7 +273,7 @@
|
|
263 |
<ftp_port translate="label">
|
264 |
<label>FTP Port</label>
|
265 |
<frontend_type>text</frontend_type>
|
266 |
-
<sort_order>
|
267 |
<show_in_default>1</show_in_default>
|
268 |
<show_in_website>1</show_in_website>
|
269 |
<show_in_store>1</show_in_store>
|
@@ -272,7 +282,7 @@
|
|
272 |
<ftp_user translate="label">
|
273 |
<label>FTP User</label>
|
274 |
<frontend_type>text</frontend_type>
|
275 |
-
<sort_order>
|
276 |
<show_in_default>1</show_in_default>
|
277 |
<show_in_website>1</show_in_website>
|
278 |
<show_in_store>1</show_in_store>
|
@@ -281,7 +291,7 @@
|
|
281 |
<ftp_password translate="label">
|
282 |
<label>FTP Password</label>
|
283 |
<frontend_type>password</frontend_type>
|
284 |
-
<sort_order>
|
285 |
<show_in_default>1</show_in_default>
|
286 |
<show_in_website>1</show_in_website>
|
287 |
<show_in_store>1</show_in_store>
|
@@ -290,7 +300,7 @@
|
|
290 |
<ftp_path translate="label">
|
291 |
<label>FTP Path</label>
|
292 |
<frontend_type>text</frontend_type>
|
293 |
-
<sort_order>
|
294 |
<show_in_default>1</show_in_default>
|
295 |
<show_in_website>1</show_in_website>
|
296 |
<show_in_store>1</show_in_store>
|
@@ -300,7 +310,7 @@
|
|
300 |
<label>Use SSL</label>
|
301 |
<frontend_type>select</frontend_type>
|
302 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
303 |
-
<sort_order>
|
304 |
<show_in_default>1</show_in_default>
|
305 |
<show_in_website>1</show_in_website>
|
306 |
<show_in_store>1</show_in_store>
|
@@ -309,7 +319,7 @@
|
|
309 |
</ftp_ssl>
|
310 |
<export_url translate="label">
|
311 |
<frontend_model>factfinder/adminhtml_exportlink</frontend_model>
|
312 |
-
<sort_order>
|
313 |
<show_in_default>1</show_in_default>
|
314 |
<show_in_website>1</show_in_website>
|
315 |
<show_in_store>1</show_in_store>
|
@@ -318,7 +328,7 @@
|
|
318 |
<label>Disable export feed validation</label>
|
319 |
<frontend_type>select</frontend_type>
|
320 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
321 |
-
<sort_order>
|
322 |
<show_in_default>1</show_in_default>
|
323 |
<show_in_website>1</show_in_website>
|
324 |
<show_in_store>1</show_in_store>
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
221 |
<show_in_website>1</show_in_website>
|
222 |
<show_in_store>1</show_in_store>
|
223 |
</attributes>
|
224 |
+
<explicit_attributes translate="label">
|
225 |
+
<label>Use explicit attribute types</label>
|
226 |
+
<frontend_type>select</frontend_type>
|
227 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
228 |
+
<sort_order>40</sort_order>
|
229 |
+
<show_in_default>1</show_in_default>
|
230 |
+
<show_in_website>1</show_in_website>
|
231 |
+
<show_in_store>1</show_in_store>
|
232 |
+
<comment><![CDATA[Use types from the above table to export attributes in type-specific columns rather than in separate ones]]></comment>
|
233 |
+
</explicit_attributes>
|
234 |
<trigger_data_import translate="label">
|
235 |
<label>Trigger Data Import</label>
|
236 |
<frontend_type>select</frontend_type>
|
237 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
238 |
+
<sort_order>50</sort_order>
|
239 |
<show_in_default>1</show_in_default>
|
240 |
<show_in_website>1</show_in_website>
|
241 |
<show_in_store>1</show_in_store>
|
245 |
<label>Import Delay Enabled</label>
|
246 |
<frontend_type>select</frontend_type>
|
247 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
248 |
+
<sort_order>60</sort_order>
|
249 |
<show_in_default>1</show_in_default>
|
250 |
<show_in_website>1</show_in_website>
|
251 |
<show_in_store>1</show_in_store>
|
255 |
<label>Upload files to FTP host</label>
|
256 |
<frontend_type>select</frontend_type>
|
257 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
258 |
+
<sort_order>70</sort_order>
|
259 |
<show_in_default>1</show_in_default>
|
260 |
<show_in_website>1</show_in_website>
|
261 |
<show_in_store>1</show_in_store>
|
264 |
<ftp_host translate="label">
|
265 |
<label>FTP Host</label>
|
266 |
<frontend_type>text</frontend_type>
|
267 |
+
<sort_order>80</sort_order>
|
268 |
<show_in_default>1</show_in_default>
|
269 |
<show_in_website>1</show_in_website>
|
270 |
<show_in_store>1</show_in_store>
|
273 |
<ftp_port translate="label">
|
274 |
<label>FTP Port</label>
|
275 |
<frontend_type>text</frontend_type>
|
276 |
+
<sort_order>90</sort_order>
|
277 |
<show_in_default>1</show_in_default>
|
278 |
<show_in_website>1</show_in_website>
|
279 |
<show_in_store>1</show_in_store>
|
282 |
<ftp_user translate="label">
|
283 |
<label>FTP User</label>
|
284 |
<frontend_type>text</frontend_type>
|
285 |
+
<sort_order>100</sort_order>
|
286 |
<show_in_default>1</show_in_default>
|
287 |
<show_in_website>1</show_in_website>
|
288 |
<show_in_store>1</show_in_store>
|
291 |
<ftp_password translate="label">
|
292 |
<label>FTP Password</label>
|
293 |
<frontend_type>password</frontend_type>
|
294 |
+
<sort_order>110</sort_order>
|
295 |
<show_in_default>1</show_in_default>
|
296 |
<show_in_website>1</show_in_website>
|
297 |
<show_in_store>1</show_in_store>
|
300 |
<ftp_path translate="label">
|
301 |
<label>FTP Path</label>
|
302 |
<frontend_type>text</frontend_type>
|
303 |
+
<sort_order>120</sort_order>
|
304 |
<show_in_default>1</show_in_default>
|
305 |
<show_in_website>1</show_in_website>
|
306 |
<show_in_store>1</show_in_store>
|
310 |
<label>Use SSL</label>
|
311 |
<frontend_type>select</frontend_type>
|
312 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
313 |
+
<sort_order>130</sort_order>
|
314 |
<show_in_default>1</show_in_default>
|
315 |
<show_in_website>1</show_in_website>
|
316 |
<show_in_store>1</show_in_store>
|
319 |
</ftp_ssl>
|
320 |
<export_url translate="label">
|
321 |
<frontend_model>factfinder/adminhtml_exportlink</frontend_model>
|
322 |
+
<sort_order>140</sort_order>
|
323 |
<show_in_default>1</show_in_default>
|
324 |
<show_in_website>1</show_in_website>
|
325 |
<show_in_store>1</show_in_store>
|
328 |
<label>Disable export feed validation</label>
|
329 |
<frontend_type>select</frontend_type>
|
330 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
331 |
+
<sort_order>150</sort_order>
|
332 |
<show_in_default>1</show_in_default>
|
333 |
<show_in_website>1</show_in_website>
|
334 |
<show_in_store>1</show_in_store>
|
app/code/community/FACTFinder/Suggest/Block/TopSearch.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Suggest/Block/XmlConnect/Catalog/Search/Suggest.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Suggest/Helper/Data.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Suggest/Model/Facade.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Suggest/Model/Handler/Suggest.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
@@ -28,7 +28,7 @@ class FACTFinder_Suggest_Model_Handler_Suggest extends FACTFinder_Core_Model_Han
|
|
28 |
|
29 |
protected $_query;
|
30 |
|
31 |
-
protected $
|
32 |
|
33 |
protected $_suggestResult;
|
34 |
|
@@ -50,16 +50,16 @@ class FACTFinder_Suggest_Model_Handler_Suggest extends FACTFinder_Core_Model_Han
|
|
50 |
* We might need to supply the facade manually, because we might not have a full Magento
|
51 |
* context and we cannot call Mage::getSingleton().
|
52 |
* @param string $query
|
53 |
-
* @param string $
|
54 |
* @param FACTFinder_Suggest_Model_Facade $facade
|
55 |
*/
|
56 |
-
public function __construct($query, $
|
57 |
{
|
58 |
$this->_facade = $facade;
|
59 |
$this->_query = $query;
|
60 |
|
61 |
// prevent xss (<script> tags can open a vulnerability)
|
62 |
-
$this->
|
63 |
|
64 |
parent::__construct();
|
65 |
}
|
@@ -154,7 +154,7 @@ class FACTFinder_Suggest_Model_Handler_Suggest extends FACTFinder_Core_Model_Han
|
|
154 |
);
|
155 |
}
|
156 |
}
|
157 |
-
return $this->
|
158 |
}
|
159 |
|
160 |
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
28 |
|
29 |
protected $_query;
|
30 |
|
31 |
+
protected $_jsCallback;
|
32 |
|
33 |
protected $_suggestResult;
|
34 |
|
50 |
* We might need to supply the facade manually, because we might not have a full Magento
|
51 |
* context and we cannot call Mage::getSingleton().
|
52 |
* @param string $query
|
53 |
+
* @param string $jsCallback
|
54 |
* @param FACTFinder_Suggest_Model_Facade $facade
|
55 |
*/
|
56 |
+
public function __construct($query, $jsCallback = '', $facade = null)
|
57 |
{
|
58 |
$this->_facade = $facade;
|
59 |
$this->_query = $query;
|
60 |
|
61 |
// prevent xss (<script> tags can open a vulnerability)
|
62 |
+
$this->_jsCallback = strip_tags($jsCallback);
|
63 |
|
64 |
parent::__construct();
|
65 |
}
|
154 |
);
|
155 |
}
|
156 |
}
|
157 |
+
return $this->_jsCallback . '(' . Zend_Json_Encoder::encode($resultArray) . ');';
|
158 |
}
|
159 |
|
160 |
|
app/code/community/FACTFinder/Suggest/Model/Observer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Suggest/Model/Processor.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -21,7 +21,7 @@ require_once BP . DS . 'lib' . DS . 'FACTFinder' . DS . 'Loader.php';
|
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Suggest
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
-
* @copyright Copyright (c)
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
@@ -168,7 +168,7 @@ class FACTFinder_Suggest_Model_Processor
|
|
168 |
{
|
169 |
$handler = new FACTFinder_Suggest_Model_Handler_Suggest(
|
170 |
$this->_getRequestParam('query'),
|
171 |
-
$this->
|
172 |
$this->_getFacade()
|
173 |
);
|
174 |
|
@@ -299,4 +299,21 @@ class FACTFinder_Suggest_Model_Processor
|
|
299 |
}
|
300 |
|
301 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
302 |
}
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Suggest
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
168 |
{
|
169 |
$handler = new FACTFinder_Suggest_Model_Handler_Suggest(
|
170 |
$this->_getRequestParam('query'),
|
171 |
+
$this->_getJsCallback(),
|
172 |
$this->_getFacade()
|
173 |
);
|
174 |
|
299 |
}
|
300 |
|
301 |
|
302 |
+
/**
|
303 |
+
* Get JS callback from request data
|
304 |
+
*
|
305 |
+
* @return string
|
306 |
+
*/
|
307 |
+
protected function _getJsCallback()
|
308 |
+
{
|
309 |
+
$jsCallback = $this->_getRequestParam('jquery_callback');
|
310 |
+
|
311 |
+
if (!$jsCallback) {
|
312 |
+
$jsCallback = $this->_getRequestParam('callback');
|
313 |
+
}
|
314 |
+
|
315 |
+
return $jsCallback;
|
316 |
+
}
|
317 |
+
|
318 |
+
|
319 |
}
|
app/code/community/FACTFinder/Suggest/Model/System/Config/Source/Imagetype.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_Suggest
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Suggest/controllers/ProxyController.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Suggest
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Suggest/etc/config.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
@@ -92,6 +92,9 @@
|
|
92 |
<config>
|
93 |
<proxy>1</proxy>
|
94 |
</config>
|
|
|
|
|
|
|
95 |
</factfinder>
|
96 |
</default>
|
97 |
</config>
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
92 |
<config>
|
93 |
<proxy>1</proxy>
|
94 |
</config>
|
95 |
+
<export>
|
96 |
+
<suggest_image_size>60</suggest_image_size>
|
97 |
+
</export>
|
98 |
</factfinder>
|
99 |
</default>
|
100 |
</config>
|
app/code/community/FACTFinder/Suggest/etc/system.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Tagcloud/Block/TagCloud.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -19,7 +19,7 @@
|
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_TagCloud
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
-
* @copyright Copyright (c)
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
19 |
* @category Mage
|
20 |
* @package FACTFinder_TagCloud
|
21 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
22 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
23 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
24 |
* @link http://www.flagbit.de
|
25 |
*/
|
app/code/community/FACTFinder/Tagcloud/Helper/Data.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tagcloud/Model/Facade.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tagcloud/Model/Handler/TagCloud.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_TagCloud
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_TagCloud
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tagcloud/etc/config.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_TagCloud
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_TagCloud
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Tracking/Block/Abstract.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*/
|
app/code/community/FACTFinder/Tracking/Block/Click.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Block/Recommendation.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Helper/Data.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Facade.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Handler/Tracking.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Observer.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
@@ -191,7 +191,8 @@ class FACTFinder_Tracking_Model_Observer
|
|
191 |
continue;
|
192 |
}
|
193 |
|
194 |
-
|
|
|
195 |
$price = $item->getPrice();
|
196 |
|
197 |
$parentItem = $item->getParentItem();
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
191 |
continue;
|
192 |
}
|
193 |
|
194 |
+
// use product id as default value in case there's no parent item
|
195 |
+
$parentProductId = $item->getProduct()->getData($idFieldName);
|
196 |
$price = $item->getPrice();
|
197 |
|
198 |
$parentItem = $item->getParentItem();
|
app/code/community/FACTFinder/Tracking/Model/Processor.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -21,7 +21,7 @@ require_once BP . DS . 'lib' . DS . 'FACTFinder' . DS . 'Loader.php';
|
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Tracking
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
-
* @copyright Copyright (c)
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
21 |
* @category Mage
|
22 |
* @package FACTFinder_Tracking
|
23 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
24 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
25 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
26 |
* @link http://www.flagbit.de
|
27 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Queue.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Resource/Queue.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/Model/Resource/Queue/Collection.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/controllers/ProxyController.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
@@ -17,7 +17,7 @@
|
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
-
* @copyright Copyright (c)
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
17 |
* @category Mage
|
18 |
* @package FACTFinder_Tracking
|
19 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
20 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
21 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
22 |
* @link http://www.flagbit.de
|
23 |
*/
|
app/code/community/FACTFinder/Tracking/etc/config.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Tracking/etc/system.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/install-1.0.0.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-1.0.0-4.1.2.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-4.1.11-4.1.12.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/code/community/FACTFinder/Tracking/sql/factfinder_tracking_setup/upgrade-4.1.2-4.1.11.php
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/design/adminhtml/default/default/template/factfinder/core/system/config/form/field/attributes.phtml
ADDED
@@ -0,0 +1,183 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Magento Enterprise Edition
|
4 |
+
*
|
5 |
+
* NOTICE OF LICENSE
|
6 |
+
*
|
7 |
+
* This source file is subject to the Magento Enterprise Edition End User License Agreement
|
8 |
+
* that is bundled with this package in the file LICENSE_EE.txt.
|
9 |
+
* It is also available through the world-wide-web at this URL:
|
10 |
+
* http://www.magento.com/license/enterprise-edition
|
11 |
+
* If you did not receive a copy of the license and are unable to
|
12 |
+
* obtain it through the world-wide-web, please send an email
|
13 |
+
* to license@magento.com so we can send you a copy immediately.
|
14 |
+
*
|
15 |
+
* DISCLAIMER
|
16 |
+
*
|
17 |
+
* Do not edit or add to this file if you wish to upgrade Magento to newer
|
18 |
+
* versions in the future. If you wish to customize Magento for your
|
19 |
+
* needs please refer to http://www.magento.com for more information.
|
20 |
+
*
|
21 |
+
* @category design
|
22 |
+
* @package default_default
|
23 |
+
* @copyright Copyright (c) 2006-2016 X.commerce, Inc. and affiliates (http://www.magento.com)
|
24 |
+
* @license http://www.magento.com/license/enterprise-edition
|
25 |
+
*/
|
26 |
+
?>
|
27 |
+
<?php
|
28 |
+
|
29 |
+
$_htmlId = $this->getHtmlId() ? $this->getHtmlId() : '_' . uniqid();
|
30 |
+
|
31 |
+
$_colspan = 2;
|
32 |
+
if (!$this->_addAfter) {
|
33 |
+
$_colspan -= 1;
|
34 |
+
}
|
35 |
+
$_colspan = $_colspan > 1 ? 'colspan="' . $_colspan . '"' : '';
|
36 |
+
?>
|
37 |
+
|
38 |
+
<div class="grid" id="grid<?php echo $_htmlId ?>">
|
39 |
+
<table cellpadding="0" cellspacing="0" class="border">
|
40 |
+
<tbody>
|
41 |
+
|
42 |
+
<tr class="headings" id="headings<?php echo $_htmlId ?>">
|
43 |
+
<?php foreach ($this->_columns as $columnName => $column):?>
|
44 |
+
<th><?php echo $column['label'] ?></th>
|
45 |
+
<?php endforeach;?>
|
46 |
+
<th <?php echo $_colspan?>></th>
|
47 |
+
</tr>
|
48 |
+
|
49 |
+
<tr id="addRow<?php echo $_htmlId ?>">
|
50 |
+
<td colspan="<?php echo count($this->_columns) ?>"></td>
|
51 |
+
<td <?php echo $_colspan?>>
|
52 |
+
<button style="" onclick="" class="scalable add" type="button" id="addToEndBtn<?php echo $_htmlId ?>">
|
53 |
+
<span><span><span><?php echo $this->_addButtonLabel ?></span></span></span>
|
54 |
+
</button>
|
55 |
+
</td>
|
56 |
+
</tr>
|
57 |
+
|
58 |
+
</tbody>
|
59 |
+
</table>
|
60 |
+
<input type="hidden" name="<?php echo $this->getElement()->getName() ?>[__empty]" value="" />
|
61 |
+
</div>
|
62 |
+
<div id="empty<?php echo $_htmlId ?>">
|
63 |
+
<button style="" onclick="" class="scalable add" type="button" id="emptyAddBtn<?php echo $_htmlId ?>">
|
64 |
+
<span><span><span><?php echo $this->_addButtonLabel ?></span></span></span>
|
65 |
+
</button>
|
66 |
+
</div>
|
67 |
+
|
68 |
+
<script type="text/javascript">
|
69 |
+
//<![CDATA[
|
70 |
+
// create row creator
|
71 |
+
var arrayRow<?php echo $_htmlId ?> = {
|
72 |
+
// define row prototypeJS template
|
73 |
+
template : new Template(
|
74 |
+
'<tr id="#{_id}">'
|
75 |
+
<?php foreach ($this->_columns as $columnName => $column):?>
|
76 |
+
+'<td>'
|
77 |
+
+'<?php echo Mage::helper('core')->jsQuoteEscape($this->_renderCellTemplate($columnName)) ?>'
|
78 |
+
+'<\/td>'
|
79 |
+
<?php endforeach;?>
|
80 |
+
<?php if ($this->_addAfter):?>
|
81 |
+
+'<td><button onclick="" class="scalable add" type="button" id="addAfterBtn#{_id}"><span><span><span><?php echo Mage::helper('core')->jsQuoteEscape(Mage::helper('adminhtml')->__('Add after')) ?><\/span><\/span><\/span><\/button><\/td>'
|
82 |
+
<?php endif;?>
|
83 |
+
+'<td><button onclick="arrayRow<?php echo $_htmlId ?>.del(\'#{_id}\')" class="scalable delete" type="button"><span><span><span><?php echo Mage::helper('core')->jsQuoteEscape(Mage::helper('adminhtml')->__('Delete')) ?><\/span><\/span><\/span><\/button><\/td>'
|
84 |
+
+'<\/tr>'
|
85 |
+
),
|
86 |
+
|
87 |
+
rowsCount : 0,
|
88 |
+
|
89 |
+
add : function(templateData, insertAfterId)
|
90 |
+
{
|
91 |
+
// generate default template data
|
92 |
+
if ('' == templateData) {
|
93 |
+
var d = new Date();
|
94 |
+
var templateData = {
|
95 |
+
<?php foreach ($this->_columns as $columnName => $column):?>
|
96 |
+
<?php echo $columnName ?> : '',
|
97 |
+
<?php endforeach;?>
|
98 |
+
_id : '_' + d.getTime() + '_' + d.getMilliseconds()
|
99 |
+
};
|
100 |
+
}
|
101 |
+
|
102 |
+
// insert before last row
|
103 |
+
if ('' == insertAfterId) {
|
104 |
+
Element.insert($('addRow<?php echo $_htmlId ?>'), {before: this.template.evaluate(templateData)});
|
105 |
+
}
|
106 |
+
// insert after specified row
|
107 |
+
else {
|
108 |
+
Element.insert($(insertAfterId), {after: this.template.evaluate(templateData)});
|
109 |
+
}
|
110 |
+
|
111 |
+
var typeElement = $(templateData._id).down('.type_select');
|
112 |
+
var unitElement = $(templateData._id).down('.attribute_unit');
|
113 |
+
if (typeElement && unitElement) {
|
114 |
+
updateUnit(typeElement, unitElement);
|
115 |
+
typeElement.observe('change', function (event) {
|
116 |
+
updateUnit(typeElement, unitElement);
|
117 |
+
}.bind(this));
|
118 |
+
}
|
119 |
+
|
120 |
+
<?php if ($this->_addAfter):?>
|
121 |
+
Event.observe('addAfterBtn' + templateData._id, 'click', this.add.bind(this, '', templateData._id));
|
122 |
+
<?php endif;?>
|
123 |
+
|
124 |
+
this.rowsCount += 1;
|
125 |
+
},
|
126 |
+
|
127 |
+
del : function(rowId)
|
128 |
+
{
|
129 |
+
$(rowId).remove();
|
130 |
+
this.rowsCount -= 1;
|
131 |
+
if (0 == this.rowsCount) {
|
132 |
+
this.showButtonOnly();
|
133 |
+
}
|
134 |
+
},
|
135 |
+
|
136 |
+
showButtonOnly : function()
|
137 |
+
{
|
138 |
+
$('grid<?php echo $_htmlId ?>').hide();
|
139 |
+
$('empty<?php echo $_htmlId ?>').show();
|
140 |
+
}
|
141 |
+
}
|
142 |
+
|
143 |
+
// bind add action to "Add" button in last row
|
144 |
+
Event.observe('addToEndBtn<?php echo $_htmlId ?>', 'click', arrayRow<?php echo $_htmlId ?>.add.bind(arrayRow<?php echo $_htmlId ?>, '', ''));
|
145 |
+
|
146 |
+
// add existing rows
|
147 |
+
<?php
|
148 |
+
$_addAfterId = "headings{$_htmlId}";
|
149 |
+
foreach ($this->getArrayRows() as $_rowId => $_row) {
|
150 |
+
echo "arrayRow{$_htmlId}.add(" . $_row->toJson() . ", '{$_addAfterId}');\n";
|
151 |
+
$_addAfterId = $_rowId;
|
152 |
+
}
|
153 |
+
?>
|
154 |
+
|
155 |
+
// initialize standalone button
|
156 |
+
$('empty<?php echo $_htmlId ?>').hide();
|
157 |
+
Event.observe('emptyAddBtn<?php echo $_htmlId ?>', 'click', function () {
|
158 |
+
$('grid<?php echo $_htmlId ?>').show();
|
159 |
+
$('empty<?php echo $_htmlId ?>').hide();
|
160 |
+
arrayRow<?php echo $_htmlId ?>.add('', '');
|
161 |
+
});
|
162 |
+
|
163 |
+
// if no rows, hide grid and show button only
|
164 |
+
<?php if (!$this->getArrayRows()):?>
|
165 |
+
arrayRow<?php echo $_htmlId ?>.showButtonOnly();
|
166 |
+
<?php endif;?>
|
167 |
+
|
168 |
+
// toggle the grid, if element is disabled (depending on scope)
|
169 |
+
<?php if ($this->getElement()->getDisabled()):?>
|
170 |
+
toggleValueElements({checked:true}, $('grid<?php echo $_htmlId ?>').parentNode);
|
171 |
+
<?php endif;?>
|
172 |
+
|
173 |
+
// toggle unit attribute input
|
174 |
+
function updateUnit(typeElement, unitElement) {
|
175 |
+
if (typeElement.getValue() == 'number') {
|
176 |
+
unitElement.enable();
|
177 |
+
} else {
|
178 |
+
unitElement.disable();
|
179 |
+
}
|
180 |
+
}
|
181 |
+
|
182 |
+
//]]>
|
183 |
+
</script>
|
app/design/frontend/base/default/layout/factfinder/core.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Core
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/design/frontend/base/default/layout/factfinder/suggest.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Suggest
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/design/frontend/base/default/layout/factfinder/tagcloud.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_TagCloud
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_TagCloud
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/design/frontend/base/default/layout/factfinder/tracking.xml
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
-
* @copyright Copyright (c)
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
6 |
* @category Mage
|
7 |
* @package FACTFinder_Tracking
|
8 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
9 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
10 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
11 |
* @link http://www.flagbit.de
|
12 |
*
|
app/design/frontend/base/default/template/factfinder/core/export/locked.phtml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/design/frontend/base/default/template/factfinder/core/export/nofile.phtml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Core
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/design/frontend/base/default/template/factfinder/suggest/advancedsuggest.phtml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Suggest
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/design/frontend/base/default/template/factfinder/tracking/click.phtml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
app/design/frontend/base/default/template/factfinder/tracking/recommendation.phtml
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
-
* @copyright Copyright (c)
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
5 |
* @category Mage
|
6 |
* @package FACTFinder_Tracking
|
7 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
8 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
9 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
10 |
* @link http://www.flagbit.de
|
11 |
*
|
js/factfinder/suggest.js
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* @category Mage
|
5 |
* @package FACTFinder_Suggest
|
6 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
7 |
-
* @copyright Copyright (c)
|
8 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
9 |
* @link http://www.flagbit.de
|
10 |
*
|
@@ -292,7 +292,7 @@ var FactFinderSuggest = Class.create(Varien.searchForm, {
|
|
292 |
|
293 |
temp += '<span class="amount">' + (item.hitCount == 0 ? '' : item.hitCount) + '</span>';
|
294 |
if (item.image) {
|
295 |
-
temp += '<img src="' + item.image + '" title="' + item.name + '"
|
296 |
}
|
297 |
|
298 |
temp += item.name.replace(new RegExp("("+this.field.value+")","ig"), '<strong>$1</strong>');
|
4 |
* @category Mage
|
5 |
* @package FACTFinder_Suggest
|
6 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
7 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
8 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
9 |
* @link http://www.flagbit.de
|
10 |
*
|
292 |
|
293 |
temp += '<span class="amount">' + (item.hitCount == 0 ? '' : item.hitCount) + '</span>';
|
294 |
if (item.image) {
|
295 |
+
temp += '<span class="thumbnail"><img src="' + item.image + '" title="' + item.name + '" /></span>';
|
296 |
}
|
297 |
|
298 |
temp += item.name.replace(new RegExp("("+this.field.value+")","ig"), '<strong>$1</strong>');
|
js/factfinder/tracking.js
CHANGED
@@ -4,7 +4,7 @@
|
|
4 |
* @category Mage
|
5 |
* @package FACTFinder_Tracking
|
6 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
7 |
-
* @copyright Copyright (c)
|
8 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
9 |
* @link http://www.flagbit.de
|
10 |
*
|
4 |
* @category Mage
|
5 |
* @package FACTFinder_Tracking
|
6 |
* @author Flagbit Magento Team <magento@flagbit.de>
|
7 |
+
* @copyright Copyright (c) 2017 Flagbit GmbH & Co. KG
|
8 |
* @license https://opensource.org/licenses/MIT The MIT License (MIT)
|
9 |
* @link http://www.flagbit.de
|
10 |
*
|
package.xml
CHANGED
@@ -1,22 +1,23 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Flagbit_Factfinder</name>
|
4 |
-
<version>4.1.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/MIT">MIT</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
-
<summary>4.1.
|
10 |
-
<description>4.1.
|
11 |
-
<notes
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
|
|
16 |
<authors><author><name>FACTFinder</name><user>FACT_Finder</user><email>info@flagbit.de</email></author></authors>
|
17 |
-
<date>
|
18 |
-
<time>
|
19 |
-
<contents><target name="magecommunity"><dir name="FACTFinder"><dir name="Asn"><dir name="Block"><dir name="Catalog"><dir name="Layer"><file name="Factfinder.php" hash="0e79d252a2752aab67f7490436350fe7"/><file name="State.php" hash="2bf2c99237e881372fdc074c3505d188"/></dir><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="9b0c98e266174c8f8b02b896a556b769"/></dir><file name="Pager.php" hash="ec87967ba312a3d589e0af0afbacdd0a"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="f482bd5b7111165fcacc3bfa28797828"/></dir><dir name="Model"><dir name="Catalog"><file name="Layer.php" hash="6dafe882395b5d09f84c102f3b785410"/></dir><dir name="Handler"><file name="Search.php" hash="bbec7bd87e1d2f15792fdda46f34eb52"/></dir><dir name="Layer"><dir name="Filter"><file name="Factfinder.php" hash="2666ae9c79aa939e9539a1af5b0f7784"/><file name="Item.php" hash="a68545b4cb4487691ae75cdbf47af377"/></dir></dir><file name="Observer.php" hash="9ec46432b3d3170b626cfb4439315209"/><dir name="Resource"><dir name="Product"><dir name="Attribute"><file name="Collection.php" hash="03b060fd637de1fd632f1b9784b1124c"/></dir></dir><dir name="Search"><file name="Collection.php" hash="3e7a88eb53ccfb79b4448f9eb7bd4177"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="e07b890b06b00d94bc4a4a5931325366"/><file name="system.xml" hash="7a8a776e911a831b401900dbf9529b68"/></dir></dir><dir name="Campaigns"><dir name="Block"><file name="Abstract.php" hash="cbb92e501e5576dcc5ec121a708850a6"/><dir name="Advisory"><file name="Search.php" hash="1d4bf82a7baffbe64be17216436c35d4"/></dir><dir name="Feedback"><file name="Abstract.php" hash="018e415bdd754127cfad8bfa5881c0ce"/><file name="Cart.php" hash="35f9fec2518383c909495af90b324b8b"/><file name="Page.php" hash="b791d428663177b38acf568b424f9b62"/><file name="Product.php" hash="be7d867bb4d19510977ad6451918a110"/><file name="Search.php" hash="ebf3d35f6425b771291b08f696169d04"/></dir><dir name="Pushed"><file name="Abstract.php" hash="6dc968f84fb74d615e1441a3a18f34b7"/><file name="Cart.php" hash="741d3bd71ce91cd583778a5e26be9ff5"/><file name="Page.php" hash="f41d08224acf14ee5ebeb281117b43c3"/><file name="Product.php" hash="522cc331532f0e5c1b404429678d4145"/><file name="Search.php" hash="7db401a3ee1153ff5677b544fbb2a44e"/></dir></dir><dir name="Helper"><file name="Data.php" hash="92b1313e10cc6c448c6fae40fd113ba6"/></dir><dir name="Model"><file name="Facade.php" hash="44fc55139509b76f19b7c95c6a81eb4c"/><dir name="Handler"><file name="Abstract.php" hash="1784c503a2979f42dbd4e9698e482c47"/><file name="Cart.php" hash="d954c511b4f11d7f721c4117746de35a"/><file name="Page.php" hash="dcbde5a5d54da6893ccc6cbc678bfb45"/><file name="Product.php" hash="fbd9ced4527fce56144c7913af979b65"/><file name="Search.php" hash="e039a207ca98655c647355ebf287566d"/></dir><file name="Observer.php" hash="043e7411be7ec13a656b07750a7811af"/><dir name="Resource"><dir name="Pushedproducts"><file name="Collection.php" hash="569856158dee935d611ebc30f426835c"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="8f6b7cec7cff39b149beeffb39764668"/><file name="system.xml" hash="20ee896b686b17dc832a64b440d130bb"/></dir></dir><dir name="Core"><dir name="Block"><dir name="Adminhtml"><file name="Exportlink.php" hash="7a845ee8974cfcf74d9a32fed2ac0b21"/><dir name="Form"><dir name="Field"><file name="Attribute.php" hash="bea2183e56100233e7aebaccd6680c6f"/><file name="Attributes.php" hash="292742f954dec1863caaee9313a237c9"/></dir></dir></dir><dir name="Catalog"><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="814a8b4935563e53db5f4e3b0a2b926e"/></dir><file name="Pager.php" hash="931dea1213da57df14fea950a5cacf43"/></dir></dir><dir name="CatalogSearch"><file name="Layer.php" hash="ad3dcdd26b5a723e43c7b8011a4ea25f"/></dir><dir name="EnterpriseSearch"><file name="Layer.php" hash="19455e36be3e0c14cabba762ccbdef1a"/></dir></dir><dir name="Helper"><file name="Backend.php" hash="f30c89ca668b193a8fc8bf00eda34413"/><file name="Data.php" hash="5f9e4fe2269743ac3ee81e3e1dc16b1e"/><file name="Debug.php" hash="c563d343c68db980e9256dc510e78ea1"/><file name="Export.php" hash="a417ba066deafb92cccb2256b6ca6932"/><file name="Rewrite.php" hash="30921c0924e535d669ecdd7e9592f883"/><file name="Search.php" hash="fd1e90271d620c57a0cb7b80e33f536f"/></dir><dir name="Model"><file name="Autoloader.php" hash="29370ccbcd483f93be86999485889900"/><dir name="CatalogSearch"><file name="Layer.php" hash="8d15e27cca249cd3827d33e9acdbb369"/><file name="Query.php" hash="4f5b732eb28a7c1efde28eb602c38772"/></dir><dir name="Export"><file name="Observer.php" hash="66968e7d4d8f1baa556e5955b27517dc"/><file name="Semaphore.php" hash="63def987da73dc369580845149bdba25"/><dir name="Type"><file name="Interface.php" hash="b29c7b7319fa52783eb546aabf5cb6e9"/><file name="Price.php" hash="47feaf492e4dec15f8a207a8e6f8104c"/><file name="Product.php" hash="96d6f286806592fbd480554a52739225"/><file name="Stock.php" hash="0e7b89cf2868569ce449c7736f544d27"/></dir></dir><file name="Facade.php" hash="b2fd0c05a687db4c784111ecb4da9ef8"/><dir name="File"><dir name="Validator"><file name="Abstract.php" hash="bae31d36c5307014bece14d3a0c18b79"/><file name="Price.php" hash="38a6be7fb1f41f4682eb1daa38554669"/><file name="Product.php" hash="31cf15e2204bb5a50136a06089d18afe"/><file name="Stock.php" hash="0dd23287ff233398f0d65106cccca029"/></dir></dir><file name="File.php" hash="ea54b7088ddb35c778a65ce97cfcd242"/><file name="Ftp.php" hash="d70cfab0ce607aca6efa32d82d3a85c3"/><dir name="Handler"><file name="Abstract.php" hash="1924821d13996f9f672369b63a05ac08"/><file name="Search.php" hash="303ba490e7113794e7398e457e645f31"/><file name="Status.php" hash="a70285cfc99c388ba826e501c0411a83"/></dir><file name="Observer.php" hash="e5decfa3b52571cb75335dd41b1927f5"/><dir name="Resource"><file name="Export.php" hash="4cf2df31bcfeb468f64b42d9140d7c86"/><file name="Fulltext.php" hash="dfbece11e5fe8224c94d1e1bb7affe3e"/><dir name="Search"><file name="Collection.php" hash="50596cf9508d0d96a4bb315a50f35984"/><file name="Engine.php" hash="602547a2d224f80933b6681db1cb3cc4"/></dir></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Attributes.php" hash="d877a4da13c592f5b8260b202bcead13"/><file name="Cron.php" hash="f24b6995fea6309acb720876f3156270"/><file name="Enabled.php" hash="cb13a29b7100518350a7e5830180e9bd"/><file name="Engine.php" hash="ef1f702d79c7ed0fe72437ca4bf13a19"/></dir><dir name="Source"><file name="Authtype.php" hash="7ce07da0f6bcb8e88b5699ace77e6f31"/><file name="Engine.php" hash="8f1c2f344aa3182c312a665488661fa5"/><file name="Identifier.php" hash="a80606fe94b2eaf78f8d07628f2a64f0"/><file name="Protocol.php" hash="310b7fd8648b60f5cc9c3e3c9f87345c"/></dir></dir></dir><file name="Url.php" hash="57e5e87457b3051cec9bc3c988f79282"/></dir><dir name="controllers"><file name="ExportController.php" hash="231a148e48c714363a5d0bd76b088853"/></dir><dir name="etc"><file name="adminhtml.xml" hash="0247e1b846aefb3fb9c5c0706681a586"/><file name="config.xml" hash="471974367bce221b6795be5f4015a6e9"/><file name="system.xml" hash="7362f4ca3e6355b1d476044611cd770a"/></dir></dir><dir name="Recommendation"><dir name="Helper"><file name="Data.php" hash="6312dfdef17070694f59139acbb2d5e1"/></dir><dir name="Model"><file name="Facade.php" hash="ed9c246bc831c7f3950a88853d401288"/><dir name="Handler"><file name="Recommendations.php" hash="d51721bbd3348242c7252b6d4c29f187"/></dir><file name="Observer.php" hash="50cfe5f830cfd50c26061b7497f7e1a6"/></dir><dir name="etc"><file name="config.xml" hash="03ec96e0fa78fdfbc3d4d5fac7193704"/><file name="system.xml" hash="f841228bf8a5397fe18da6186c5e3208"/></dir></dir><dir name="Suggest"><dir name="Block"><file name="TopSearch.php" hash="96fc7e73d907a0438111253ae6c5fc6f"/><dir name="XmlConnect"><dir name="Catalog"><dir name="Search"><file name="Suggest.php" hash="150658cb1d7bc7ae5b4566ed1331bb12"/></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="ce3b53789b0bf025874a36789228abe5"/></dir><dir name="Model"><file name="Facade.php" hash="254f13fa4cbbe9602ae40c5cd124282e"/><dir name="Handler"><file name="Suggest.php" hash="948fd13668d507ba4ebed7c9a2055be4"/></dir><file name="Observer.php" hash="3a5bed9bd7b7c9bac85446c9172dfa48"/><file name="Processor.php" hash="f37cf3fb0c72464f1e651f34d64b44dd"/><dir name="System"><dir name="Config"><dir name="Source"><file name="Imagetype.php" hash="a8a39dc5d44080a3b070bc72f103efef"/></dir></dir></dir></dir><dir name="controllers"><file name="ProxyController.php" hash="68fc8cee37a52a538762252e47f340a1"/></dir><dir name="etc"><file name="config.xml" hash="5e6b384d971afc4a0c6b7cc4d437badf"/><file name="system.xml" hash="4cc10555be3b56982c6d67671c54f57b"/></dir></dir><dir name="Tagcloud"><dir name="Block"><file name="TagCloud.php" hash="d0c6c681b3da27ef349ff1295c5e26a9"/></dir><dir name="Helper"><file name="Data.php" hash="ea2c8093a1d87a8148f1205e8b73cc2d"/></dir><dir name="Model"><file name="Facade.php" hash="69069badc93509011f7c4fa2b1ca3e72"/><dir name="Handler"><file name="TagCloud.php" hash="e2e5ba229002ad3cfa5769a9f74d808b"/></dir></dir><dir name="etc"><file name="config.xml" hash="3ff00cc34fdbaed962f704204ce47f1a"/></dir></dir><dir name="Tracking"><dir name="Block"><file name="Abstract.php" hash="24419c96d9768b86ec890a1b38278e0f"/><file name="Click.php" hash="9fe6720543830930d97d7eb16f7fb489"/><file name="Recommendation.php" hash="aab0b759394df3f5e3571bb4e3e46cc2"/></dir><dir name="Helper"><file name="Data.php" hash="f0018ce83f815b057fab66351e58fdb6"/></dir><dir name="Model"><file name="Facade.php" hash="f8684a20a82bff4b668af460af476d41"/><dir name="Handler"><file name="Tracking.php" hash="9672d838ac3775c8a7dc4ef70593ca7e"/></dir><file name="Observer.php" hash="c6b0e677417aaf8552daa78a4b580541"/><file name="Processor.php" hash="cf9d0d242166aab8eab66a8fdb7c952a"/><file name="Queue.php" hash="046d6d464d56a609b71574c6e0a3c4d1"/><dir name="Resource"><dir name="Queue"><file name="Collection.php" hash="daecedd55cb992ae3988305324c8c1b9"/></dir><file name="Queue.php" hash="3be1d09978ae6e8c56fb673931b05479"/></dir></dir><dir name="controllers"><file name="ProxyController.php" hash="33f25104bc086fcbe998459baccdd0b3"/></dir><dir name="etc"><file name="config.xml" hash="326d9c67e7491574da2ec9e97ef1fd0c"/><file name="system.xml" hash="2358dd767b2350084c83e2cf6aa360d3"/></dir><dir name="sql"><dir name="factfinder_tracking_setup"><file name="install-1.0.0.php" hash="553ad063abd837a220ebff97618578b4"/><file name="upgrade-1.0.0-4.1.2.php" hash="a80b4f755d0bea172eefebe10b877cd6"/><file name="upgrade-4.1.11-4.1.12.php" hash="9429e942617be216bc13b00b4aa71bf8"/><file name="upgrade-4.1.2-4.1.11.php" hash="7cdc830ef2799954e5ab4093d65a1f0e"/></dir></dir></dir></dir></target><target name="magelib"><dir name="FACTFinder"><dir name="Adapter"><file name="AbstractAdapter.php" hash="91eae466a803590699160600c430eab6"/><file name="Compare.php" hash="6b7cbae461ef45587c565affadbf8664"/><file name="ConfigurableResponse.php" hash="8ffa7eaa12d448a7bd4a9bba9975c573"/><file name="Import.php" hash="584eecdb7281603ba5ef901082fb52d7"/><file name="PersonalisedResponse.php" hash="6b62c326d25e123f686baa358a1b258b"/><file name="ProductCampaign.php" hash="945181a15218fd90721d3258eaf2fd17"/><file name="Recommendation.php" hash="0bcc4ccce41f40d343ebe19c901bea69"/><file name="Search.php" hash="202f3e5d444edb8be0b4e187bd98ea78"/><file name="SimilarRecords.php" hash="b80691760f993d2a43cbe2eb933090fe"/><file name="Suggest.php" hash="5f91090f7c7ea764f9fc21938aade3c8"/><file name="TagCloud.php" hash="fe1faf30373e91b96e57c08fb64df23a"/><file name="Tracking.php" hash="18948f9db1782730258a0e83f6f517b9"/></dir><dir name="Core"><file name="AbstractConfiguration.php" hash="d9341f7f13615a8a0c2805b2021cdfc8"/><file name="AbstractEncodingConverter.php" hash="7946720c77c47e3ed2070606a74a48cb"/><file name="ArrayConfiguration.php" hash="dc60873fa6eed180126944247cb4de99"/><dir name="Client"><file name="RequestParser.php" hash="bc5dabb648f7278db4a1c5f14af4dfa0"/><file name="UrlBuilder.php" hash="d73cc166fcf20b7623ea0f7c319d3224"/></dir><file name="ConfigurationInterface.php" hash="1158aaee6a7502cf81bf27b8ed0c76ff"/><file name="IConvEncodingConverter.php" hash="5c504a3229cc8a59c09f03f3bf2c9348"/><file name="ManualConfiguration.php" hash="a49d0b05cc319b807c40b37a861b060d"/><dir name="Page"><file name=".gitignore" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir><file name="ParametersConverter.php" hash="9c01642c6de1842b8f1b4e8d9f93017e"/><dir name="Server"><file name="AbstractDataProvider.php" hash="8d33ddebe3d3e60b72893188d7f2369f"/><file name="ConnectionData.php" hash="c4246099ec93e7f589c0e22179d9557a"/><file name="EasyCurlDataProvider.php" hash="48f452cd3ca1dcf3b4e7cc4d8b59c8a9"/><file name="EasyCurlRequestFactory.php" hash="61f88e882120dca5e5e1964d1f898527"/><file name="FileSystemDataProvider.php" hash="30b428e2b76307b1143057a155371c34"/><file name="FileSystemRequestFactory.php" hash="f0a464725448393e64948a6063208d91"/><file name="MultiCurlDataProvider.php" hash="2e467a4976694ef4e7775d913dafedf4"/><file name="MultiCurlRequestFactory.php" hash="41f978e0dd60065026dc5adced1f9503"/><file name="NullResponse.php" hash="3a419c1ea234ef20e1330c7b445eb9c6"/><file name="Request.php" hash="08ddaaa7701558e1802408089d15b5dd"/><file name="RequestFactoryInterface.php" hash="65cfad6045407bdd63af980f6f996c99"/><file name="Response.php" hash="695c80ce5ee4e8dc38c78d0349e1f31b"/><file name="UrlBuilder.php" hash="6f468178b95a96f6217f44f9ef392cfb"/></dir><file name="Utf8EncodingConverter.php" hash="1cb05e6f174e36ed3cce6e2a7eb987ed"/><file name="XmlConfiguration.php" hash="faafd887682d6aa01f61604df24df277"/></dir><dir name="Custom"><file name=".gitignore" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir><dir name="Data"><file name="AdvisorAnswer.php" hash="55ffe5c6f8e1363d1d02875feec202d1"/><file name="AdvisorQuestion.php" hash="baa784c529640f2976b22262ec6f8983"/><file name="AfterSearchNavigation.php" hash="f1d08832e73cf45b8a35d99020aa49ea"/><file name="ArticleNumberSearchStatus.php" hash="da1966d4016c32ea492b8b6b931d8222"/><file name="BreadCrumb.php" hash="84b69c8df53c6d9eb721950a29e4a84d"/><file name="BreadCrumbTrail.php" hash="324bb6a06c0058e53c58bd3f96fe0ff3"/><file name="BreadCrumbType.php" hash="c9c3568bbfa4989517ee8f3b9c779fa2"/><file name="Campaign.php" hash="23966a3bea56ac66ff2b795e11983c6a"/><file name="CampaignIterator.php" hash="503766bc960efe69e861c2f45dce77d2"/><file name="Filter.php" hash="aafda20fe7c992af46316d74be33ec73"/><file name="FilterGroup.php" hash="8820c34c807044489682a290e86466b6"/><file name="FilterSelectionType.php" hash="bd0d0676af5d0182f6b6631e6df8ecb9"/><file name="FilterStyle.php" hash="1299441866fb075e331d2f9ca2755091"/><file name="FilterType.php" hash="b073cf2f411298509337808624666687"/><file name="Item.php" hash="b91116ddeb81c0b90e76a2a4f7b51261"/><file name="Page.php" hash="35daab87fdc5e3b4732480996b982364"/><file name="Paging.php" hash="1b06374d761489582de08551f17a58a1"/><file name="Record.php" hash="cd62198f27ebbb1e0a88008642c7157a"/><file name="Result.php" hash="01b94e91b11b61d794fb9ff40d6148d3"/><file name="ResultsPerPageOptions.php" hash="ae22d184bf43cd7b11cad567489a2261"/><file name="SearchParameters.php" hash="e8e1f9d24396f864f0367c9c6d575a37"/><file name="SearchStatus.php" hash="356fd9774c237a0e26ac85a6186bccfd"/><file name="SingleWordSearchItem.php" hash="db057d7f0460f29c5b31ab9689b3906b"/><file name="SliderFilter.php" hash="344d226acde13ec85f59d5a97cf8afc5"/><file name="Sorting.php" hash="284b4811c99ad057d08caead45ea2dee"/><file name="SortingDirection.php" hash="ec86bc437928a4aa623a8c098c94f435"/><file name="SortingItem.php" hash="428e8c59a5372cafc5ec69bf868dea18"/><file name="SortingItems.php" hash="4fd36b79ed02099265103e1e81c71557"/><file name="SuggestQuery.php" hash="4011313cfd853eace88c399444ffa4cc"/><file name="TagQuery.php" hash="a4460d5e8a9f918eea820a029dc21290"/></dir><file name="Loader.php" hash="cf900585b0fd44978f97e7a2b2279a99"/><dir name="Util"><file name="Curl.php" hash="c9cbe7b2116dd6160b8db3a14b634561"/><file name="CurlHandle.php" hash="bea42fdebc33e31cf58889de18232d3e"/><file name="CurlInterface.php" hash="1858bc215b7706ba81ff6e14aa2f4750"/><file name="CurlMultiHandle.php" hash="2085a5a09c218971412a44c0dad6bf72"/><file name="CurlStub.php" hash="555c36a9a5352e1a6acfd65a68cf911b"/><file name="Log4PhpLogger.php" hash="d232fe476b310ec8692877edddc972e4"/><file name="LoggerInterface.php" hash="36dfa3ee8a089595ef285806d0068b27"/><file name="NullLogger.php" hash="51e1a2a9c89a9efba49d0a0d3ee9325d"/><file name="Parameters.php" hash="6bb6f333d55dd7bce2a0014f10edbc29"/><file name="Pimple.php" hash="fb5e70660a5fe56edfdf11bec1ba6009"/></dir></dir><dir name="FACTFinderCustom"><file name="Configuration.php" hash="93832ed3840c5899c9c761c702dec17b"/></dir><dir name="log4php"><file name="Logger.php" hash="39841035ea058cc62571fcb9b4f3aa43"/><file name="LoggerAppender.php" hash="a8b07b24ee26931cef9373163542128a"/><file name="LoggerAppenderPool.php" hash="7e44ee58fbd3c50ae51c98742aa4f327"/><file name="LoggerAutoloader.php" hash="5aa85dd61ff00167d2b9d482bf418c77"/><file name="LoggerConfigurable.php" hash="4c89cbf3c90a724930c6d46995da16bd"/><file name="LoggerConfigurator.php" hash="b8ac801c410e0515fbd5ec6b67dfb40b"/><file name="LoggerException.php" hash="c91fd8cc5bfee3cad373f8ed9440458c"/><file name="LoggerFilter.php" hash="39b6689eeb15e468781c0a62a8f482b5"/><file name="LoggerHierarchy.php" hash="be16af259ec43bef5c49bd1118e94859"/><file name="LoggerLayout.php" hash="7c089f20f7abba10699de2bd4423af7c"/><file name="LoggerLevel.php" hash="f380928eb1aac5ade3d7654f200ebb81"/><file name="LoggerLocationInfo.php" hash="33f1a195cfdcc7ebf681a3085eb6b228"/><file name="LoggerLoggingEvent.php" hash="f227e5ae0d04fef3a36899906d4ad478"/><file name="LoggerMDC.php" hash="64868651982829e59d3b316498145a79"/><file name="LoggerNDC.php" hash="482045e33b9fe22e53269c021cbfe877"/><file name="LoggerReflectionUtils.php" hash="174b22dd241ba4263aba8d978d37959f"/><file name="LoggerRoot.php" hash="0d762ed21fdff2708adab3068b94c2c3"/><file name="LoggerThrowableInformation.php" hash="76d98d20d55cf0e3bd4b1b138023c3af"/><dir name="appenders"><file name="LoggerAppenderConsole.php" hash="5eefc20589c86b11d2832f9a8fafa44f"/><file name="LoggerAppenderDailyFile.php" hash="f97b57f6b0b9dba2f650ae5e17d9f28b"/><file name="LoggerAppenderEcho.php" hash="76824ae7be6503e8c5ca3a9fc15b7816"/><file name="LoggerAppenderFile.php" hash="92481c41d6f9d3d2cf6cfc82c7c0ef22"/><file name="LoggerAppenderFirePHP.php" hash="1eccdf817ff2e0204265a5a77901f0a1"/><file name="LoggerAppenderMail.php" hash="a23d71d709af265b20797eeb0d71911e"/><file name="LoggerAppenderMailEvent.php" hash="f853e9e18511ab18873484882c744655"/><file name="LoggerAppenderMongoDB.php" hash="494b30e44a3add5eeb9c0d54ea88c29b"/><file name="LoggerAppenderNull.php" hash="ec6ca85fadc4d71f75b5e8e13df6e058"/><file name="LoggerAppenderPDO.php" hash="4388d8e542fe680228365ffd48d8ab6d"/><file name="LoggerAppenderPhp.php" hash="9853767b74b8234361ace83867c9f18d"/><file name="LoggerAppenderRollingFile.php" hash="5bc49b8f05b36842b800d699bfe05e45"/><file name="LoggerAppenderSocket.php" hash="6111536426fdf6f8a4adafb460510301"/><file name="LoggerAppenderSyslog.php" hash="afda0ccf876a87781e58d63104519bdc"/></dir><dir name="configurators"><file name="LoggerConfigurationAdapter.php" hash="b07bade9ae4809776742d3b36ca4feb7"/><file name="LoggerConfigurationAdapterINI.php" hash="bfbca46c36693f098334699c7b71b569"/><file name="LoggerConfigurationAdapterPHP.php" hash="9f9c0bd65cda5224c8e90726baebb363"/><file name="LoggerConfigurationAdapterXML.php" hash="42ec1e713dadb1c6c813df278e6c58cb"/><file name="LoggerConfiguratorDefault.php" hash="a27dd348466a605849ffa946a5fa7bdf"/></dir><dir name="filters"><file name="LoggerFilterDenyAll.php" hash="8800e84c773b87e2638d22d627baae51"/><file name="LoggerFilterLevelMatch.php" hash="2ea447c40baea629486a6b7a4f8f352d"/><file name="LoggerFilterLevelRange.php" hash="b4b6753e0d0a8d734471482bb7b4981c"/><file name="LoggerFilterStringMatch.php" hash="342113e5152ef6e9703807fa36e52785"/></dir><dir name="helpers"><file name="LoggerFormattingInfo.php" hash="89a5ed8f751e4a6a826275619266b911"/><file name="LoggerOptionConverter.php" hash="e02f5ffc3918a0352bf77121e5add1d5"/><file name="LoggerPatternParser.php" hash="a5d4dfeb2a66b022380e0e3d7ba9b318"/><file name="LoggerUtils.php" hash="90264a3263bc4e3a3dac1dbeb3cc35df"/></dir><dir name="layouts"><file name="LoggerLayoutHtml.php" hash="cf6066b51d7ac2de4accaf13f68fb442"/><file name="LoggerLayoutPattern.php" hash="10c48d2fa44953d20fcb3e3542a05ebf"/><file name="LoggerLayoutSerialized.php" hash="cef71f72176167a15c79f5cab5515a77"/><file name="LoggerLayoutSimple.php" hash="ba2aaa713c715b823c4e767a2f0b3e67"/><file name="LoggerLayoutTTCC.php" hash="1ecb0af018b78ad42f4a9d70e182f429"/><file name="LoggerLayoutXml.php" hash="b52409dbb1bacc1c7b4c5ddf66ed8afa"/></dir><dir name="pattern"><file name="LoggerPatternConverter.php" hash="fcbd56bf082b96f02fcf5b0b552de4c1"/><file name="LoggerPatternConverterClass.php" hash="e61c2f7544feee8ee9b966311471a2a7"/><file name="LoggerPatternConverterCookie.php" hash="465d359167443336f258d9b5a89095ef"/><file name="LoggerPatternConverterDate.php" hash="4a399075a3c2d7542e3c649f55162482"/><file name="LoggerPatternConverterEnvironment.php" hash="829265aa84843818bd9faf3bd42b0432"/><file name="LoggerPatternConverterFile.php" hash="a7091f0857b99db4e00c33b61df5e3d3"/><file name="LoggerPatternConverterLevel.php" hash="6219dcb0d8630e6f69cbf4ba669fd11f"/><file name="LoggerPatternConverterLine.php" hash="a27bf38b5c6453a9925d365bde65fe47"/><file name="LoggerPatternConverterLiteral.php" hash="a2cd9e35ca6253cde6a467320837a767"/><file name="LoggerPatternConverterLocation.php" hash="b88efadaccdf31b25b1fb14866c106a0"/><file name="LoggerPatternConverterLogger.php" hash="4342ab32fa26cdf53308896272c2e36b"/><file name="LoggerPatternConverterMDC.php" hash="d241043bc9ea9ecdbf3a0ae5d5a42206"/><file name="LoggerPatternConverterMessage.php" hash="cad3040a1a3d1d40dc6a26727bebe19d"/><file name="LoggerPatternConverterMethod.php" hash="3208fb30a3bc0a7e0fb281800c43ecef"/><file name="LoggerPatternConverterNDC.php" hash="2e68ba79896c47c5067bbf0b371df260"/><file name="LoggerPatternConverterNewLine.php" hash="291bd541e0f689484a5596323e3cac14"/><file name="LoggerPatternConverterProcess.php" hash="7421d9b9b6a5f8f51c3a9a1c796911a5"/><file name="LoggerPatternConverterRelative.php" hash="24495b25867aac190135610061cd244d"/><file name="LoggerPatternConverterRequest.php" hash="67a484d44fd7ddc06a654995904e9653"/><file name="LoggerPatternConverterServer.php" hash="bef42f8b51bc220453e3f4b1e67e7402"/><file name="LoggerPatternConverterSession.php" hash="7cd6290d364837cd2ff4358c03022e98"/><file name="LoggerPatternConverterSessionID.php" hash="fc7b37aa3cb28fbb09862eb7edc6d042"/><file name="LoggerPatternConverterSuperglobal.php" hash="6b984fb3d26fb0186595370d0f066659"/><file name="LoggerPatternConverterThrowable.php" hash="4ca10f0f20408a30243ff589415634c9"/></dir><dir name="renderers"><file name="LoggerRenderer.php" hash="332819a947805d55c2aa546ced274f01"/><file name="LoggerRendererDefault.php" hash="4c4003cde8e0a74cc562060ca7bccf61"/><file name="LoggerRendererException.php" hash="4b2def2de9aa459bd321e826c02e31c2"/><file name="LoggerRendererMap.php" hash="b9aadee6f31f7cb38210653141b94fa6"/></dir><dir name="xml"><file name="log4php.dtd" hash="fb7e60edf02964352b7ddee1f26d8924"/></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="factfinder"><file name="asn.xml" hash="05ee1b7d0d34d7e43de8c115aeaab69d"/><file name="campaigns.xml" hash="40a945b639f93c059f921b2d89664258"/><file name="core.xml" hash="fe920d8ef444afbcfa2053b72bc819fc"/><file name="suggest.xml" hash="9c1a761044cd33da5e028c92ce9abe4f"/><file name="tagcloud.xml" hash="0d31f54985019d96bb1b5af17ccdf0d3"/><file name="tracking.xml" hash="53ce8afeb32391a4b207121a372162a2"/></dir></dir><dir name="template"><dir name="factfinder"><dir name="asn"><dir name="layer"><dir name="filter"><file name="slider.phtml" hash="2004f809f803e17d9739a7173958ceca"/></dir><file name="slider.phtml" hash="d48c9aace222c7525430b5235acd4026"/></dir></dir><dir name="campaigns"><file name="advisory.phtml" hash="3341ee58f81da41020f85c2145048b8b"/><file name="feedback.phtml" hash="4c1868f038a13bd2ca270b7d9a077452"/><file name="pushed.phtml" hash="b76b7c5b064ee6dc86ccc94a363bdb05"/></dir><dir name="core"><dir name="export"><file name="locked.phtml" hash="f0948f48fcc40dfcb21a8da68ce29425"/><file name="nofile.phtml" hash="c304b037812f4c34d7e094fe3b70cd80"/></dir></dir><dir name="suggest"><file name="advancedsuggest.phtml" hash="9f74281e6e75d1d3aec83d5d7f026c17"/></dir><dir name="tracking"><file name="click.phtml" hash="3e545af810a201db7c76c0502f606308"/><file name="recommendation.phtml" hash="02dba2d0cc5e1608682a700916a963d8"/></dir></dir></dir></dir></dir><dir name="rwd"><dir name="enterprise"><dir name="layout"><dir name="factfinder"><file name="suggest.xml" hash="9c1a761044cd33da5e028c92ce9abe4f"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="."><file name="factfinder.xml" hash="f87803fd5c96fc784baff992c2bce96b"/></dir><dir name="modules"><file name="FACTFinder_Asn.xml" hash="a003a8010c577c396c8e2ee5b1ea4417"/><file name="FACTFinder_Campaigns.xml" hash="ccd3080cf57535193a6fe2e6946640fd"/><file name="FACTFinder_Core.xml" hash="80f5142c2acf5ceeca0fd552ddb7ce4c"/><file name="FACTFinder_Recommendation.xml" hash="9742344545ee435a4dc87eb2bb80bf19"/><file name="FACTFinder_Suggest.xml" hash="882806b936029f0ef04d4719542ecea3"/><file name="FACTFinder_Tagcloud.xml" hash="62d3ccec2191e7dfd8225e02912891d2"/><file name="FACTFinder_Tracking.xml" hash="779b734bdcafabab072a1afd9d0bf7c4"/></dir></target><target name="mage"><dir name="shell"><file name="factfinder.php" hash="86667fac5a3532b607bb622f23bd67ad"/></dir></target><target name="mageweb"><dir name="js"><dir name="factfinder"><file name="jXHR.js" hash="a62424da9902b49a76659683121618d0"/><file name="suggest.js" hash="3e235179d35a59cb07410251c2d9dd32"/><file name="tracking.js" hash="8c429f905c02793f28761e44764049da"/></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="factfinder_onetouchslider"><file name="234A0ACCECB3C19247FA8B7920453761.cache.js" hash="df488d926e6054769d4731148e707b58"/><file name="25E490B929D7CDBF44085E4E4D9D6F78.cache.js" hash="2a017b95cfbd8653a222660b60697419"/><file name="53ABFAE8983A4589B497F48695DB2A7C.cache.js" hash="b6b02347438384cc886b2509426826b5"/><file name="75B23D057185BAB61CFE100CE08C4D84.cache.js" hash="ec9c94e05e64372a9636ef03e688d451"/><file name="79DD9AE9135ADFDE204324DA7F1B1405.cache.png" hash="6ba720deee377e093c5f5b0423c152df"/><file name="9F0D0456482D7A7A901A2CD8F64EA019.cache.js" hash="dad64db53266865af02c620795c6ab13"/><file name="clear.cache.gif" hash="6d22e4f2d2057c6e8d6fab098e76e80f"/><file name="de.factfinder.asn.slider.OneTouchSlider.nocache.js" hash="f92d47fc9eb8cf8ff78173997f5a4a7a"/></dir></dir><dir name="css"><file name="factfinder_suggest.css" hash="1a8a97d65582535cbc74c5599fcb34e1"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="FACTFinder_Suggest.csv" hash="3098dfae8ccf75366dfa093ce5c863f2"/></dir><dir name="en_US"><file name="FACTFinder_Suggest.csv" hash="2e9fd7bbc9407364430a7c281c94ec63"/></dir></target></contents>
|
20 |
<compatible/>
|
21 |
<dependencies><required><php><min>5.3.0</min><max>7.1.0</max></php></required></dependencies>
|
22 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Flagbit_Factfinder</name>
|
4 |
+
<version>4.1.13</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="https://opensource.org/licenses/MIT">MIT</license>
|
7 |
<channel>community</channel>
|
8 |
<extends/>
|
9 |
+
<summary>4.1.13 Release</summary>
|
10 |
+
<description>4.1.13 Release</description>
|
11 |
+
<notes>- Fixed bug with attribute name with space character in slider #127
|
12 |
+
- Improved attributes product export #121
|
13 |
+
- Fixed bug with static fields not being exported #190
|
14 |
+
- Improved export performance
|
15 |
+
- Add possibility to use any JSONP callback #145
|
16 |
+
- multiple small bugfixes (tracking, export, suggest)</notes>
|
17 |
<authors><author><name>FACTFinder</name><user>FACT_Finder</user><email>info@flagbit.de</email></author></authors>
|
18 |
+
<date>2017-03-14</date>
|
19 |
+
<time>14:32:04</time>
|
20 |
+
<contents><target name="magecommunity"><dir name="FACTFinder"><dir name="Asn"><dir name="Block"><dir name="Catalog"><dir name="Layer"><file name="Factfinder.php" hash="0e79d252a2752aab67f7490436350fe7"/><file name="State.php" hash="2bf2c99237e881372fdc074c3505d188"/></dir><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="9b0c98e266174c8f8b02b896a556b769"/></dir><file name="Pager.php" hash="ec87967ba312a3d589e0af0afbacdd0a"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="e91e88f58d9057043299a40ed01910e9"/></dir><dir name="Model"><dir name="Catalog"><file name="Layer.php" hash="6dafe882395b5d09f84c102f3b785410"/></dir><dir name="Handler"><file name="Search.php" hash="42365aa93a4e9e1f278dd299f3e06d7d"/></dir><dir name="Layer"><dir name="Filter"><file name="Factfinder.php" hash="2666ae9c79aa939e9539a1af5b0f7784"/><file name="Item.php" hash="a68545b4cb4487691ae75cdbf47af377"/></dir></dir><file name="Observer.php" hash="9ec46432b3d3170b626cfb4439315209"/><dir name="Resource"><dir name="Product"><dir name="Attribute"><file name="Collection.php" hash="03b060fd637de1fd632f1b9784b1124c"/></dir></dir><dir name="Search"><file name="Collection.php" hash="3e7a88eb53ccfb79b4448f9eb7bd4177"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="e07b890b06b00d94bc4a4a5931325366"/><file name="system.xml" hash="7a8a776e911a831b401900dbf9529b68"/></dir></dir><dir name="Campaigns"><dir name="Block"><file name="Abstract.php" hash="cbb92e501e5576dcc5ec121a708850a6"/><dir name="Advisory"><file name="Search.php" hash="1d4bf82a7baffbe64be17216436c35d4"/></dir><dir name="Feedback"><file name="Abstract.php" hash="018e415bdd754127cfad8bfa5881c0ce"/><file name="Cart.php" hash="35f9fec2518383c909495af90b324b8b"/><file name="Page.php" hash="b791d428663177b38acf568b424f9b62"/><file name="Product.php" hash="d3014e9684a2812ca653bde5ce945c21"/><file name="Search.php" hash="ebf3d35f6425b771291b08f696169d04"/></dir><dir name="Pushed"><file name="Abstract.php" hash="6dc968f84fb74d615e1441a3a18f34b7"/><file name="Cart.php" hash="741d3bd71ce91cd583778a5e26be9ff5"/><file name="Page.php" hash="f41d08224acf14ee5ebeb281117b43c3"/><file name="Product.php" hash="1f58a3b139eae9915987295f17c26c6e"/><file name="Search.php" hash="7db401a3ee1153ff5677b544fbb2a44e"/></dir></dir><dir name="Helper"><file name="Data.php" hash="92b1313e10cc6c448c6fae40fd113ba6"/></dir><dir name="Model"><file name="Facade.php" hash="44fc55139509b76f19b7c95c6a81eb4c"/><dir name="Handler"><file name="Abstract.php" hash="1784c503a2979f42dbd4e9698e482c47"/><file name="Cart.php" hash="d954c511b4f11d7f721c4117746de35a"/><file name="Page.php" hash="dcbde5a5d54da6893ccc6cbc678bfb45"/><file name="Product.php" hash="fbd9ced4527fce56144c7913af979b65"/><file name="Search.php" hash="e039a207ca98655c647355ebf287566d"/></dir><file name="Observer.php" hash="79d77c8ca8d4d0a1859eb8913bbf14d4"/><dir name="Resource"><dir name="Pushedproducts"><file name="Collection.php" hash="569856158dee935d611ebc30f426835c"/></dir></dir></dir><dir name="etc"><file name="config.xml" hash="8f6b7cec7cff39b149beeffb39764668"/><file name="system.xml" hash="20ee896b686b17dc832a64b440d130bb"/></dir></dir><dir name="Core"><dir name="Block"><dir name="Adminhtml"><file name="Exportlink.php" hash="d26379c98cceb566bb78eac7cbd9ae52"/><dir name="Form"><dir name="Field"><file name="Attributes.php" hash="067c235c05c8f636391c5bbfcd96410b"/><dir name="Column"><file name="Attribute.php" hash="cef785ba8591ba4757f23c64d5f32667"/><file name="Type.php" hash="24e7c94e4ed7be13f5b39698d2f95610"/><file name="Unit.php" hash="bf2dbb9fad861e312b3ed3a71596aa42"/></dir></dir></dir></dir><dir name="Catalog"><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="9b1c3f6717affec05152880022879b69"/></dir><file name="Pager.php" hash="02397c2a714c21afef30cc8becb6cecc"/></dir></dir><dir name="CatalogSearch"><file name="Layer.php" hash="eebbe0062114b187a80ed5ef0d2e09bd"/></dir><dir name="EnterpriseSearch"><file name="Layer.php" hash="03053f5747b0c1fa0f10defb54b40e9d"/></dir></dir><dir name="Helper"><file name="Backend.php" hash="58c3e5a0adbe4eeef0955f257ecc1d5e"/><file name="Data.php" hash="4e3706e32b44052485333738979243cb"/><file name="Debug.php" hash="06e39e999086a55d2fff8dc28dae8434"/><file name="Export.php" hash="891fb821f5d5f788031281a477a11d8a"/><file name="Rewrite.php" hash="da643b708ef5ee159f7f397a203d704a"/><file name="Search.php" hash="82c64c9e22a4403771df8fc1067c1f01"/></dir><dir name="Model"><file name="Autoloader.php" hash="fdb9e2c46fdfd035d378d02de417d827"/><dir name="CatalogSearch"><file name="Layer.php" hash="e4078f3f9068223071afabc0db814689"/><file name="Query.php" hash="f2fd055d2aa8fe6051b825e3ab4c19a8"/></dir><dir name="Export"><file name="Observer.php" hash="917ca235a1b2af3c707e25747b8af8b5"/><file name="Semaphore.php" hash="6de4c7895b0c130d539b48b93182fdc5"/><dir name="Type"><file name="Interface.php" hash="b29c7b7319fa52783eb546aabf5cb6e9"/><file name="Price.php" hash="e2d7cc9bcd023ba56775a4a69feba607"/><dir name="Product"><file name="Attribute.php" hash="d5208db71e5ecfdaa5628a34f1f3f783"/></dir><file name="Product.php" hash="c215caa9347e705a52187a8ea0c5186c"/><file name="Stock.php" hash="6e14917934d4aacad66df17d17fbf8c0"/></dir></dir><file name="Facade.php" hash="2b0f32231eb4f8b8ad896dac5b381773"/><dir name="File"><dir name="Validator"><file name="Abstract.php" hash="bbbd31edca86104e830c84660417bbd8"/><file name="Price.php" hash="38a6be7fb1f41f4682eb1daa38554669"/><file name="Product.php" hash="31cf15e2204bb5a50136a06089d18afe"/><file name="Stock.php" hash="0dd23287ff233398f0d65106cccca029"/></dir></dir><file name="File.php" hash="1fdbfd13f875e8bae744a45a03a2ccd3"/><file name="Ftp.php" hash="00306205e204f83f6f835bfcd695df18"/><dir name="Handler"><file name="Abstract.php" hash="a17ffe402ff7413651b1de6b65c5701f"/><file name="Search.php" hash="9decdf6cc701cdb2e53ffd32cb4b50f4"/><file name="Status.php" hash="98b9ba6c5da080212493af0390459616"/></dir><file name="Observer.php" hash="f98d829e0ba771894bbc6b53ee100395"/><dir name="Resource"><file name="Attribute.php" hash="082ac9e656bc6a32afddf4e3e42d2c86"/><file name="Fulltext.php" hash="0c483819bb0fed5353c5fde1eecefd19"/><file name="Product.php" hash="47fec2ffe736c66fbde04d7cd83d27e2"/><dir name="Search"><file name="Collection.php" hash="a66e7adad482432d31bbd11e8fd22426"/><file name="Engine.php" hash="20b236f2382f4ab2b2221f6ab8a503ce"/></dir></dir><dir name="System"><dir name="Config"><dir name="Backend"><file name="Attributes.php" hash="dcfc0b849dc6b2948810ae647459a0f8"/><file name="Cron.php" hash="4cb4717dbf317edda0925c3bb0563127"/><file name="Enabled.php" hash="b062742b02cdb00903dd3cb0a7f7f4c1"/><file name="Engine.php" hash="740b7292f87d95d9612b080526d8cd80"/></dir><dir name="Source"><file name="Authtype.php" hash="acaabb4477aa8bf927de96d12d122842"/><file name="Engine.php" hash="b83c28048827422378fd83e586c61a27"/><file name="Identifier.php" hash="3702d6f52a9cdf4dbc90956968250b89"/><file name="Protocol.php" hash="67a1cade2674ebfad712ebcd8922da52"/></dir></dir></dir><file name="Url.php" hash="a45453db77e9b4dc0fa587588663862a"/></dir><dir name="controllers"><file name="ExportController.php" hash="026851f86fc10418b9fe2132bb26c2b8"/></dir><dir name="etc"><file name="adminhtml.xml" hash="aedaa0909b44d26a81b96a6f08f8a5b5"/><file name="config.xml" hash="2e71b2d6c1afab4ad92adbb99ab49de5"/><file name="system.xml" hash="829019cffbfc3b8a3b22599bc62829b0"/></dir></dir><dir name="Recommendation"><dir name="Helper"><file name="Data.php" hash="6312dfdef17070694f59139acbb2d5e1"/></dir><dir name="Model"><file name="Facade.php" hash="ed9c246bc831c7f3950a88853d401288"/><dir name="Handler"><file name="Recommendations.php" hash="d51721bbd3348242c7252b6d4c29f187"/></dir><file name="Observer.php" hash="50cfe5f830cfd50c26061b7497f7e1a6"/></dir><dir name="etc"><file name="config.xml" hash="03ec96e0fa78fdfbc3d4d5fac7193704"/><file name="system.xml" hash="f841228bf8a5397fe18da6186c5e3208"/></dir></dir><dir name="Suggest"><dir name="Block"><file name="TopSearch.php" hash="fd792a1d4e21d062efcd40845cc338d5"/><dir name="XmlConnect"><dir name="Catalog"><dir name="Search"><file name="Suggest.php" hash="fc63b3de74852ee8bfc7969e78b6dae1"/></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="e703dcc7b49cf29a9d559195cd8b3ecc"/></dir><dir name="Model"><file name="Facade.php" hash="3d7c6e63280020cf69ebe405cf0a0ebf"/><dir name="Handler"><file name="Suggest.php" hash="082e7f97eb7808f1cd3720aec4ef6bfd"/></dir><file name="Observer.php" hash="2da8a20b011a7ae949280136e17cab95"/><file name="Processor.php" hash="3d8ec2d81f78612a5b29eb403b3aeecb"/><dir name="System"><dir name="Config"><dir name="Source"><file name="Imagetype.php" hash="68d156442bc9775396d288afb57b76a6"/></dir></dir></dir></dir><dir name="controllers"><file name="ProxyController.php" hash="8661e61670f3e58367dd1820419b70c9"/></dir><dir name="etc"><file name="config.xml" hash="8bf8dbee3b6eb8373270193679988fc8"/><file name="system.xml" hash="9553d46b52f75a15d1a6b25ebaa4ea40"/></dir></dir><dir name="Tagcloud"><dir name="Block"><file name="TagCloud.php" hash="b45ae466a186bb4395c730449df80c17"/></dir><dir name="Helper"><file name="Data.php" hash="c9b6a4f7bdc832720637ff5ec2c6d971"/></dir><dir name="Model"><file name="Facade.php" hash="9c58f1ee809be6acd808404497b51776"/><dir name="Handler"><file name="TagCloud.php" hash="3b5f17d63262979b79a7241687822983"/></dir></dir><dir name="etc"><file name="config.xml" hash="ddff7960cb1b77d7bf510439d5e45ba5"/></dir></dir><dir name="Tracking"><dir name="Block"><file name="Abstract.php" hash="e8093ffb80c9f4b54ec38f26116b39b6"/><file name="Click.php" hash="85a3c931a9c688aa83e5baec982f91fb"/><file name="Recommendation.php" hash="1383ab088059bd3c979c98948c54730d"/></dir><dir name="Helper"><file name="Data.php" hash="69fb7977d09b641f95efb975521da502"/></dir><dir name="Model"><file name="Facade.php" hash="fe00eea3df3698e8cda8c79962caf4f9"/><dir name="Handler"><file name="Tracking.php" hash="bd4791c328adfca912c251ebfff54edc"/></dir><file name="Observer.php" hash="7400d80323cf04066d5b5b5d2ab41177"/><file name="Processor.php" hash="7899ae450be6bd95104c5481b45fe878"/><file name="Queue.php" hash="3a23d97724ef0a4ace3647098e66e54f"/><dir name="Resource"><dir name="Queue"><file name="Collection.php" hash="d9e9efe71a2206fc995a7650f38abe07"/></dir><file name="Queue.php" hash="a6a9f88edb44a564fbc5c33f2cc91ab1"/></dir></dir><dir name="controllers"><file name="ProxyController.php" hash="85ae9d1eb8f56890ea7a52b0640c4c50"/></dir><dir name="etc"><file name="config.xml" hash="a196db9686f2de4b1cea8ee7be4917fc"/><file name="system.xml" hash="e07cec5bb16633c83512926f860d2f2e"/></dir><dir name="sql"><dir name="factfinder_tracking_setup"><file name="install-1.0.0.php" hash="5e59c53c91e9a14653825ce3c5a25c4e"/><file name="upgrade-1.0.0-4.1.2.php" hash="45e617cf3c682b20732abf71b3c240f2"/><file name="upgrade-4.1.11-4.1.12.php" hash="ca9ce7e0f9880099245f51a29c68c77a"/><file name="upgrade-4.1.2-4.1.11.php" hash="0c1d97e009a7b18effb1a54ed9db4f06"/></dir></dir></dir></dir></target><target name="magelib"><dir name="FACTFinder"><dir name="Adapter"><file name="AbstractAdapter.php" hash="91eae466a803590699160600c430eab6"/><file name="Compare.php" hash="6b7cbae461ef45587c565affadbf8664"/><file name="ConfigurableResponse.php" hash="8ffa7eaa12d448a7bd4a9bba9975c573"/><file name="Import.php" hash="584eecdb7281603ba5ef901082fb52d7"/><file name="PersonalisedResponse.php" hash="6b62c326d25e123f686baa358a1b258b"/><file name="ProductCampaign.php" hash="945181a15218fd90721d3258eaf2fd17"/><file name="Recommendation.php" hash="0bcc4ccce41f40d343ebe19c901bea69"/><file name="Search.php" hash="202f3e5d444edb8be0b4e187bd98ea78"/><file name="SimilarRecords.php" hash="b80691760f993d2a43cbe2eb933090fe"/><file name="Suggest.php" hash="5f91090f7c7ea764f9fc21938aade3c8"/><file name="TagCloud.php" hash="fe1faf30373e91b96e57c08fb64df23a"/><file name="Tracking.php" hash="18948f9db1782730258a0e83f6f517b9"/></dir><dir name="Core"><file name="AbstractConfiguration.php" hash="d9341f7f13615a8a0c2805b2021cdfc8"/><file name="AbstractEncodingConverter.php" hash="7946720c77c47e3ed2070606a74a48cb"/><file name="ArrayConfiguration.php" hash="dc60873fa6eed180126944247cb4de99"/><dir name="Client"><file name="RequestParser.php" hash="bc5dabb648f7278db4a1c5f14af4dfa0"/><file name="UrlBuilder.php" hash="d73cc166fcf20b7623ea0f7c319d3224"/></dir><file name="ConfigurationInterface.php" hash="1158aaee6a7502cf81bf27b8ed0c76ff"/><file name="IConvEncodingConverter.php" hash="5c504a3229cc8a59c09f03f3bf2c9348"/><file name="ManualConfiguration.php" hash="a49d0b05cc319b807c40b37a861b060d"/><dir name="Page"><file name=".gitignore" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir><file name="ParametersConverter.php" hash="9c01642c6de1842b8f1b4e8d9f93017e"/><dir name="Server"><file name="AbstractDataProvider.php" hash="8d33ddebe3d3e60b72893188d7f2369f"/><file name="ConnectionData.php" hash="c4246099ec93e7f589c0e22179d9557a"/><file name="EasyCurlDataProvider.php" hash="48f452cd3ca1dcf3b4e7cc4d8b59c8a9"/><file name="EasyCurlRequestFactory.php" hash="61f88e882120dca5e5e1964d1f898527"/><file name="FileSystemDataProvider.php" hash="30b428e2b76307b1143057a155371c34"/><file name="FileSystemRequestFactory.php" hash="f0a464725448393e64948a6063208d91"/><file name="MultiCurlDataProvider.php" hash="2e467a4976694ef4e7775d913dafedf4"/><file name="MultiCurlRequestFactory.php" hash="41f978e0dd60065026dc5adced1f9503"/><file name="NullResponse.php" hash="3a419c1ea234ef20e1330c7b445eb9c6"/><file name="Request.php" hash="08ddaaa7701558e1802408089d15b5dd"/><file name="RequestFactoryInterface.php" hash="65cfad6045407bdd63af980f6f996c99"/><file name="Response.php" hash="695c80ce5ee4e8dc38c78d0349e1f31b"/><file name="UrlBuilder.php" hash="6f468178b95a96f6217f44f9ef392cfb"/></dir><file name="Utf8EncodingConverter.php" hash="1cb05e6f174e36ed3cce6e2a7eb987ed"/><file name="XmlConfiguration.php" hash="faafd887682d6aa01f61604df24df277"/></dir><dir name="Custom"><file name=".gitignore" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir><dir name="Data"><file name="AdvisorAnswer.php" hash="55ffe5c6f8e1363d1d02875feec202d1"/><file name="AdvisorQuestion.php" hash="baa784c529640f2976b22262ec6f8983"/><file name="AfterSearchNavigation.php" hash="f1d08832e73cf45b8a35d99020aa49ea"/><file name="ArticleNumberSearchStatus.php" hash="da1966d4016c32ea492b8b6b931d8222"/><file name="BreadCrumb.php" hash="84b69c8df53c6d9eb721950a29e4a84d"/><file name="BreadCrumbTrail.php" hash="324bb6a06c0058e53c58bd3f96fe0ff3"/><file name="BreadCrumbType.php" hash="c9c3568bbfa4989517ee8f3b9c779fa2"/><file name="Campaign.php" hash="23966a3bea56ac66ff2b795e11983c6a"/><file name="CampaignIterator.php" hash="503766bc960efe69e861c2f45dce77d2"/><file name="Filter.php" hash="aafda20fe7c992af46316d74be33ec73"/><file name="FilterGroup.php" hash="8820c34c807044489682a290e86466b6"/><file name="FilterSelectionType.php" hash="bd0d0676af5d0182f6b6631e6df8ecb9"/><file name="FilterStyle.php" hash="1299441866fb075e331d2f9ca2755091"/><file name="FilterType.php" hash="b073cf2f411298509337808624666687"/><file name="Item.php" hash="b91116ddeb81c0b90e76a2a4f7b51261"/><file name="Page.php" hash="35daab87fdc5e3b4732480996b982364"/><file name="Paging.php" hash="1b06374d761489582de08551f17a58a1"/><file name="Record.php" hash="cd62198f27ebbb1e0a88008642c7157a"/><file name="Result.php" hash="01b94e91b11b61d794fb9ff40d6148d3"/><file name="ResultsPerPageOptions.php" hash="ae22d184bf43cd7b11cad567489a2261"/><file name="SearchParameters.php" hash="e8e1f9d24396f864f0367c9c6d575a37"/><file name="SearchStatus.php" hash="356fd9774c237a0e26ac85a6186bccfd"/><file name="SingleWordSearchItem.php" hash="db057d7f0460f29c5b31ab9689b3906b"/><file name="SliderFilter.php" hash="344d226acde13ec85f59d5a97cf8afc5"/><file name="Sorting.php" hash="284b4811c99ad057d08caead45ea2dee"/><file name="SortingDirection.php" hash="ec86bc437928a4aa623a8c098c94f435"/><file name="SortingItem.php" hash="428e8c59a5372cafc5ec69bf868dea18"/><file name="SortingItems.php" hash="4fd36b79ed02099265103e1e81c71557"/><file name="SuggestQuery.php" hash="4011313cfd853eace88c399444ffa4cc"/><file name="TagQuery.php" hash="a4460d5e8a9f918eea820a029dc21290"/></dir><file name="Loader.php" hash="cf900585b0fd44978f97e7a2b2279a99"/><dir name="Util"><file name="Curl.php" hash="c9cbe7b2116dd6160b8db3a14b634561"/><file name="CurlHandle.php" hash="bea42fdebc33e31cf58889de18232d3e"/><file name="CurlInterface.php" hash="1858bc215b7706ba81ff6e14aa2f4750"/><file name="CurlMultiHandle.php" hash="2085a5a09c218971412a44c0dad6bf72"/><file name="CurlStub.php" hash="555c36a9a5352e1a6acfd65a68cf911b"/><file name="Log4PhpLogger.php" hash="d232fe476b310ec8692877edddc972e4"/><file name="LoggerInterface.php" hash="36dfa3ee8a089595ef285806d0068b27"/><file name="NullLogger.php" hash="51e1a2a9c89a9efba49d0a0d3ee9325d"/><file name="Parameters.php" hash="6bb6f333d55dd7bce2a0014f10edbc29"/><file name="Pimple.php" hash="fb5e70660a5fe56edfdf11bec1ba6009"/></dir></dir><dir name="FACTFinderCustom"><file name="Configuration.php" hash="93832ed3840c5899c9c761c702dec17b"/></dir><dir name="log4php"><file name="Logger.php" hash="39841035ea058cc62571fcb9b4f3aa43"/><file name="LoggerAppender.php" hash="a8b07b24ee26931cef9373163542128a"/><file name="LoggerAppenderPool.php" hash="7e44ee58fbd3c50ae51c98742aa4f327"/><file name="LoggerAutoloader.php" hash="5aa85dd61ff00167d2b9d482bf418c77"/><file name="LoggerConfigurable.php" hash="4c89cbf3c90a724930c6d46995da16bd"/><file name="LoggerConfigurator.php" hash="b8ac801c410e0515fbd5ec6b67dfb40b"/><file name="LoggerException.php" hash="c91fd8cc5bfee3cad373f8ed9440458c"/><file name="LoggerFilter.php" hash="39b6689eeb15e468781c0a62a8f482b5"/><file name="LoggerHierarchy.php" hash="be16af259ec43bef5c49bd1118e94859"/><file name="LoggerLayout.php" hash="7c089f20f7abba10699de2bd4423af7c"/><file name="LoggerLevel.php" hash="f380928eb1aac5ade3d7654f200ebb81"/><file name="LoggerLocationInfo.php" hash="33f1a195cfdcc7ebf681a3085eb6b228"/><file name="LoggerLoggingEvent.php" hash="f227e5ae0d04fef3a36899906d4ad478"/><file name="LoggerMDC.php" hash="64868651982829e59d3b316498145a79"/><file name="LoggerNDC.php" hash="482045e33b9fe22e53269c021cbfe877"/><file name="LoggerReflectionUtils.php" hash="174b22dd241ba4263aba8d978d37959f"/><file name="LoggerRoot.php" hash="0d762ed21fdff2708adab3068b94c2c3"/><file name="LoggerThrowableInformation.php" hash="76d98d20d55cf0e3bd4b1b138023c3af"/><dir name="appenders"><file name="LoggerAppenderConsole.php" hash="5eefc20589c86b11d2832f9a8fafa44f"/><file name="LoggerAppenderDailyFile.php" hash="f97b57f6b0b9dba2f650ae5e17d9f28b"/><file name="LoggerAppenderEcho.php" hash="76824ae7be6503e8c5ca3a9fc15b7816"/><file name="LoggerAppenderFile.php" hash="92481c41d6f9d3d2cf6cfc82c7c0ef22"/><file name="LoggerAppenderFirePHP.php" hash="1eccdf817ff2e0204265a5a77901f0a1"/><file name="LoggerAppenderMail.php" hash="a23d71d709af265b20797eeb0d71911e"/><file name="LoggerAppenderMailEvent.php" hash="f853e9e18511ab18873484882c744655"/><file name="LoggerAppenderMongoDB.php" hash="494b30e44a3add5eeb9c0d54ea88c29b"/><file name="LoggerAppenderNull.php" hash="ec6ca85fadc4d71f75b5e8e13df6e058"/><file name="LoggerAppenderPDO.php" hash="4388d8e542fe680228365ffd48d8ab6d"/><file name="LoggerAppenderPhp.php" hash="9853767b74b8234361ace83867c9f18d"/><file name="LoggerAppenderRollingFile.php" hash="5bc49b8f05b36842b800d699bfe05e45"/><file name="LoggerAppenderSocket.php" hash="6111536426fdf6f8a4adafb460510301"/><file name="LoggerAppenderSyslog.php" hash="afda0ccf876a87781e58d63104519bdc"/></dir><dir name="configurators"><file name="LoggerConfigurationAdapter.php" hash="b07bade9ae4809776742d3b36ca4feb7"/><file name="LoggerConfigurationAdapterINI.php" hash="bfbca46c36693f098334699c7b71b569"/><file name="LoggerConfigurationAdapterPHP.php" hash="9f9c0bd65cda5224c8e90726baebb363"/><file name="LoggerConfigurationAdapterXML.php" hash="42ec1e713dadb1c6c813df278e6c58cb"/><file name="LoggerConfiguratorDefault.php" hash="a27dd348466a605849ffa946a5fa7bdf"/></dir><dir name="filters"><file name="LoggerFilterDenyAll.php" hash="8800e84c773b87e2638d22d627baae51"/><file name="LoggerFilterLevelMatch.php" hash="2ea447c40baea629486a6b7a4f8f352d"/><file name="LoggerFilterLevelRange.php" hash="b4b6753e0d0a8d734471482bb7b4981c"/><file name="LoggerFilterStringMatch.php" hash="342113e5152ef6e9703807fa36e52785"/></dir><dir name="helpers"><file name="LoggerFormattingInfo.php" hash="89a5ed8f751e4a6a826275619266b911"/><file name="LoggerOptionConverter.php" hash="e02f5ffc3918a0352bf77121e5add1d5"/><file name="LoggerPatternParser.php" hash="a5d4dfeb2a66b022380e0e3d7ba9b318"/><file name="LoggerUtils.php" hash="90264a3263bc4e3a3dac1dbeb3cc35df"/></dir><dir name="layouts"><file name="LoggerLayoutHtml.php" hash="cf6066b51d7ac2de4accaf13f68fb442"/><file name="LoggerLayoutPattern.php" hash="10c48d2fa44953d20fcb3e3542a05ebf"/><file name="LoggerLayoutSerialized.php" hash="cef71f72176167a15c79f5cab5515a77"/><file name="LoggerLayoutSimple.php" hash="ba2aaa713c715b823c4e767a2f0b3e67"/><file name="LoggerLayoutTTCC.php" hash="1ecb0af018b78ad42f4a9d70e182f429"/><file name="LoggerLayoutXml.php" hash="b52409dbb1bacc1c7b4c5ddf66ed8afa"/></dir><dir name="pattern"><file name="LoggerPatternConverter.php" hash="fcbd56bf082b96f02fcf5b0b552de4c1"/><file name="LoggerPatternConverterClass.php" hash="e61c2f7544feee8ee9b966311471a2a7"/><file name="LoggerPatternConverterCookie.php" hash="465d359167443336f258d9b5a89095ef"/><file name="LoggerPatternConverterDate.php" hash="4a399075a3c2d7542e3c649f55162482"/><file name="LoggerPatternConverterEnvironment.php" hash="829265aa84843818bd9faf3bd42b0432"/><file name="LoggerPatternConverterFile.php" hash="a7091f0857b99db4e00c33b61df5e3d3"/><file name="LoggerPatternConverterLevel.php" hash="6219dcb0d8630e6f69cbf4ba669fd11f"/><file name="LoggerPatternConverterLine.php" hash="a27bf38b5c6453a9925d365bde65fe47"/><file name="LoggerPatternConverterLiteral.php" hash="a2cd9e35ca6253cde6a467320837a767"/><file name="LoggerPatternConverterLocation.php" hash="b88efadaccdf31b25b1fb14866c106a0"/><file name="LoggerPatternConverterLogger.php" hash="4342ab32fa26cdf53308896272c2e36b"/><file name="LoggerPatternConverterMDC.php" hash="d241043bc9ea9ecdbf3a0ae5d5a42206"/><file name="LoggerPatternConverterMessage.php" hash="cad3040a1a3d1d40dc6a26727bebe19d"/><file name="LoggerPatternConverterMethod.php" hash="3208fb30a3bc0a7e0fb281800c43ecef"/><file name="LoggerPatternConverterNDC.php" hash="2e68ba79896c47c5067bbf0b371df260"/><file name="LoggerPatternConverterNewLine.php" hash="291bd541e0f689484a5596323e3cac14"/><file name="LoggerPatternConverterProcess.php" hash="7421d9b9b6a5f8f51c3a9a1c796911a5"/><file name="LoggerPatternConverterRelative.php" hash="24495b25867aac190135610061cd244d"/><file name="LoggerPatternConverterRequest.php" hash="67a484d44fd7ddc06a654995904e9653"/><file name="LoggerPatternConverterServer.php" hash="bef42f8b51bc220453e3f4b1e67e7402"/><file name="LoggerPatternConverterSession.php" hash="7cd6290d364837cd2ff4358c03022e98"/><file name="LoggerPatternConverterSessionID.php" hash="fc7b37aa3cb28fbb09862eb7edc6d042"/><file name="LoggerPatternConverterSuperglobal.php" hash="6b984fb3d26fb0186595370d0f066659"/><file name="LoggerPatternConverterThrowable.php" hash="4ca10f0f20408a30243ff589415634c9"/></dir><dir name="renderers"><file name="LoggerRenderer.php" hash="332819a947805d55c2aa546ced274f01"/><file name="LoggerRendererDefault.php" hash="4c4003cde8e0a74cc562060ca7bccf61"/><file name="LoggerRendererException.php" hash="4b2def2de9aa459bd321e826c02e31c2"/><file name="LoggerRendererMap.php" hash="b9aadee6f31f7cb38210653141b94fa6"/></dir><dir name="xml"><file name="log4php.dtd" hash="fb7e60edf02964352b7ddee1f26d8924"/></dir></dir></target><target name="magedesign"><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="factfinder"><file name="asn.xml" hash="05ee1b7d0d34d7e43de8c115aeaab69d"/><file name="campaigns.xml" hash="40a945b639f93c059f921b2d89664258"/><file name="core.xml" hash="feabe46178c34bfa4d340507d009969a"/><file name="suggest.xml" hash="2effcca680b3f5d4a36360ca51e73c0d"/><file name="tagcloud.xml" hash="08d741753a4cf7ea243d18d8319c7319"/><file name="tracking.xml" hash="2e0e057ef15d8d7767e67d7b93ef728b"/></dir></dir><dir name="template"><dir name="factfinder"><dir name="asn"><dir name="layer"><dir name="filter"><file name="slider.phtml" hash="2004f809f803e17d9739a7173958ceca"/></dir><file name="slider.phtml" hash="d48c9aace222c7525430b5235acd4026"/></dir></dir><dir name="campaigns"><file name="advisory.phtml" hash="3341ee58f81da41020f85c2145048b8b"/><file name="feedback.phtml" hash="4c1868f038a13bd2ca270b7d9a077452"/><file name="pushed.phtml" hash="b76b7c5b064ee6dc86ccc94a363bdb05"/></dir><dir name="core"><dir name="export"><file name="locked.phtml" hash="2a96171a144a2c358624793b2eb5ebe4"/><file name="nofile.phtml" hash="401cc7682371d1341195cfe3ed9c9fae"/></dir></dir><dir name="suggest"><file name="advancedsuggest.phtml" hash="23d418876c5781cacc5d7fdd13217149"/></dir><dir name="tracking"><file name="click.phtml" hash="923247b5ac7d74a56999a68aa6580dc9"/><file name="recommendation.phtml" hash="17eb76af0ea70e8c36e912e992cd1261"/></dir></dir></dir></dir></dir><dir name="rwd"><dir name="enterprise"><dir name="layout"><dir name="factfinder"><file name="suggest.xml" hash="9c1a761044cd33da5e028c92ce9abe4f"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="factfinder"><dir name="core"><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="attributes.phtml" hash="1bfc70db6bbc448a0f7eec006e7a23f7"/></dir></dir></dir></dir></dir></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="."><file name="factfinder.xml" hash="f87803fd5c96fc784baff992c2bce96b"/></dir><dir name="modules"><file name="FACTFinder_Asn.xml" hash="a003a8010c577c396c8e2ee5b1ea4417"/><file name="FACTFinder_Campaigns.xml" hash="ccd3080cf57535193a6fe2e6946640fd"/><file name="FACTFinder_Core.xml" hash="80f5142c2acf5ceeca0fd552ddb7ce4c"/><file name="FACTFinder_Recommendation.xml" hash="9742344545ee435a4dc87eb2bb80bf19"/><file name="FACTFinder_Suggest.xml" hash="882806b936029f0ef04d4719542ecea3"/><file name="FACTFinder_Tagcloud.xml" hash="62d3ccec2191e7dfd8225e02912891d2"/><file name="FACTFinder_Tracking.xml" hash="779b734bdcafabab072a1afd9d0bf7c4"/></dir></target><target name="mage"><dir name="shell"><file name="factfinder.php" hash="86667fac5a3532b607bb622f23bd67ad"/></dir></target><target name="mageweb"><dir name="js"><dir name="factfinder"><file name="jXHR.js" hash="a62424da9902b49a76659683121618d0"/><file name="suggest.js" hash="95e9a9ee7b9e7bed337da7e1eff874d6"/><file name="tracking.js" hash="b013800782aa36e6bf4b847a40a5b775"/></dir></dir></target><target name="mageskin"><dir name="frontend"><dir name="base"><dir name="default"><dir name="js"><dir name="factfinder_onetouchslider"><file name="234A0ACCECB3C19247FA8B7920453761.cache.js" hash="df488d926e6054769d4731148e707b58"/><file name="25E490B929D7CDBF44085E4E4D9D6F78.cache.js" hash="2a017b95cfbd8653a222660b60697419"/><file name="53ABFAE8983A4589B497F48695DB2A7C.cache.js" hash="b6b02347438384cc886b2509426826b5"/><file name="75B23D057185BAB61CFE100CE08C4D84.cache.js" hash="ec9c94e05e64372a9636ef03e688d451"/><file name="79DD9AE9135ADFDE204324DA7F1B1405.cache.png" hash="6ba720deee377e093c5f5b0423c152df"/><file name="9F0D0456482D7A7A901A2CD8F64EA019.cache.js" hash="dad64db53266865af02c620795c6ab13"/><file name="clear.cache.gif" hash="6d22e4f2d2057c6e8d6fab098e76e80f"/><file name="de.factfinder.asn.slider.OneTouchSlider.nocache.js" hash="f92d47fc9eb8cf8ff78173997f5a4a7a"/></dir></dir><dir name="css"><file name="factfinder_suggest.css" hash="03da9a06173f238e874284c34e58493b"/></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="FACTFinder_Suggest.csv" hash="3098dfae8ccf75366dfa093ce5c863f2"/></dir><dir name="en_US"><file name="FACTFinder_Suggest.csv" hash="2e9fd7bbc9407364430a7c281c94ec63"/></dir></target></contents>
|
21 |
<compatible/>
|
22 |
<dependencies><required><php><min>5.3.0</min><max>7.1.0</max></php></required></dependencies>
|
23 |
</package>
|
skin/frontend/base/default/css/factfinder_suggest.css
CHANGED
@@ -7,11 +7,7 @@
|
|
7 |
font-weight: bold;
|
8 |
}
|
9 |
|
10 |
-
.form-search .search-autocomplete.advanced-suggest
|
11 |
float:left;
|
12 |
-
margin-
|
13 |
-
margin-bottom: 3px;
|
14 |
-
margin-right: 5px;
|
15 |
-
width: 31px;
|
16 |
-
height: 31px;
|
17 |
}
|
7 |
font-weight: bold;
|
8 |
}
|
9 |
|
10 |
+
.form-search .search-autocomplete.advanced-suggest span.thumbnail {
|
11 |
float:left;
|
12 |
+
margin-right: .3em;
|
|
|
|
|
|
|
|
|
13 |
}
|