Simtech_Searchanise - Version 3.1.2

Version Notes

[*] Added support for multiple search forms on the store page.

[*] Removed restriction making the module's work unavailable on PHP 7.



[!] Fixed: The search results widget shows the hidden products.

[!] Fixed: The product prices were show excluding user groups settings in the search results widget.

[!] Fixed: The search result widget didn’t use https connection.

[!] Fixed: There were errors in PHP logs.

[!] Fixed: The fix to support product flat tables did now work properly in some stores.

Download this release

Release Info

Developer Simbirsk Technologies, Ltd.
Extension Simtech_Searchanise
Version 3.1.2
Comparing to
See all releases


Code changes from version 3.1.1 to 3.1.2

app/code/community/Simtech/Searchanise/Block/Jsinit.php CHANGED
@@ -18,9 +18,9 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
18
  {
19
  $html = '';
20
 
21
- $inputId = Mage::helper('searchanise/ApiSe')->getInputIdSearch();
22
- if (empty($inputId)) {
23
- $inputId = 'search';
24
  }
25
 
26
  //
@@ -32,8 +32,8 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
32
  try {
33
  Prototype && Prototype.Version && Event && Event.observe && Event.observe(window, 'load', function()
34
  {
35
- if ($$('input#{$inputId}').length) {
36
- $$('input#{$inputId}')[0].stopObserving('keydown');
37
  }
38
  });
39
  } catch (e) {}
@@ -53,15 +53,10 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
53
  return $html;
54
  }
55
 
56
- $union = 'Searchanise.AutoCmpParams.union = {};';
57
- $restrictBy = '';
58
-
59
  $seServiceUrl = Mage::helper('searchanise/ApiSe')->getServiceUrl();
60
  $searchWidgetsLink = Mage::helper('searchanise/ApiSe')->getSearchWidgetsLink(false);
61
 
62
- $union .= " Searchanise.AutoCmpParams.union.price = {};";
63
- $union .= " Searchanise.AutoCmpParams.union.price.min = '" . Mage::helper('searchanise/ApiSe')->getCurLabelForPricesUsergroup() . "';";
64
-
65
  $showOutOfStock = Mage::getStoreConfigFlag(Mage_CatalogInventory_Helper_Data::XML_PATH_SHOW_OUT_OF_STOCK);
66
  if ($showOutOfStock) {
67
  // nothing
@@ -78,10 +73,13 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
78
  Searchanise = {};
79
  Searchanise.host = '{$seServiceUrl}';
80
  Searchanise.api_key = '{$apiKey}';
81
- Searchanise.SearchInput = '#{$inputId}';
82
 
83
  Searchanise.AutoCmpParams = {};
84
- {$union}
 
 
 
85
  Searchanise.AutoCmpParams.restrictBy = {};
86
  Searchanise.AutoCmpParams.restrictBy.status = '1';
87
  Searchanise.AutoCmpParams.restrictBy.visibility = '3|4';
@@ -98,6 +96,13 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
98
  Searchanise.ResultsParams.facetBy.price = {};
99
  Searchanise.ResultsParams.facetBy.price.type = 'slider';
100
 
 
 
 
 
 
 
 
101
  Searchanise.options.PriceFormat = {
102
  decimals_separator: '" . addslashes($priceFormat['decimals_separator']) . "',
103
  thousands_separator: '" . addslashes($priceFormat['thousands_separator']) . "',
18
  {
19
  $html = '';
20
 
21
+ $searchInputSelector = Mage::helper('searchanise/ApiSe')->getSearchInputSelector();
22
+ if (empty($searchInputSelector)) {
23
+ $searchInputSelector = '#search';
24
  }
25
 
26
  //
32
  try {
33
  Prototype && Prototype.Version && Event && Event.observe && Event.observe(window, 'load', function()
34
  {
35
+ if ($$('{$searchInputSelector}').length) {
36
+ $$('{$searchInputSelector}')[0].stopObserving('keydown');
37
  }
38
  });
39
  } catch (e) {}
53
  return $html;
54
  }
55
 
 
 
 
56
  $seServiceUrl = Mage::helper('searchanise/ApiSe')->getServiceUrl();
57
  $searchWidgetsLink = Mage::helper('searchanise/ApiSe')->getSearchWidgetsLink(false);
58
 
59
+ $restrictBy = '';
 
 
60
  $showOutOfStock = Mage::getStoreConfigFlag(Mage_CatalogInventory_Helper_Data::XML_PATH_SHOW_OUT_OF_STOCK);
61
  if ($showOutOfStock) {
62
  // nothing
73
  Searchanise = {};
74
  Searchanise.host = '{$seServiceUrl}';
75
  Searchanise.api_key = '{$apiKey}';
76
+ Searchanise.SearchInput = '{$searchInputSelector}';
77
 
78
  Searchanise.AutoCmpParams = {};
79
+ Searchanise.AutoCmpParams.union = {};
80
+ Searchanise.AutoCmpParams.union.price = {};
81
+ Searchanise.AutoCmpParams.union.price.min = '" . Mage::helper('searchanise/ApiSe')->getCurLabelForPricesUsergroup() . "';
82
+
83
  Searchanise.AutoCmpParams.restrictBy = {};
84
  Searchanise.AutoCmpParams.restrictBy.status = '1';
85
  Searchanise.AutoCmpParams.restrictBy.visibility = '3|4';
96
  Searchanise.ResultsParams.facetBy.price = {};
97
  Searchanise.ResultsParams.facetBy.price.type = 'slider';
98
 
99
+ Searchanise.ResultsParams.union = {};
100
+ Searchanise.ResultsParams.union.price = {};
101
+ Searchanise.ResultsParams.union.price.min = '" . Mage::helper('searchanise/ApiSe')->getCurLabelForPricesUsergroup() . "';
102
+
103
+ Searchanise.ResultsParams.restrictBy = {};
104
+ Searchanise.ResultsParams.restrictBy.visibility = '3|4';
105
+
106
  Searchanise.options.PriceFormat = {
107
  decimals_separator: '" . addslashes($priceFormat['decimals_separator']) . "',
108
  thousands_separator: '" . addslashes($priceFormat['thousands_separator']) . "',
app/code/community/Simtech/Searchanise/Helper/ApiProducts.php CHANGED
@@ -986,6 +986,13 @@ class Simtech_Searchanise_Helper_ApiProducts extends Mage_Core_Helper_Data
986
 
987
  public static function getMinMaxProductId($store = null)
988
  {
 
 
 
 
 
 
 
989
  $startId = 0;
990
  $endId = 0;
991
 
@@ -1031,6 +1038,10 @@ class Simtech_Searchanise_Helper_ApiProducts extends Mage_Core_Helper_Data
1031
  $arrProducts = array();
1032
  // Need for get correct products.
1033
  if ($store) {
 
 
 
 
1034
  Mage::app()->setCurrentStore($store->getId());
1035
  } else {
1036
  Mage::app()->setCurrentStore(0);
986
 
987
  public static function getMinMaxProductId($store = null)
988
  {
989
+ if ($store) {
990
+ if (Mage::helper('catalog/product_flat')->isEnabled()) {
991
+ Mage::helper('searchanise/ApiProducts')->setIsGetProductsByItems(true);//workaround for get all attributes
992
+ Mage::getResourceModel('catalog/product_collection')->setStore($store->getId());//workaround for magento flat products table bug
993
+ }
994
+ }
995
+
996
  $startId = 0;
997
  $endId = 0;
998
 
1038
  $arrProducts = array();
1039
  // Need for get correct products.
1040
  if ($store) {
1041
+ if (Mage::helper('catalog/product_flat')->isEnabled()) {
1042
+ Mage::helper('searchanise/ApiProducts')->setIsGetProductsByItems(true);//workaround for get all attributes
1043
+ Mage::getResourceModel('catalog/product_collection')->setStore($store->getId());//workaround for magento flat products table bug
1044
+ }
1045
  Mage::app()->setCurrentStore($store->getId());
1046
  } else {
1047
  Mage::app()->setCurrentStore(0);
app/code/community/Simtech/Searchanise/Helper/ApiSe.php CHANGED
@@ -100,9 +100,9 @@ class Simtech_Searchanise_Helper_ApiSe
100
  return self::getSetting('object_async_enabled');
101
  }
102
 
103
- public static function getInputIdSearch()
104
  {
105
- return self::getSetting('input_id_search');
106
  }
107
 
108
  public static function getEnabledSearchaniseSearch()
@@ -683,7 +683,7 @@ class Simtech_Searchanise_Helper_ApiSe
683
  return true;
684
  }
685
 
686
- public static function httpRequest($method = Zend_Http_Client::POST, $url = '', $data = array(), $cookies = array(), $basicAuth = array(), $timeout = 0, $maxredirects = 5)
687
  {
688
  if (Mage::helper('searchanise')->checkDebug(true)) {
689
  Mage::helper('searchanise/ApiSe')->printR('httpRequest',
@@ -1511,10 +1511,10 @@ class Simtech_Searchanise_Helper_ApiSe
1511
  $schema = null;
1512
 
1513
  if ($data == Simtech_Searchanise_Model_Queue::DATA_CATEGORIES) {
1514
- $schema = Mage::helper('searchanise/ApiProducts')->getSchemaCategories();
1515
 
1516
  } elseif ($data == Simtech_Searchanise_Model_Queue::DATA_FACET_PRICES) {
1517
- $schema = Mage::helper('searchanise/ApiProducts')->getSchemaPrices();
1518
 
1519
  } elseif ($data == Simtech_Searchanise_Model_Queue::DATA_FACET_TAGS) {
1520
  $schema = Mage::helper('searchanise/ApiProducts')->getSchemaTags();
100
  return self::getSetting('object_async_enabled');
101
  }
102
 
103
+ public static function getSearchInputSelector()
104
  {
105
+ return self::getSetting('search_input_selector');
106
  }
107
 
108
  public static function getEnabledSearchaniseSearch()
683
  return true;
684
  }
685
 
686
+ public static function httpRequest($method = Zend_Http_Client::POST, $url = '', $data = array(), $cookies = array(), $basicAuth = array(), $timeout = 1, $maxredirects = 5)
687
  {
688
  if (Mage::helper('searchanise')->checkDebug(true)) {
689
  Mage::helper('searchanise/ApiSe')->printR('httpRequest',
1511
  $schema = null;
1512
 
1513
  if ($data == Simtech_Searchanise_Model_Queue::DATA_CATEGORIES) {
1514
+ $schema = Mage::helper('searchanise/ApiProducts')->getSchemaCategories($store);
1515
 
1516
  } elseif ($data == Simtech_Searchanise_Model_Queue::DATA_FACET_PRICES) {
1517
+ $schema = Mage::helper('searchanise/ApiProducts')->getSchemaPrices($store);
1518
 
1519
  } elseif ($data == Simtech_Searchanise_Model_Queue::DATA_FACET_TAGS) {
1520
  $schema = Mage::helper('searchanise/ApiProducts')->getSchemaTags();
app/code/community/Simtech/Searchanise/Helper/Data.php CHANGED
@@ -128,7 +128,7 @@ class Simtech_Searchanise_Helper_Data extends Mage_Core_Helper_Abstract
128
 
129
  public static function getResultsFormPath()
130
  {
131
- return Mage::getUrl() . 'searchanise/result';
132
  }
133
 
134
  protected function setDefaultSort(&$params, $type)
128
 
129
  public static function getResultsFormPath()
130
  {
131
+ return Mage::getUrl('', array('_secure' => Mage::app()->getStore()->isCurrentlySecure())) . 'searchanise/result';
132
  }
133
 
134
  protected function setDefaultSort(&$params, $type)
app/code/community/Simtech/Searchanise/Model/Resource/Fulltext/Collection.php CHANGED
@@ -154,4 +154,9 @@ class Simtech_Searchanise_Model_Resource_Fulltext_Collection extends Mage_Catalo
154
 
155
  return $this;
156
  }
 
 
 
 
 
157
  }
154
 
155
  return $this;
156
  }
157
+
158
+ public function setVisibility($visibility)
159
+ {
160
+ return true;
161
+ }
162
  }
app/code/community/Simtech/Searchanise/controllers/InfoController.php CHANGED
@@ -14,7 +14,8 @@
14
 
15
  class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Action
16
  {
17
- const RESYNC = 'resync';
 
18
  const OUTPUT = 'visual';
19
  const PROFILER = 'profiler';
20
  const STORE_ID = 'store_id';
@@ -70,6 +71,7 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
70
  }
71
  } else {
72
  $resync = $this->getRequest()->getParam(self::RESYNC);
 
73
  $profiler = $this->getRequest()->getParam(self::PROFILER);
74
  $storeId = $this->getRequest()->getParam(self::STORE_ID);
75
  $checkData = $this->getRequest()->getParam(self::CHECK_DATA);
@@ -177,7 +179,7 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
177
  $options['ajax_async_enabled'] = Mage::helper('searchanise/ApiSe')->checkAjaxAsync();
178
  $options['object_async_enabled'] = Mage::helper('searchanise/ApiSe')->checkObjectAsync();
179
 
180
- $options['input_id'] = Mage::helper('searchanise/ApiSe')->getInputIdSearch();
181
  $options['search_enabled'] = Mage::helper('searchanise/ApiSe')->getEnabledSearchaniseSearch();
182
 
183
  $options['use_full_feed'] = Mage::helper('searchanise/ApiSe')->getUseFullFeed();
@@ -197,51 +199,50 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
197
  }
198
  $options['memory_limit_after'] = ini_get('memory_limit');
199
 
200
- $models = array(
201
- 'catalog/layer_filter_category' => 'Simtech_Searchanise_Model_Layer_Filter_Category',
202
- 'catalog/layer_filter_price' => 'Simtech_Searchanise_Model_Layer_Filter_Price',
203
- 'catalog_resource/product_collection' => 'Simtech_Searchanise_Model_Resource_Product_Collection',
204
- 'catalog_resource/layer_filter_attribute' => 'Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute',
205
- 'catalog_resource/layer_filter_price' => 'Simtech_Searchanise_Model_Resource_Layer_Filter_Price',
206
- 'catalog_resource_eav_mysql4/layer_filter_attribute' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute',
207
- 'catalog_resource_eav_mysql4/layer_filter_price' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Price',
208
- 'catalog_resource_eav_mysql4/product_action' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Product_Action',
209
- 'catalogsearch/advanced' => 'Simtech_Searchanise_Model_Advanced',
210
- 'catalogsearch_resource/fulltext_collection' => 'Simtech_Searchanise_Model_Resource_Fulltext_Collection',
211
- 'catalogsearch_resource/advanced_collection' => 'Simtech_Searchanise_Model_Resource_Advanced_Collection',
212
- 'tag/tag_relation' => 'Simtech_Searchanise_Model_Tag_Relation',
213
- 'importexport/import_entity_product' => 'Simtech_Searchanise_Model_Import_Entity_Product',
214
- 'core_resource/store' => 'Simtech_Searchanise_Model_Resource_Store',
215
- 'core_mysql4/store' => 'Simtech_Searchanise_Model_Mysql4_Store',
216
- 'adminhtml/config_data' => 'Simtech_Searchanise_Model_Config_Data',
217
- 'adminhtml/layer_filter_category' => 'Simtech_Searchanise_Model_Layer_Filter_Category',
218
- );
219
-
220
- foreach($models as $patch => $needed) {
221
- $used = get_class(Mage::getModel($patch));
222
- if ($used != $needed) {
223
- $options['wrong_models'][$patch] = array(
224
- 'needed' => $needed,
225
- 'used' => $used,
226
- );
227
  }
228
- }
229
 
230
- $blocks = array(
231
- 'global/blocks/catalog/rewrite/product_list_toolbar' => 'Simtech_Searchanise_Block_Product_List_Toolbar',
232
- 'global/blocks/catalogsearch/rewrite/result' => 'Simtech_Searchanise_Block_Result',
233
- 'global/blocks/catalogsearch/rewrite/autocomplete' => 'Simtech_Searchanise_Block_Autocomplete',
234
- );
235
-
236
- foreach($blocks as $patch => $needed) {
237
- $used = Mage::getConfig()->getNode($patch)->__toString();
238
- if ($used != $needed) {
239
- $options['wrong_blocks'][$patch] = array(
240
- 'needed' => $needed,
241
- 'used' => $used,
242
- );
 
243
  }
244
- }
245
 
246
  if ($visual) {
247
  Mage::helper('searchanise/ApiSe')->printR($options);
@@ -297,4 +298,4 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
297
 
298
  return $out;
299
  }
300
- }
14
 
15
  class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Action
16
  {
17
+ const RESYNC = 'resync';
18
+ const MODULES = 'modules';
19
  const OUTPUT = 'visual';
20
  const PROFILER = 'profiler';
21
  const STORE_ID = 'store_id';
71
  }
72
  } else {
73
  $resync = $this->getRequest()->getParam(self::RESYNC);
74
+ $modules = $this->getRequest()->getParam(self::MODULES);
75
  $profiler = $this->getRequest()->getParam(self::PROFILER);
76
  $storeId = $this->getRequest()->getParam(self::STORE_ID);
77
  $checkData = $this->getRequest()->getParam(self::CHECK_DATA);
179
  $options['ajax_async_enabled'] = Mage::helper('searchanise/ApiSe')->checkAjaxAsync();
180
  $options['object_async_enabled'] = Mage::helper('searchanise/ApiSe')->checkObjectAsync();
181
 
182
+ $options['search_input_selector'] = Mage::helper('searchanise/ApiSe')->getSearchInputSelector();
183
  $options['search_enabled'] = Mage::helper('searchanise/ApiSe')->getEnabledSearchaniseSearch();
184
 
185
  $options['use_full_feed'] = Mage::helper('searchanise/ApiSe')->getUseFullFeed();
199
  }
200
  $options['memory_limit_after'] = ini_get('memory_limit');
201
 
202
+ if ($modules) {
203
+ $models = array(
204
+ 'catalog_resource/product_collection' => 'Simtech_Searchanise_Model_Resource_Product_Collection',
205
+ 'catalog_resource/layer_filter_attribute' => 'Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute',
206
+ 'catalog_resource/layer_filter_price' => 'Simtech_Searchanise_Model_Resource_Layer_Filter_Price',
207
+ 'catalog_resource_eav_mysql4/layer_filter_attribute' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute',
208
+ 'catalog_resource_eav_mysql4/layer_filter_price' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Price',
209
+ 'catalog_resource_eav_mysql4/product_action' => 'Simtech_Searchanise_Model_Resource_Eav_Mysql4_Product_Action',
210
+ 'catalogsearch/advanced' => 'Simtech_Searchanise_Model_Advanced',
211
+ 'catalogsearch_resource/fulltext_collection' => 'Simtech_Searchanise_Model_Resource_Fulltext_Collection',
212
+ 'catalogsearch_resource/advanced_collection' => 'Simtech_Searchanise_Model_Resource_Advanced_Collection',
213
+ 'tag/tag_relation' => 'Simtech_Searchanise_Model_Tag_Relation',
214
+ 'importexport/import_entity_product' => 'Simtech_Searchanise_Model_Import_Entity_Product',
215
+ 'core_resource/store' => 'Simtech_Searchanise_Model_Resource_Store',
216
+ 'core_mysql4/store' => 'Simtech_Searchanise_Model_Mysql4_Store',
217
+ 'adminhtml/config_data' => 'Simtech_Searchanise_Model_Config_Data',
218
+ );
219
+
220
+ foreach($models as $patch => $needed) {
221
+ $used = get_class(Mage::getModel($patch));
222
+ if ($used != $needed) {
223
+ $options['wrong_models'][$patch] = array(
224
+ 'needed' => $needed,
225
+ 'used' => $used,
226
+ );
227
+ }
 
228
  }
 
229
 
230
+ $blocks = array(
231
+ 'global/blocks/catalog/rewrite/product_list_toolbar' => 'Simtech_Searchanise_Block_Product_List_Toolbar',
232
+ 'global/blocks/catalogsearch/rewrite/result' => 'Simtech_Searchanise_Block_Result',
233
+ 'global/blocks/catalogsearch/rewrite/autocomplete' => 'Simtech_Searchanise_Block_Autocomplete',
234
+ );
235
+
236
+ foreach($blocks as $patch => $needed) {
237
+ $used = Mage::getConfig()->getNode($patch)->__toString();
238
+ if ($used != $needed) {
239
+ $options['wrong_blocks'][$patch] = array(
240
+ 'needed' => $needed,
241
+ 'used' => $used,
242
+ );
243
+ }
244
  }
245
+ }// if $modules
246
 
247
  if ($visual) {
248
  Mage::helper('searchanise/ApiSe')->printR($options);
298
 
299
  return $out;
300
  }
301
+ }
app/code/community/Simtech/Searchanise/etc/config.xml CHANGED
@@ -15,7 +15,7 @@
15
  <config>
16
  <modules>
17
  <Simtech_Searchanise>
18
- <version>3.1.1</version>
19
  </Simtech_Searchanise>
20
  </modules>
21
  <frontend>
@@ -587,7 +587,7 @@
587
  <ajax_async_enabled>0</ajax_async_enabled>
588
  <!-- default sync init method -->
589
  <object_async_enabled>1</object_async_enabled>
590
- <input_id_search>search</input_id_search>
591
  <enabled_searchanise_search>1</enabled_searchanise_search>
592
  <redirect_to_admin_after_install>1</redirect_to_admin_after_install>
593
  </config>
15
  <config>
16
  <modules>
17
  <Simtech_Searchanise>
18
+ <version>3.1.2</version>
19
  </Simtech_Searchanise>
20
  </modules>
21
  <frontend>
587
  <ajax_async_enabled>0</ajax_async_enabled>
588
  <!-- default sync init method -->
589
  <object_async_enabled>1</object_async_enabled>
590
+ <search_input_selector>#search,form input[name="q"]</search_input_selector>
591
  <enabled_searchanise_search>1</enabled_searchanise_search>
592
  <redirect_to_admin_after_install>1</redirect_to_admin_after_install>
593
  </config>
app/code/community/Simtech/Searchanise/etc/config_without_search.xml CHANGED
@@ -15,7 +15,7 @@
15
  <config>
16
  <modules>
17
  <Simtech_Searchanise>
18
- <version>3.1.1</version>
19
  </Simtech_Searchanise>
20
  </modules>
21
  <frontend>
@@ -586,7 +586,7 @@
586
  <ajax_async_enabled>0</ajax_async_enabled>
587
  <!-- default sync init method -->
588
  <object_async_enabled>1</object_async_enabled>
589
- <input_id_search>search</input_id_search>
590
  <enabled_searchanise_search>1</enabled_searchanise_search>
591
  <redirect_to_admin_after_install>1</redirect_to_admin_after_install>
592
  </config>
15
  <config>
16
  <modules>
17
  <Simtech_Searchanise>
18
+ <version>3.1.2</version>
19
  </Simtech_Searchanise>
20
  </modules>
21
  <frontend>
586
  <ajax_async_enabled>0</ajax_async_enabled>
587
  <!-- default sync init method -->
588
  <object_async_enabled>1</object_async_enabled>
589
+ <search_input_selector>#search,form input[name="q"]</search_input_selector>
590
  <enabled_searchanise_search>1</enabled_searchanise_search>
591
  <redirect_to_admin_after_install>1</redirect_to_admin_after_install>
592
  </config>
app/code/community/Simtech/Searchanise/etc/system.xml CHANGED
@@ -36,8 +36,8 @@
36
  <show_in_website>1</show_in_website>
37
  <show_in_store>1</show_in_store>
38
  <fields>
39
- <input_id_search translate="labe commentl">
40
- <label><![CDATA[Search input HTML DOM ID]]></label>
41
  <comment><![CDATA[Important: Edit only if your custom theme changes the default search input ID!]]></comment>
42
  <frontend_type>text</frontend_type>
43
  <validate></validate>
@@ -45,7 +45,7 @@
45
  <show_in_default>1</show_in_default>
46
  <show_in_website>1</show_in_website>
47
  <show_in_store>1</show_in_store>
48
- </input_id_search>
49
  <!-- Hided the "Sync Init Method" option -->
50
  <!--
51
  <type_async translate="label comment">
@@ -77,4 +77,4 @@
77
  </groups>
78
  </searchanise>
79
  </sections>
80
- </config>
36
  <show_in_website>1</show_in_website>
37
  <show_in_store>1</show_in_store>
38
  <fields>
39
+ <search_input_selector translate="labe commentl">
40
+ <label><![CDATA[Search input jQuery selector]]></label>
41
  <comment><![CDATA[Important: Edit only if your custom theme changes the default search input ID!]]></comment>
42
  <frontend_type>text</frontend_type>
43
  <validate></validate>
45
  <show_in_default>1</show_in_default>
46
  <show_in_website>1</show_in_website>
47
  <show_in_store>1</show_in_store>
48
+ </search_input_selector>
49
  <!-- Hided the "Sync Init Method" option -->
50
  <!--
51
  <type_async translate="label comment">
77
  </groups>
78
  </searchanise>
79
  </sections>
80
+ </config>
app/code/community/Simtech/Searchanise/sql/searchanise_setup/mysql4-upgrade-3.1.1-3.1.2.php ADDED
@@ -0,0 +1,40 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /***************************************************************************
3
+ * *
4
+ * (c) 2004 Vladimir V. Kalynyak, Alexey V. Vinokurov, Ilya M. Shalnev *
5
+ * *
6
+ * This is commercial software, only users who have purchased a valid *
7
+ * license and accept to the terms of the License Agreement can install *
8
+ * and use this program. *
9
+ * *
10
+ ****************************************************************************
11
+ * PLEASE READ THE FULL TEXT OF THE SOFTWARE LICENSE AGREEMENT IN THE *
12
+ * "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
13
+ ****************************************************************************/
14
+
15
+ $installer = $this;
16
+
17
+ $installer->startSetup();
18
+
19
+ $resource = Mage::getSingleton('core/resource');
20
+ $readConnection = $resource->getConnection('core_read');
21
+ $writeConnection = $resource->getConnection('core_write');
22
+
23
+ $table = $resource->getTableName('core_config_data');
24
+
25
+ $query = "SELECT * FROM $table WHERE path = 'searchanise/config/input_id_search'";
26
+ $results = $readConnection->fetchAll($query);
27
+
28
+ foreach ($results as $row) {
29
+ $writeConnection->query(
30
+ "
31
+ INSERT INTO $table (scope, scope_id, path, value) VALUES(
32
+ '{$row['scope']}', '{$row['scope_id']}', 'searchanise/config/search_input_selector', '#{$row['value']}'
33
+ )
34
+ "
35
+ );
36
+ }
37
+
38
+ $writeConnection->query("DELETE FROM $table WHERE path = 'searchanise/config/input_id_search'");
39
+
40
+ $installer->endSetup();
package.xml CHANGED
@@ -1,25 +1,27 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Simtech_Searchanise</name>
4
- <version>3.1.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://docs.searchanise.com/connector_addon/license_agreement.html">Commercial license: http://docs.searchanise.com/connector_addon/license_agreement.html</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Searchanise Connector Add-on allows you to easily integrate Searchanise rapid search service in your online store. The add-on provides both an admin panel and a customer area widgets.</summary>
10
- <description>Searchanise is a free SaaS solution providing fast and smart search for online stores. It provides rapid search results and instant search suggestions presented in a fancy and customizable widget.&#xD;
11
  &#xD;
12
  With the help of Searchanise Connector Add-on you will be able to connect your store to the service and start using the search widget in no time. Power up your store right now!</description>
13
- <notes>[+] Search results widget was added.&lt;br&gt;&#xD;
14
- [+] Notice about a new version of extension was added.&lt;br&gt;&#xD;
15
- [*] Compatibility with third-party addons was improved.&lt;br&gt;&#xD;
16
- [*] Indexation status check was improved.&lt;br&gt;&#xD;
17
- [*] Redundant product attributes are no longer collected.&lt;br&gt;&#xD;
18
- [!] Searching by a product title and description could show incorrect search results on the advanced search page. Fixed.&lt;br&gt;</notes>
 
 
19
  <authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
20
- <date>2016-02-14</date>
21
- <time>22:18:41</time>
22
- <contents><target name="magecommunity"><dir name="Simtech"><dir name="Searchanise"><dir name="Block"><file name="Async.php" hash="7fb3859416e0d468235082ca41c5a96b"/><file name="Autocomplete.php" hash="efc89ac3f897be3bc307fba6a36778f0"/><file name="Jsinit.php" hash="13ed56e4a27e2ee21bc37c3582136ada"/><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="5477041c73350c0f32fdaf5b7c6b99fc"/></dir></dir><file name="Result.php" hash="dec7b27ab9511c956680eb60eba9b95e"/><file name="Resultwidget.php" hash="9b3ec31ad83ca02ca79bbdfc785f8afe"/></dir><dir name="Helper"><file name="ApiCategories.php" hash="06a5d63372280ef0feaa833b23388a09"/><file name="ApiPages.php" hash="40b2c244bb969d3d1a3202e34059e14e"/><file name="ApiProducts.php" hash="359489a0e8590067eea99df8c6f989ab"/><file name="ApiSe.php" hash="225d3a577421658e8134b3b1b577b2ee"/><file name="Data.php" hash="c2ccf96081b5c799530ae69aab504d18"/></dir><dir name="Model"><file name="Advanced.php" hash="e0c92b53cec8fbbfdd79690612c7ee84"/><dir name="Config"><file name="Data.php" hash="ddc558d22208f0ebc1e4378c9d050022"/></dir><file name="Config.php" hash="00ca3c7955f3ff2283c636a2074b6f03"/><dir name="Import"><dir name="Entity"><file name="Product.php" hash="4997af528b36f0f576d1c01402e14b03"/></dir></dir><dir name="Mysql4"><dir name="Advanced"><file name="Collection.php" hash="dd8c6f3cbb0621a5a7320f3104e68da6"/></dir><dir name="Config"><file name="Collection.php" hash="470218c1eb3f1cc1ca0e6d0e93e1b097"/></dir><file name="Config.php" hash="c95dc8ecd7ab4f955b6eaf4710ab960e"/><dir name="Fulltext"><file name="Collection.php" hash="5646955503a90020f87cfd861ac07e73"/></dir><dir name="Product"><file name="Collection.php" hash="28b478eb328502ce03e389404d9f54b5"/></dir><dir name="Queue"><file name="Collection.php" hash="30ca0f8640bdc443deb94cd2e71010c8"/></dir><file name="Queue.php" hash="286351623e8f011a21519f8d9c3e3151"/><file name="Store.php" hash="0126a4291d7dad6641bf59abb0f64cc4"/></dir><file name="Observer.php" hash="0b48985221748df51e4f867ae6ef0285"/><file name="Queue.php" hash="71647dc365b09e5e00ad9e13cfc37a43"/><file name="Request.php" hash="02d5d46fdbd7923cbc407c40df1d68c0"/><dir name="Resource"><dir name="Advanced"><file name="Collection.php" hash="41256fb10dff7e97d0c9136dc0500bf3"/></dir><dir name="Eav"><dir name="Mysql4"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="05320757b9289edac4f15230cd06c0e1"/><file name="Price.php" hash="ed4e21a18c552e3a92b21ff6e8bc5d61"/></dir></dir><dir name="Product"><file name="Action.php" hash="006e3c8c775cf31a8b9c66fb934c9d2d"/></dir></dir></dir><dir name="Fulltext"><file name="Collection.php" hash="13ef26616fafb14e9b51db31c71e4462"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="206e81ee170a56fac499169e66ad782d"/><file name="Price.php" hash="57d56f6841c0e2b89c21947aa2a23e86"/></dir></dir><dir name="Product"><file name="Collection.php" hash="ad006af84576dab614a08beec5200964"/></dir><file name="Store.php" hash="6a337d4b6561aa96b96236d66cc9aa30"/></dir><file name="Searchanise.php" hash="a925b75ff5b088f447cc3369c33335a1"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Searchanise"><file name="TypeAsync.php" hash="11d1aa481094ccbeab365b1fed33440d"/></dir></dir></dir></dir><dir name="Tag"><file name="Relation.php" hash="598f81fd8b2ac77baf24211c2ed03e55"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="SearchaniseController.php" hash="b05fe6f1b3d318a7186ec60b15e0fb04"/></dir><file name="AsyncController.php" hash="1fcec63f99231fc260995ae98aaaf86f"/><file name="InfoController.php" hash="74f98b7e5521ca299dbfef65660f1c63"/><file name="ResultController.php" hash="260d0eec9bcb5d2048cf2f0c0040a1cc"/></dir><dir name="etc"><file name="config.xml" hash="0bd340396752f3d556d7593c8e920376"/><file name="config_without_search.xml" hash="e41234b3a935f94bdbf016f8dfe84663"/><file name="system.xml" hash="9d6e139bc5ba5c1bdc789bb8fab01d1c"/></dir><dir name="sql"><dir name="searchanise_setup"><file name="mysql4-install-0.1.0.php" hash="754324c8783e9cc24de86396e1587e73"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="searchanise"><file name="dashboard.phtml" hash="3925c38299c0b055e8aa0c1bc9e6a39e"/></dir></dir><dir name="layout"><file name="searchanise.xml" hash="68baa611d05db05f8816ea2a8260e961"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="searchanise.xml" hash="0e2795c2e3c5f5af5544bb8471d67037"/></dir><dir name="template"><dir name="searchanise"><file name="resultwidget.phtml" hash="f4cf9ce97294275b5ae9d8e2252be41b"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Simtech_Searchanise.xml" hash="04148681a6648bd370ab62140cbf2ad9"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Simtech_Searchanise.csv" hash="955cdb2011b7abf04227aae37db5bb0b"/></dir></target></contents>
23
  <compatible/>
24
- <dependencies><required><php><min>5.2.13</min><max>6.0.0</max></php></required></dependencies>
25
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Simtech_Searchanise</name>
4
+ <version>3.1.2</version>
5
  <stability>stable</stability>
6
  <license uri="http://docs.searchanise.com/connector_addon/license_agreement.html">Commercial license: http://docs.searchanise.com/connector_addon/license_agreement.html</license>
7
  <channel>community</channel>
8
  <extends/>
9
  <summary>Searchanise Connector Add-on allows you to easily integrate Searchanise rapid search service in your online store. The add-on provides both an admin panel and a customer area widgets.</summary>
10
+ <description>Searchanise is a SaaS solution providing fast and smart search for online stores. It provides rapid search results and instant search suggestions presented in a fancy and customizable widget.&#xD;
11
  &#xD;
12
  With the help of Searchanise Connector Add-on you will be able to connect your store to the service and start using the search widget in no time. Power up your store right now!</description>
13
+ <notes>[*] Added support for multiple search forms on the store page.&lt;br&gt;&#xD;
14
+ [*] Removed restriction making the module's work unavailable on PHP 7.&lt;br&gt;&#xD;
15
+ &lt;br&gt;&#xD;
16
+ [!] Fixed: The search results widget shows the hidden products.&lt;br&gt;&#xD;
17
+ [!] Fixed: The product prices were show excluding user groups settings in the search results widget.&lt;br&gt;&#xD;
18
+ [!] Fixed: The search result widget didn&#x2019;t use https connection.&lt;br&gt;&#xD;
19
+ [!] Fixed: There were errors in PHP logs.&lt;br&gt;&#xD;
20
+ [!] Fixed: The fix to support product flat tables did now work properly in some stores.&lt;br&gt;</notes>
21
  <authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
22
+ <date>2016-07-25</date>
23
+ <time>12:52:14</time>
24
+ <contents><target name="magecommunity"><dir name="Simtech"><dir name="Searchanise"><dir name="Block"><file name="Async.php" hash="7fb3859416e0d468235082ca41c5a96b"/><file name="Autocomplete.php" hash="efc89ac3f897be3bc307fba6a36778f0"/><file name="Jsinit.php" hash="4145ad4bcf1e7cec7ac8426e6ac06060"/><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="5477041c73350c0f32fdaf5b7c6b99fc"/></dir></dir><file name="Result.php" hash="dec7b27ab9511c956680eb60eba9b95e"/><file name="Resultwidget.php" hash="9b3ec31ad83ca02ca79bbdfc785f8afe"/></dir><dir name="Helper"><file name="ApiCategories.php" hash="06a5d63372280ef0feaa833b23388a09"/><file name="ApiPages.php" hash="40b2c244bb969d3d1a3202e34059e14e"/><file name="ApiProducts.php" hash="00d1f10ff0dbfe6d999c0ed4447ed93e"/><file name="ApiSe.php" hash="db9aeaf5b7dae7578cb79e2eb8ca612b"/><file name="Data.php" hash="5b0ef0e2a1d184eef83c0768176eea35"/></dir><dir name="Model"><file name="Advanced.php" hash="e0c92b53cec8fbbfdd79690612c7ee84"/><dir name="Config"><file name="Data.php" hash="ddc558d22208f0ebc1e4378c9d050022"/></dir><file name="Config.php" hash="00ca3c7955f3ff2283c636a2074b6f03"/><dir name="Import"><dir name="Entity"><file name="Product.php" hash="4997af528b36f0f576d1c01402e14b03"/></dir></dir><dir name="Mysql4"><dir name="Advanced"><file name="Collection.php" hash="dd8c6f3cbb0621a5a7320f3104e68da6"/></dir><dir name="Config"><file name="Collection.php" hash="470218c1eb3f1cc1ca0e6d0e93e1b097"/></dir><file name="Config.php" hash="c95dc8ecd7ab4f955b6eaf4710ab960e"/><dir name="Fulltext"><file name="Collection.php" hash="5646955503a90020f87cfd861ac07e73"/></dir><dir name="Product"><file name="Collection.php" hash="28b478eb328502ce03e389404d9f54b5"/></dir><dir name="Queue"><file name="Collection.php" hash="30ca0f8640bdc443deb94cd2e71010c8"/></dir><file name="Queue.php" hash="286351623e8f011a21519f8d9c3e3151"/><file name="Store.php" hash="0126a4291d7dad6641bf59abb0f64cc4"/></dir><file name="Observer.php" hash="0b48985221748df51e4f867ae6ef0285"/><file name="Queue.php" hash="71647dc365b09e5e00ad9e13cfc37a43"/><file name="Request.php" hash="02d5d46fdbd7923cbc407c40df1d68c0"/><dir name="Resource"><dir name="Advanced"><file name="Collection.php" hash="41256fb10dff7e97d0c9136dc0500bf3"/></dir><dir name="Eav"><dir name="Mysql4"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="05320757b9289edac4f15230cd06c0e1"/><file name="Price.php" hash="ed4e21a18c552e3a92b21ff6e8bc5d61"/></dir></dir><dir name="Product"><file name="Action.php" hash="006e3c8c775cf31a8b9c66fb934c9d2d"/></dir></dir></dir><dir name="Fulltext"><file name="Collection.php" hash="2e6b9d9d8823711cc4827efa459540f5"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="206e81ee170a56fac499169e66ad782d"/><file name="Price.php" hash="57d56f6841c0e2b89c21947aa2a23e86"/></dir></dir><dir name="Product"><file name="Collection.php" hash="ad006af84576dab614a08beec5200964"/></dir><file name="Store.php" hash="6a337d4b6561aa96b96236d66cc9aa30"/></dir><file name="Searchanise.php" hash="a925b75ff5b088f447cc3369c33335a1"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Searchanise"><file name="TypeAsync.php" hash="11d1aa481094ccbeab365b1fed33440d"/></dir></dir></dir></dir><dir name="Tag"><file name="Relation.php" hash="598f81fd8b2ac77baf24211c2ed03e55"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="SearchaniseController.php" hash="b05fe6f1b3d318a7186ec60b15e0fb04"/></dir><file name="AsyncController.php" hash="1fcec63f99231fc260995ae98aaaf86f"/><file name="InfoController.php" hash="0e95bce4aa17f8f09f1b45d6d09383e0"/><file name="ResultController.php" hash="260d0eec9bcb5d2048cf2f0c0040a1cc"/></dir><dir name="etc"><file name="config.xml" hash="5e00159c5e4e73e4c69723912ef57e11"/><file name="config_without_search.xml" hash="83cda4d2a9a1a06924a0b03b08c4ad7c"/><file name="system.xml" hash="d31290c3e229f68930b9ba8daba12719"/></dir><dir name="sql"><dir name="searchanise_setup"><file name="mysql4-install-0.1.0.php" hash="754324c8783e9cc24de86396e1587e73"/><file name="mysql4-upgrade-3.1.1-3.1.2.php" hash="e231089afcc5e6a0e3e75f754a80a6f7"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="searchanise"><file name="dashboard.phtml" hash="3925c38299c0b055e8aa0c1bc9e6a39e"/></dir></dir><dir name="layout"><file name="searchanise.xml" hash="68baa611d05db05f8816ea2a8260e961"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="searchanise.xml" hash="0e2795c2e3c5f5af5544bb8471d67037"/></dir><dir name="template"><dir name="searchanise"><file name="resultwidget.phtml" hash="f4cf9ce97294275b5ae9d8e2252be41b"/></dir></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Simtech_Searchanise.xml" hash="04148681a6648bd370ab62140cbf2ad9"/></dir></target><target name="magelocale"><dir name="en_US"><file name="Simtech_Searchanise.csv" hash="955cdb2011b7abf04227aae37db5bb0b"/></dir></target></contents>
25
  <compatible/>
26
+ <dependencies><required><php><min>5.2.13</min><max>10.0.0</max></php></required></dependencies>
27
  </package>