Version Notes
Searchanise extension for Magento v. 1.1.8 introduces Magento 1.8 support, important fixes and improverments.
Changelog:
[+] Magento 1.8 support added.
[!] Subnitted sorting attributes could be wrong. Fixed.
[!] The default sorting is relevenace-based.
[!] Usergroup-based prices could be wrong. Fixed.
[*] Internal attribute-based filtering disabled (could be buggy).
[!] The 'created_at' and 'updated_at' attributes are now submitted in a product feed.
[+] If tags were disabled, the initial sync could crash. Fix.
[~] Cron debug info is now stored to a log file.
Download this release
Release Info
Developer | Simbirsk Technologies, Ltd. |
Extension | Simtech_Searchanise |
Version | 1.1.8 |
Comparing to | |
See all releases |
Code changes from version 1.1.7 to 1.1.8
- app/code/community/Simtech/Searchanise/Helper/ApiSe.php +1 -1
- app/code/community/Simtech/Searchanise/Helper/ApiXML.php +62 -48
- app/code/community/Simtech/Searchanise/Helper/Data.php +11 -19
- app/code/community/Simtech/Searchanise/Model/LayerCatalogSearch.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Mysql4/Product/CollectionTag.php +3 -3
- app/code/community/Simtech/Searchanise/Model/Observer.php +2 -2
- app/code/community/Simtech/Searchanise/Model/Resource/Advanced/Collection.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Resource/Eav/Mysql4/Layer/Filter/Attribute.php +24 -2
- app/code/community/Simtech/Searchanise/Model/Resource/Eav/Mysql4/Layer/Filter/Price.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Resource/Fulltext/Collection.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Resource/Layer/Filter/Attribute.php +25 -3
- app/code/community/Simtech/Searchanise/Model/Resource/Layer/Filter/Price.php +2 -2
- app/code/community/Simtech/Searchanise/Model/Resource/Product/Collection.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Resource/Product/CollectionTag.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Resource/Store.php +1 -1
- app/code/community/Simtech/Searchanise/Model/Searchanise.php +1 -1
- app/code/community/Simtech/Searchanise/controllers/InfoController.php +10 -2
- app/code/community/Simtech/Searchanise/etc/config.xml +11 -11
- app/code/community/Simtech/Searchanise/etc/config_without_search.xml +11 -11
- app/code/community/Simtech/Searchanise/etc/system.xml +1 -1
- package.xml +16 -6
app/code/community/Simtech/Searchanise/Helper/ApiSe.php
CHANGED
@@ -753,7 +753,7 @@ class Simtech_Searchanise_Helper_ApiSe
|
|
753 |
$priceTo = $numberRange * $step;
|
754 |
}
|
755 |
} else {
|
756 |
-
// [v1.7]
|
757 |
$arrPrice = explode('-', $dataPrice);
|
758 |
if (is_array($arrPrice) && (count($arrPrice) >= 2)) {
|
759 |
$priceFrom = (int) reset($arrPrice);
|
753 |
$priceTo = $numberRange * $step;
|
754 |
}
|
755 |
} else {
|
756 |
+
// [v1.7] [v1.8]
|
757 |
$arrPrice = explode('-', $dataPrice);
|
758 |
if (is_array($arrPrice) && (count($arrPrice) >= 2)) {
|
759 |
$priceFrom = (int) reset($arrPrice);
|
app/code/community/Simtech/Searchanise/Helper/ApiXML.php
CHANGED
@@ -31,6 +31,8 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
31 |
const WEIGHT_TEXT_AREA_ATTRIBUTES = 40;
|
32 |
// </if_isSearchable>
|
33 |
|
|
|
|
|
34 |
public static function getStockItem($product, $store = null)
|
35 |
{
|
36 |
$stockItem = null;
|
@@ -45,21 +47,40 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
45 |
|
46 |
public static function getTagCollection($product, $store = null)
|
47 |
{
|
48 |
-
$tagCollection =
|
49 |
-
|
50 |
-
|
51 |
-
|
|
|
52 |
|
53 |
-
|
54 |
-
|
|
|
|
|
55 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
56 |
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
|
|
|
|
|
|
|
|
63 |
}
|
64 |
|
65 |
/**
|
@@ -242,6 +263,10 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
242 |
{
|
243 |
$minimalPrice = '';
|
244 |
|
|
|
|
|
|
|
|
|
245 |
if ($groupPrice == null) {
|
246 |
$minimalPrice = $product->getFinalPrice();
|
247 |
} else {
|
@@ -256,11 +281,11 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
256 |
if (version_compare(Mage::getVersion(), '1.6', '<')) {
|
257 |
$minimalPrice = $_priceModel->getPrices($product, 'min');
|
258 |
// [/1.5]
|
259 |
-
// [
|
260 |
} else {
|
261 |
$minimalPrice = $_priceModel->getTotalPrices($product, 'min', null, false);
|
262 |
}
|
263 |
-
// [/
|
264 |
$minimalPrice = self::getProductShowPrice($product, $minimalPrice);
|
265 |
}
|
266 |
|
@@ -335,47 +360,25 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
335 |
|
336 |
// <prices>
|
337 |
{
|
338 |
-
$defaultPrice = self::getProductMinimalPrice($product, $store, true);
|
339 |
-
if ($defaultPrice != '') {
|
340 |
-
$defaultPrice = round($defaultPrice, Mage::helper('searchanise/ApiSe')->getFloatPrecision());
|
341 |
-
}
|
342 |
-
|
343 |
$customerGroups = Mage::getModel('customer/group')->getCollection()->load();
|
344 |
-
// It is need for check run function getProductMinimalPrice for each customerGroup
|
345 |
-
$_groupPrices = $product->getData('group_price');
|
346 |
|
347 |
-
foreach ($customerGroups as $
|
|
|
|
|
348 |
$customerGroupId = $customerGroup->getId();
|
349 |
-
$currentGroupPrice = null;
|
350 |
-
$price = $defaultPrice;
|
351 |
-
|
352 |
-
if ($_groupPrices) {
|
353 |
-
foreach ($_groupPrices as $keyGroupPrice => $groupPrice) {
|
354 |
-
if ($groupPrice['cust_group'] == $customerGroupId) {
|
355 |
-
$currentGroupPrice = $groupPrice['price'];
|
356 |
-
unset($_groupPrices[$keyGroupPrice]);
|
357 |
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
}
|
362 |
-
|
363 |
-
// if CONFIGURABLE OR GROUPED OR BUNDLE - need because child product can have groupPrices
|
364 |
-
if (($product->getData('type_id') == Mage_Catalog_Model_Product_Type::TYPE_BUNDLE) ||
|
365 |
-
($product->isSuper()) ||
|
366 |
-
($currentGroupPrice != null)) {
|
367 |
-
$price = self::getProductMinimalPrice($product, $store, true, $customerGroupId, $currentGroupPrice);
|
368 |
-
if ($price != '') {
|
369 |
-
$price = round($price, Mage::helper('searchanise/ApiSe')->getFloatPrecision());
|
370 |
-
}
|
371 |
}
|
372 |
|
373 |
-
if ($
|
374 |
$entry .= '<cs:price>' . $price . '</cs:price>'. self::XML_END_LINE;
|
375 |
$defaultPrice = $price; // default price get for not logged user
|
376 |
}
|
377 |
$label_ = Mage::helper('searchanise/ApiSe')->getLabelForPricesUsergroup() . $customerGroup->getId();
|
378 |
$entry .= '<cs:attribute name="' . $label_ . '" type="float">' . $price . '</cs:attribute>' . self::XML_END_LINE;
|
|
|
379 |
}
|
380 |
}
|
381 |
// </prices>
|
@@ -496,6 +499,19 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
496 |
$entry .= '</cs:attribute>' . self::XML_END_LINE;
|
497 |
// </meta_information>
|
498 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
499 |
// <unused attributes>
|
500 |
// <system_attributes>
|
501 |
} elseif ($attributeCode == 'status') {
|
@@ -504,8 +520,6 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
504 |
} elseif ($attributeCode == 'required_options') {
|
505 |
} elseif ($attributeCode == 'custom_layout_update') {
|
506 |
} elseif ($attributeCode == 'tier_price') { // quantity discount
|
507 |
-
} elseif ($attributeCode == 'created_at') { // date
|
508 |
-
} elseif ($attributeCode == 'updated_at') { // date
|
509 |
} elseif ($attributeCode == 'image_label') {
|
510 |
} elseif ($attributeCode == 'small_image_label') {
|
511 |
} elseif ($attributeCode == 'thumbnail_label') {
|
@@ -650,9 +664,9 @@ class Simtech_Searchanise_Helper_ApiXML extends Mage_Core_Helper_Data
|
|
650 |
|
651 |
$tags = self::getTagCollection($product, $store);
|
652 |
|
653 |
-
if ($tags) {
|
654 |
foreach ($tags as $tag) {
|
655 |
-
if ($tag
|
656 |
$strTagIds .= '<value><![CDATA[' . $tag->getId() . ']]></value>';
|
657 |
$strTagNames .= '<value><![CDATA[' . $tag->getName() . ']]></value>';
|
658 |
}
|
31 |
const WEIGHT_TEXT_AREA_ATTRIBUTES = 40;
|
32 |
// </if_isSearchable>
|
33 |
|
34 |
+
protected static $flWithoutTags = false;
|
35 |
+
|
36 |
public static function getStockItem($product, $store = null)
|
37 |
{
|
38 |
$stockItem = null;
|
47 |
|
48 |
public static function getTagCollection($product, $store = null)
|
49 |
{
|
50 |
+
$tagCollection = null;
|
51 |
+
|
52 |
+
if (self::$flWithoutTags) {
|
53 |
+
return $tagCollection;
|
54 |
+
}
|
55 |
|
56 |
+
$tagModel = Mage::getModel('tag/tag');
|
57 |
+
|
58 |
+
if ($tagModel) {
|
59 |
+
$tagCollection = $tagModel->getResourceCollection();
|
60 |
}
|
61 |
+
// Check if tags don't work correctly.
|
62 |
+
if (!$tagCollection) {
|
63 |
+
self::$flWithoutTags = true;
|
64 |
+
|
65 |
+
} else {
|
66 |
+
$tagCollection = $tagCollection
|
67 |
+
->setFlag('relation', true)
|
68 |
+
->setActiveFilter();
|
69 |
+
|
70 |
+
if (!empty($store)) {
|
71 |
+
$tagCollection->addStoreFilter($store->getId(), true);
|
72 |
+
}
|
73 |
|
74 |
+
$tagCollection = $tagCollection
|
75 |
+
->addPopularity()
|
76 |
+
->addStatusFilter(Mage::getModel('tag/tag')->getApprovedStatus())
|
77 |
+
->addStoresVisibility()
|
78 |
+
->addProductFilter($product->getId())
|
79 |
+
->load();
|
80 |
+
}
|
81 |
+
|
82 |
+
|
83 |
+
return $tagCollection;
|
84 |
}
|
85 |
|
86 |
/**
|
263 |
{
|
264 |
$minimalPrice = '';
|
265 |
|
266 |
+
if ($customerGroupId != null) {
|
267 |
+
$product->setCustomerGroupId($customerGroupId);
|
268 |
+
}
|
269 |
+
|
270 |
if ($groupPrice == null) {
|
271 |
$minimalPrice = $product->getFinalPrice();
|
272 |
} else {
|
281 |
if (version_compare(Mage::getVersion(), '1.6', '<')) {
|
282 |
$minimalPrice = $_priceModel->getPrices($product, 'min');
|
283 |
// [/1.5]
|
284 |
+
// [v1.6] [v1.7] [v1.8]
|
285 |
} else {
|
286 |
$minimalPrice = $_priceModel->getTotalPrices($product, 'min', null, false);
|
287 |
}
|
288 |
+
// [/v1.6] [/v1.7] [/v1.8]
|
289 |
$minimalPrice = self::getProductShowPrice($product, $minimalPrice);
|
290 |
}
|
291 |
|
360 |
|
361 |
// <prices>
|
362 |
{
|
|
|
|
|
|
|
|
|
|
|
363 |
$customerGroups = Mage::getModel('customer/group')->getCollection()->load();
|
|
|
|
|
364 |
|
365 |
+
foreach ($customerGroups as $keyCustomerGroup => $customerGroup) {
|
366 |
+
// It is needed because the 'setCustomerGroupId' function works only once.
|
367 |
+
$productCurrentGroup = clone $product;
|
368 |
$customerGroupId = $customerGroup->getId();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
369 |
|
370 |
+
$price = self::getProductMinimalPrice($productCurrentGroup, $store, true, $customerGroupId);
|
371 |
+
if ($price != '') {
|
372 |
+
$price = round($price, Mage::helper('searchanise/ApiSe')->getFloatPrecision());
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
373 |
}
|
374 |
|
375 |
+
if ($customerGroupId == Mage_Customer_Model_Group::NOT_LOGGED_IN_ID) {
|
376 |
$entry .= '<cs:price>' . $price . '</cs:price>'. self::XML_END_LINE;
|
377 |
$defaultPrice = $price; // default price get for not logged user
|
378 |
}
|
379 |
$label_ = Mage::helper('searchanise/ApiSe')->getLabelForPricesUsergroup() . $customerGroup->getId();
|
380 |
$entry .= '<cs:attribute name="' . $label_ . '" type="float">' . $price . '</cs:attribute>' . self::XML_END_LINE;
|
381 |
+
unset($productCurrentGroup);
|
382 |
}
|
383 |
}
|
384 |
// </prices>
|
499 |
$entry .= '</cs:attribute>' . self::XML_END_LINE;
|
500 |
// </meta_information>
|
501 |
|
502 |
+
// <dates>
|
503 |
+
// It can be used for sort.
|
504 |
+
} elseif ($attributeCode == 'created_at' || $attributeCode == 'updated_at') {
|
505 |
+
// Fixme in the future
|
506 |
+
// may add check for used_for_sort_by
|
507 |
+
$dateTimestamp = Mage::getModel('core/date')->timestamp(strtotime($value));
|
508 |
+
$entry .= '<cs:attribute name="' . $attributeName .'" type="int" text_search="N">';
|
509 |
+
$entry .= $dateTimestamp;
|
510 |
+
$entry .= '</cs:attribute>' . self::XML_END_LINE;
|
511 |
+
// Fixme in the future
|
512 |
+
// Need add other date attributes ('look for' by type)
|
513 |
+
// </dates>
|
514 |
+
|
515 |
// <unused attributes>
|
516 |
// <system_attributes>
|
517 |
} elseif ($attributeCode == 'status') {
|
520 |
} elseif ($attributeCode == 'required_options') {
|
521 |
} elseif ($attributeCode == 'custom_layout_update') {
|
522 |
} elseif ($attributeCode == 'tier_price') { // quantity discount
|
|
|
|
|
523 |
} elseif ($attributeCode == 'image_label') {
|
524 |
} elseif ($attributeCode == 'small_image_label') {
|
525 |
} elseif ($attributeCode == 'thumbnail_label') {
|
664 |
|
665 |
$tags = self::getTagCollection($product, $store);
|
666 |
|
667 |
+
if ($tags && count($tags) > 0) {
|
668 |
foreach ($tags as $tag) {
|
669 |
+
if ($tag) {
|
670 |
$strTagIds .= '<value><![CDATA[' . $tag->getId() . ']]></value>';
|
671 |
$strTagNames .= '<value><![CDATA[' . $tag->getName() . ']]></value>';
|
672 |
}
|
app/code/community/Simtech/Searchanise/Helper/Data.php
CHANGED
@@ -262,12 +262,15 @@ class Simtech_Searchanise_Helper_Data extends Mage_Core_Helper_Abstract
|
|
262 |
if ($type == self::TEXT_FIND) {
|
263 |
unset($availableOrders['position']);
|
264 |
|
265 |
-
$availableOrders
|
266 |
-
|
267 |
-
|
268 |
-
|
|
|
|
|
269 |
|
270 |
$blockToolbar->setAvailableOrders($availableOrders);
|
|
|
271 |
} elseif ($type == self::TEXT_ADVANCED_FIND) {
|
272 |
unset($availableOrders['position']);
|
273 |
$blockToolbar->setAvailableOrders($availableOrders);
|
@@ -311,7 +314,10 @@ class Simtech_Searchanise_Helper_Data extends Mage_Core_Helper_Abstract
|
|
311 |
$params['sortOrder'] = $sortOrder;
|
312 |
}
|
313 |
}
|
314 |
-
|
|
|
|
|
|
|
315 |
//ADD FACETS
|
316 |
$arrAttributes = array();
|
317 |
$arrInputType = array(); // need for save type $arrAttributes
|
@@ -428,20 +434,6 @@ class Simtech_Searchanise_Helper_Data extends Mage_Core_Helper_Abstract
|
|
428 |
}
|
429 |
}
|
430 |
|
431 |
-
// need for other sort_by
|
432 |
-
if (!empty($arrAttributes)) {
|
433 |
-
if ($params['sortBy'] == 'price') {
|
434 |
-
// nothing
|
435 |
-
// defined in the '<cs:price>' field
|
436 |
-
|
437 |
-
} else {
|
438 |
-
$id = array_search($params['sortBy'], $arrAttributes);
|
439 |
-
if (!empty($id)) {
|
440 |
-
$params['sortBy'] = 'attribute_' . $id;
|
441 |
-
}
|
442 |
-
}
|
443 |
-
}
|
444 |
-
|
445 |
if (!Mage::helper('searchanise/ApiSe')->getUseNavigation()) {
|
446 |
if (empty($params['queryBy']) && (!isset($params['q']) || $params['q'] == '')) {
|
447 |
return;
|
262 |
if ($type == self::TEXT_FIND) {
|
263 |
unset($availableOrders['position']);
|
264 |
|
265 |
+
if (!isset($availableOrders['relevance'])) {
|
266 |
+
$availableOrders = array_merge(
|
267 |
+
array('relevance' => $controller->__('Relevance')),
|
268 |
+
$availableOrders
|
269 |
+
);
|
270 |
+
}
|
271 |
|
272 |
$blockToolbar->setAvailableOrders($availableOrders);
|
273 |
+
$blockToolbar->setDefaultOrder('relevance');
|
274 |
} elseif ($type == self::TEXT_ADVANCED_FIND) {
|
275 |
unset($availableOrders['position']);
|
276 |
$blockToolbar->setAvailableOrders($availableOrders);
|
314 |
$params['sortOrder'] = $sortOrder;
|
315 |
}
|
316 |
}
|
317 |
+
// Fixme in the future
|
318 |
+
// Need add check the 'sort By' parameter on the existence of Server.
|
319 |
+
// $params['sortBy']
|
320 |
+
|
321 |
//ADD FACETS
|
322 |
$arrAttributes = array();
|
323 |
$arrInputType = array(); // need for save type $arrAttributes
|
434 |
}
|
435 |
}
|
436 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
437 |
if (!Mage::helper('searchanise/ApiSe')->getUseNavigation()) {
|
438 |
if (empty($params['queryBy']) && (!isset($params['q']) || $params['q'] == '')) {
|
439 |
return;
|
app/code/community/Simtech/Searchanise/Model/LayerCatalogSearch.php
CHANGED
@@ -17,7 +17,7 @@ class Simtech_Searchanise_Model_LayerCatalogSearch extends Mage_CatalogSearch_Mo
|
|
17 |
/**
|
18 |
* Prepare product collection
|
19 |
*
|
20 |
-
* @param Mage_Catalog_Model_Resource_Product_Collection [
|
21 |
* @return Mage_Catalog_Model_Layer
|
22 |
*/
|
23 |
public function prepareProductCollection($collection)
|
17 |
/**
|
18 |
* Prepare product collection
|
19 |
*
|
20 |
+
* @param Mage_Catalog_Model_Resource_Product_Collection [v1.6] [v1.7] [v1.8], Mage_Catalog_Model_Mysql4_Product_Collection [v1.5] $collection
|
21 |
* @return Mage_Catalog_Model_Layer
|
22 |
*/
|
23 |
public function prepareProductCollection($collection)
|
app/code/community/Simtech/Searchanise/Model/Mysql4/Product/CollectionTag.php
CHANGED
@@ -18,7 +18,7 @@ class Simtech_Searchanise_Model_Mysql4_Product_CollectionTag extends Mage_Tag_Mo
|
|
18 |
/**
|
19 |
* Product Collection
|
20 |
*
|
21 |
-
* @var Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
22 |
*/
|
23 |
protected $_searchaniseCollection = null;
|
24 |
|
@@ -63,7 +63,7 @@ class Simtech_Searchanise_Model_Mysql4_Product_CollectionTag extends Mage_Tag_Mo
|
|
63 |
*
|
64 |
* @param string $attribute
|
65 |
* @param string $dir
|
66 |
-
* @return Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
67 |
*/
|
68 |
public function setOrder($attribute, $dir = 'desc')
|
69 |
{
|
@@ -75,7 +75,7 @@ class Simtech_Searchanise_Model_Mysql4_Product_CollectionTag extends Mage_Tag_Mo
|
|
75 |
*
|
76 |
* @param string $attribute
|
77 |
* @param string $dir
|
78 |
-
* @return Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
79 |
*/
|
80 |
public function setOrderParent($attribute, $dir = 'desc')
|
81 |
{
|
18 |
/**
|
19 |
* Product Collection
|
20 |
*
|
21 |
+
* @var Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7] [v1.8], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
22 |
*/
|
23 |
protected $_searchaniseCollection = null;
|
24 |
|
63 |
*
|
64 |
* @param string $attribute
|
65 |
* @param string $dir
|
66 |
+
* @return Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7] [v1.8], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
67 |
*/
|
68 |
public function setOrder($attribute, $dir = 'desc')
|
69 |
{
|
75 |
*
|
76 |
* @param string $attribute
|
77 |
* @param string $dir
|
78 |
+
* @return Mage_Catalog_Model_Resource_Collection [v1.6] [v1.7] [v1.8], Mage_Catalog_Model_Mysql4_Collection [v1.5]
|
79 |
*/
|
80 |
public function setOrderParent($attribute, $dir = 'desc')
|
81 |
{
|
app/code/community/Simtech/Searchanise/Model/Observer.php
CHANGED
@@ -35,8 +35,8 @@ class Simtech_Searchanise_Model_Observer
|
|
35 |
if ($cronAsyncEnabled) {
|
36 |
Mage::helper('searchanise/ApiSe')->log('cron is enabled', 'information');
|
37 |
$result = Mage::helper('searchanise/ApiSe')->async();
|
38 |
-
|
39 |
-
|
40 |
} else {
|
41 |
Mage::helper('searchanise/ApiSe')->log('cron is not enabled', 'information');
|
42 |
}
|
35 |
if ($cronAsyncEnabled) {
|
36 |
Mage::helper('searchanise/ApiSe')->log('cron is enabled', 'information');
|
37 |
$result = Mage::helper('searchanise/ApiSe')->async();
|
38 |
+
Mage::helper('searchanise/ApiSe')->log($result, 'information');
|
39 |
+
|
40 |
} else {
|
41 |
Mage::helper('searchanise/ApiSe')->log('cron is not enabled', 'information');
|
42 |
}
|
app/code/community/Simtech/Searchanise/Model/Resource/Advanced/Collection.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Advanced_Collection extends Mage_CatalogSearch_Model_Resource_Advanced_Collection
|
17 |
{
|
18 |
/**
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Advanced_Collection extends Mage_CatalogSearch_Model_Resource_Advanced_Collection
|
17 |
{
|
18 |
/**
|
app/code/community/Simtech/Searchanise/Model/Resource/Eav/Mysql4/Layer/Filter/Attribute.php
CHANGED
@@ -29,8 +29,7 @@ class Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute exten
|
|
29 |
|
30 |
$collection = $filter->getLayer()->getProductCollection();
|
31 |
|
32 |
-
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult()))
|
33 |
-
{
|
34 |
return parent::getCount($filter);
|
35 |
}
|
36 |
|
@@ -38,4 +37,27 @@ class Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute exten
|
|
38 |
->getSearchaniseRequest()
|
39 |
->getCountAttribute($filter);
|
40 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
29 |
|
30 |
$collection = $filter->getLayer()->getProductCollection();
|
31 |
|
32 |
+
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
|
|
33 |
return parent::getCount($filter);
|
34 |
}
|
35 |
|
37 |
->getSearchaniseRequest()
|
38 |
->getCountAttribute($filter);
|
39 |
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Apply attribute filter to product collection
|
43 |
+
*
|
44 |
+
* @param Mage_Catalog_Model_Layer_Filter_Attribute $filter
|
45 |
+
* @param int $value
|
46 |
+
* @return Mage_Catalog_Model_Resource_Eav_Mysql4_Layer_Filter_Attribute
|
47 |
+
*/
|
48 |
+
public function applyFilterToCollection($filter, $value)
|
49 |
+
{
|
50 |
+
if (!Mage::helper('searchanise/ApiSe')->checkSearchaniseResult(true)) {
|
51 |
+
return parent::applyFilterToCollection($filter, $value);
|
52 |
+
}
|
53 |
+
|
54 |
+
$collection = $filter->getLayer()->getProductCollection();
|
55 |
+
|
56 |
+
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
57 |
+
return parent::applyFilterToCollection($filter, $value);
|
58 |
+
}
|
59 |
+
// Disable internal attribute filter.
|
60 |
+
|
61 |
+
return $this;
|
62 |
+
}
|
63 |
}
|
app/code/community/Simtech/Searchanise/Model/Resource/Eav/Mysql4/Layer/Filter/Price.php
CHANGED
@@ -51,7 +51,7 @@ class Simtech_Searchanise_Model_Resource_Eav_Mysql4_Layer_Filter_Price extends M
|
|
51 |
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
52 |
return parent::applyFilterToCollection($filter, $range, $index);
|
53 |
}
|
54 |
-
//
|
55 |
|
56 |
return $this;
|
57 |
}
|
51 |
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
52 |
return parent::applyFilterToCollection($filter, $range, $index);
|
53 |
}
|
54 |
+
// Disable internal price filter.
|
55 |
|
56 |
return $this;
|
57 |
}
|
app/code/community/Simtech/Searchanise/Model/Resource/Fulltext/Collection.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Fulltext_Collection extends Mage_CatalogSearch_Model_Resource_Fulltext_Collection
|
17 |
{
|
18 |
/**
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Fulltext_Collection extends Mage_CatalogSearch_Model_Resource_Fulltext_Collection
|
17 |
{
|
18 |
/**
|
app/code/community/Simtech/Searchanise/Model/Resource/Layer/Filter/Attribute.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute extends Mage_Catalog_Model_Resource_Layer_Filter_Attribute
|
17 |
{
|
18 |
/**
|
@@ -29,8 +29,7 @@ class Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute extends Mage_Cat
|
|
29 |
|
30 |
$collection = $filter->getLayer()->getProductCollection();
|
31 |
|
32 |
-
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult()))
|
33 |
-
{
|
34 |
return parent::getCount($filter);
|
35 |
}
|
36 |
|
@@ -38,4 +37,27 @@ class Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute extends Mage_Cat
|
|
38 |
->getSearchaniseRequest()
|
39 |
->getCountAttribute($filter);
|
40 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
41 |
}
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Layer_Filter_Attribute extends Mage_Catalog_Model_Resource_Layer_Filter_Attribute
|
17 |
{
|
18 |
/**
|
29 |
|
30 |
$collection = $filter->getLayer()->getProductCollection();
|
31 |
|
32 |
+
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
|
|
33 |
return parent::getCount($filter);
|
34 |
}
|
35 |
|
37 |
->getSearchaniseRequest()
|
38 |
->getCountAttribute($filter);
|
39 |
}
|
40 |
+
|
41 |
+
/**
|
42 |
+
* Apply attribute filter to product collection
|
43 |
+
*
|
44 |
+
* @param Mage_Catalog_Model_Layer_Filter_Attribute $filter
|
45 |
+
* @param int $value
|
46 |
+
* @return Mage_Catalog_Model_Resource_Layer_Filter_Attribute
|
47 |
+
*/
|
48 |
+
public function applyFilterToCollection($filter, $value)
|
49 |
+
{
|
50 |
+
if (!Mage::helper('searchanise/ApiSe')->checkSearchaniseResult(true)) {
|
51 |
+
return parent::applyFilterToCollection($filter, $value);
|
52 |
+
}
|
53 |
+
|
54 |
+
$collection = $filter->getLayer()->getProductCollection();
|
55 |
+
|
56 |
+
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
57 |
+
return parent::applyFilterToCollection($filter, $value);
|
58 |
+
}
|
59 |
+
// Disable internal attribute filter.
|
60 |
+
|
61 |
+
return $this;
|
62 |
+
}
|
63 |
}
|
app/code/community/Simtech/Searchanise/Model/Resource/Layer/Filter/Price.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Layer_Filter_Price extends Mage_Catalog_Model_Resource_Layer_Filter_Price
|
17 |
{
|
18 |
public function getCount($filter, $range)
|
@@ -49,7 +49,7 @@ class Simtech_Searchanise_Model_Resource_Layer_Filter_Price extends Mage_Catalog
|
|
49 |
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
50 |
return parent::applyPriceRange($filter);
|
51 |
}
|
52 |
-
//
|
53 |
|
54 |
return $this;
|
55 |
}
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Layer_Filter_Price extends Mage_Catalog_Model_Resource_Layer_Filter_Price
|
17 |
{
|
18 |
public function getCount($filter, $range)
|
49 |
if ((!method_exists($collection, 'checkSearchaniseResult')) || (!$collection->checkSearchaniseResult())) {
|
50 |
return parent::applyPriceRange($filter);
|
51 |
}
|
52 |
+
// Disable internal price filter.
|
53 |
|
54 |
return $this;
|
55 |
}
|
app/code/community/Simtech/Searchanise/Model/Resource/Product/Collection.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Product_Collection extends Mage_Catalog_Model_Resource_Product_Collection
|
17 |
{
|
18 |
/**
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Product_Collection extends Mage_Catalog_Model_Resource_Product_Collection
|
17 |
{
|
18 |
/**
|
app/code/community/Simtech/Searchanise/Model/Resource/Product/CollectionTag.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [v1.6] [v1.7]
|
16 |
class Simtech_Searchanise_Model_Resource_Product_CollectionTag extends Mage_Tag_Model_Resource_Product_Collection
|
17 |
{
|
18 |
/**
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Product_CollectionTag extends Mage_Tag_Model_Resource_Product_Collection
|
17 |
{
|
18 |
/**
|
app/code/community/Simtech/Searchanise/Model/Resource/Store.php
CHANGED
@@ -12,7 +12,7 @@
|
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
-
// [
|
16 |
class Simtech_Searchanise_Model_Resource_Store extends Mage_Core_Model_Resource_Store
|
17 |
{
|
18 |
/**
|
12 |
* "copyright.txt" FILE PROVIDED WITH THIS DISTRIBUTION PACKAGE. *
|
13 |
****************************************************************************/
|
14 |
|
15 |
+
// [v1.6] [v1.7] [v1.8]
|
16 |
class Simtech_Searchanise_Model_Resource_Store extends Mage_Core_Model_Resource_Store
|
17 |
{
|
18 |
/**
|
app/code/community/Simtech/Searchanise/Model/Searchanise.php
CHANGED
@@ -17,7 +17,7 @@ class Simtech_Searchanise_Model_Searchanise extends Mage_Core_Model_Abstract
|
|
17 |
/**
|
18 |
* Mysql4_Product_Collection
|
19 |
*
|
20 |
-
* @var Mage_Catalog_Model_Resource_Product_Collection [v1.6] [v1.7], Mage_Catalog_Model_Mysql4_Product_Collection [v1.5]
|
21 |
*/
|
22 |
protected $_collection = null;
|
23 |
|
17 |
/**
|
18 |
* Mysql4_Product_Collection
|
19 |
*
|
20 |
+
* @var Mage_Catalog_Model_Resource_Product_Collection [v1.6] [v1.7] [v1.8], Mage_Catalog_Model_Mysql4_Product_Collection [v1.5]
|
21 |
*/
|
22 |
protected $_collection = null;
|
23 |
|
app/code/community/Simtech/Searchanise/controllers/InfoController.php
CHANGED
@@ -19,6 +19,7 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
|
|
19 |
const PROFILER = 'profiler';
|
20 |
const STORE_ID = 'store_id';
|
21 |
const CHECK_DATA = 'check_data';
|
|
|
22 |
const PRODUCT_ID = 'product_id';
|
23 |
const PRODUCT_IDS = 'product_ids';
|
24 |
const PARENT_PRIVATE_KEY = 'parent_private_key';
|
@@ -48,6 +49,7 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
|
|
48 |
|
49 |
public function indexAction()
|
50 |
{
|
|
|
51 |
$parentPrivateKey = $this->getRequest()->getParam(self::PARENT_PRIVATE_KEY);
|
52 |
|
53 |
if ((empty($parentPrivateKey)) ||
|
@@ -64,15 +66,21 @@ class Simtech_Searchanise_InfoController extends Mage_Core_Controller_Front_Acti
|
|
64 |
echo Mage::helper('core')->jsonEncode($options);
|
65 |
}
|
66 |
} else {
|
67 |
-
@ini_set('display_errors', 1);
|
68 |
$resync = $this->getRequest()->getParam(self::RESYNC);
|
69 |
-
$visual = $this->getRequest()->getParam(self::OUTPUT);
|
70 |
$profiler = $this->getRequest()->getParam(self::PROFILER);
|
71 |
$storeId = $this->getRequest()->getParam(self::STORE_ID);
|
72 |
$checkData = $this->getRequest()->getParam(self::CHECK_DATA);
|
|
|
73 |
$productId = $this->getRequest()->getParam(self::PRODUCT_ID);
|
74 |
$productIds = $this->getRequest()->getParam(self::PRODUCT_IDS);
|
75 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
76 |
if ($productId) {
|
77 |
$productIds = array($productId);
|
78 |
} elseif ($productIds) {
|
19 |
const PROFILER = 'profiler';
|
20 |
const STORE_ID = 'store_id';
|
21 |
const CHECK_DATA = 'check_data';
|
22 |
+
const DISPLAY_ERRORS = 'display_errors';
|
23 |
const PRODUCT_ID = 'product_id';
|
24 |
const PRODUCT_IDS = 'product_ids';
|
25 |
const PARENT_PRIVATE_KEY = 'parent_private_key';
|
49 |
|
50 |
public function indexAction()
|
51 |
{
|
52 |
+
$visual = $this->getRequest()->getParam(self::OUTPUT);
|
53 |
$parentPrivateKey = $this->getRequest()->getParam(self::PARENT_PRIVATE_KEY);
|
54 |
|
55 |
if ((empty($parentPrivateKey)) ||
|
66 |
echo Mage::helper('core')->jsonEncode($options);
|
67 |
}
|
68 |
} else {
|
|
|
69 |
$resync = $this->getRequest()->getParam(self::RESYNC);
|
|
|
70 |
$profiler = $this->getRequest()->getParam(self::PROFILER);
|
71 |
$storeId = $this->getRequest()->getParam(self::STORE_ID);
|
72 |
$checkData = $this->getRequest()->getParam(self::CHECK_DATA);
|
73 |
+
$displayErrors = $this->getRequest()->getParam(self::DISPLAY_ERRORS);
|
74 |
$productId = $this->getRequest()->getParam(self::PRODUCT_ID);
|
75 |
$productIds = $this->getRequest()->getParam(self::PRODUCT_IDS);
|
76 |
|
77 |
+
if ($displayErrors) {
|
78 |
+
@error_reporting (E_ALL);
|
79 |
+
@ini_set('display_errors', 1);
|
80 |
+
} else {
|
81 |
+
@ini_set('display_errors', 0);
|
82 |
+
}
|
83 |
+
|
84 |
if ($productId) {
|
85 |
$productIds = array($productId);
|
86 |
} elseif ($productIds) {
|
app/code/community/Simtech/Searchanise/etc/config.xml
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
-
<version>1.1.
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
@@ -157,7 +157,7 @@
|
|
157 |
|
158 |
<!-- <OVERRIDE CATALOG RESOURCE> -->
|
159 |
<!-- [disabled_searchanise_search] -->
|
160 |
-
<!-- [v1.6] [v1.7] -->
|
161 |
<catalog_resource>
|
162 |
<rewrite>
|
163 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_Collection</product_collection>
|
@@ -165,7 +165,7 @@
|
|
165 |
<layer_filter_price>Simtech_Searchanise_Model_Resource_Layer_Filter_Price</layer_filter_price>
|
166 |
</rewrite>
|
167 |
</catalog_resource>
|
168 |
-
<!-- [/v1.6] [/v1.7] -->
|
169 |
<!-- [v1.5] -->
|
170 |
<catalog_resource_eav_mysql4>
|
171 |
<rewrite>
|
@@ -197,14 +197,14 @@
|
|
197 |
|
198 |
<!-- <OVERRIDE CATALOGSEARCH RESOURCE> -->
|
199 |
<!-- [disabled_searchanise_search] -->
|
200 |
-
<!-- [v1.6] [v1.7] -->
|
201 |
<catalogsearch_resource>
|
202 |
<rewrite>
|
203 |
<fulltext_collection>Simtech_Searchanise_Model_Resource_Fulltext_Collection</fulltext_collection>
|
204 |
<advanced_collection>Simtech_Searchanise_Model_Resource_Advanced_Collection</advanced_collection>
|
205 |
</rewrite>
|
206 |
</catalogsearch_resource>
|
207 |
-
<!-- [/v1.6] [/v1.7] -->
|
208 |
<!-- [v1.5] -->
|
209 |
<catalogsearch_mysql4>
|
210 |
<rewrite>
|
@@ -225,13 +225,13 @@
|
|
225 |
<!-- END -->
|
226 |
|
227 |
<!-- OVERRIDE TAG RESOURCE -->
|
228 |
-
<!-- [v1.6] [v1.7] -->
|
229 |
<tag_resource>
|
230 |
<rewrite>
|
231 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_CollectionTag</product_collection>
|
232 |
</rewrite>
|
233 |
</tag_resource>
|
234 |
-
<!-- [/v1.6] [/v1.7] -->
|
235 |
<!-- [v1.5]-->
|
236 |
<tag_mysql4>
|
237 |
<rewrite>
|
@@ -249,13 +249,13 @@
|
|
249 |
</importexport>
|
250 |
<!-- END -->
|
251 |
<!-- <OVERRIDE CORE RESOURCE> -->
|
252 |
-
<!-- [v1.6] [v1.7] -->
|
253 |
<core_resource>
|
254 |
<rewrite>
|
255 |
<store>Simtech_Searchanise_Model_Resource_Store</store>
|
256 |
</rewrite>
|
257 |
</core_resource>
|
258 |
-
<!-- [/v1.6] [/v1.7] -->
|
259 |
<!-- [v1.5] -->
|
260 |
<core_mysql4>
|
261 |
<rewrite>
|
@@ -351,7 +351,7 @@
|
|
351 |
</rating>
|
352 |
</observers>
|
353 |
</catalog_product_delete_before>
|
354 |
-
<!-- [v1.6] [v1.7] -->
|
355 |
<catalog_product_attribute_update_before>
|
356 |
<observers>
|
357 |
<rating>
|
@@ -360,7 +360,7 @@
|
|
360 |
</rating>
|
361 |
</observers>
|
362 |
</catalog_product_attribute_update_before>
|
363 |
-
<!-- [/v1.6] [/v1.7] -->
|
364 |
<!-- [v1.5] -->
|
365 |
<searchanise_product_attribute_update_before>
|
366 |
<observers>
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
+
<version>1.1.8</version>
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
157 |
|
158 |
<!-- <OVERRIDE CATALOG RESOURCE> -->
|
159 |
<!-- [disabled_searchanise_search] -->
|
160 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
161 |
<catalog_resource>
|
162 |
<rewrite>
|
163 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_Collection</product_collection>
|
165 |
<layer_filter_price>Simtech_Searchanise_Model_Resource_Layer_Filter_Price</layer_filter_price>
|
166 |
</rewrite>
|
167 |
</catalog_resource>
|
168 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
169 |
<!-- [v1.5] -->
|
170 |
<catalog_resource_eav_mysql4>
|
171 |
<rewrite>
|
197 |
|
198 |
<!-- <OVERRIDE CATALOGSEARCH RESOURCE> -->
|
199 |
<!-- [disabled_searchanise_search] -->
|
200 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
201 |
<catalogsearch_resource>
|
202 |
<rewrite>
|
203 |
<fulltext_collection>Simtech_Searchanise_Model_Resource_Fulltext_Collection</fulltext_collection>
|
204 |
<advanced_collection>Simtech_Searchanise_Model_Resource_Advanced_Collection</advanced_collection>
|
205 |
</rewrite>
|
206 |
</catalogsearch_resource>
|
207 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
208 |
<!-- [v1.5] -->
|
209 |
<catalogsearch_mysql4>
|
210 |
<rewrite>
|
225 |
<!-- END -->
|
226 |
|
227 |
<!-- OVERRIDE TAG RESOURCE -->
|
228 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
229 |
<tag_resource>
|
230 |
<rewrite>
|
231 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_CollectionTag</product_collection>
|
232 |
</rewrite>
|
233 |
</tag_resource>
|
234 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
235 |
<!-- [v1.5]-->
|
236 |
<tag_mysql4>
|
237 |
<rewrite>
|
249 |
</importexport>
|
250 |
<!-- END -->
|
251 |
<!-- <OVERRIDE CORE RESOURCE> -->
|
252 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
253 |
<core_resource>
|
254 |
<rewrite>
|
255 |
<store>Simtech_Searchanise_Model_Resource_Store</store>
|
256 |
</rewrite>
|
257 |
</core_resource>
|
258 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
259 |
<!-- [v1.5] -->
|
260 |
<core_mysql4>
|
261 |
<rewrite>
|
351 |
</rating>
|
352 |
</observers>
|
353 |
</catalog_product_delete_before>
|
354 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
355 |
<catalog_product_attribute_update_before>
|
356 |
<observers>
|
357 |
<rating>
|
360 |
</rating>
|
361 |
</observers>
|
362 |
</catalog_product_attribute_update_before>
|
363 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
364 |
<!-- [v1.5] -->
|
365 |
<searchanise_product_attribute_update_before>
|
366 |
<observers>
|
app/code/community/Simtech/Searchanise/etc/config_without_search.xml
CHANGED
@@ -15,7 +15,7 @@
|
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
-
<version>1.1.
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
@@ -157,7 +157,7 @@
|
|
157 |
|
158 |
<!-- <OVERRIDE CATALOG RESOURCE> -->
|
159 |
<!-- [disabled_searchanise_search] -->
|
160 |
-
<!-- [v1.6] [v1.7] -->
|
161 |
<!-- <catalog_resource>
|
162 |
<rewrite>
|
163 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_Collection</product_collection>
|
@@ -165,7 +165,7 @@
|
|
165 |
<layer_filter_price>Simtech_Searchanise_Model_Resource_Layer_Filter_Price</layer_filter_price>
|
166 |
</rewrite>
|
167 |
</catalog_resource> -->
|
168 |
-
<!-- [/v1.6] [/v1.7] -->
|
169 |
<!-- [v1.5] -->
|
170 |
<!-- <catalog_resource_eav_mysql4>
|
171 |
<rewrite>
|
@@ -197,14 +197,14 @@
|
|
197 |
|
198 |
<!-- <OVERRIDE CATALOGSEARCH RESOURCE> -->
|
199 |
<!-- [disabled_searchanise_search] -->
|
200 |
-
<!-- [v1.6] [v1.7] -->
|
201 |
<!-- <catalogsearch_resource>
|
202 |
<rewrite>
|
203 |
<fulltext_collection>Simtech_Searchanise_Model_Resource_Fulltext_Collection</fulltext_collection>
|
204 |
<advanced_collection>Simtech_Searchanise_Model_Resource_Advanced_Collection</advanced_collection>
|
205 |
</rewrite>
|
206 |
</catalogsearch_resource> -->
|
207 |
-
<!-- [/v1.6] [/v1.7] -->
|
208 |
<!-- [v1.5] -->
|
209 |
<!-- <catalogsearch_mysql4>
|
210 |
<rewrite>
|
@@ -225,13 +225,13 @@
|
|
225 |
<!-- END -->
|
226 |
|
227 |
<!-- OVERRIDE TAG RESOURCE -->
|
228 |
-
<!-- [v1.6] [v1.7] -->
|
229 |
<tag_resource>
|
230 |
<rewrite>
|
231 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_CollectionTag</product_collection>
|
232 |
</rewrite>
|
233 |
</tag_resource>
|
234 |
-
<!-- [/v1.6] [/v1.7] -->
|
235 |
<!-- [v1.5]-->
|
236 |
<tag_mysql4>
|
237 |
<rewrite>
|
@@ -249,13 +249,13 @@
|
|
249 |
</importexport>
|
250 |
<!-- END -->
|
251 |
<!-- <OVERRIDE CORE RESOURCE> -->
|
252 |
-
<!-- [v1.6] [v1.7] -->
|
253 |
<core_resource>
|
254 |
<rewrite>
|
255 |
<store>Simtech_Searchanise_Model_Resource_Store</store>
|
256 |
</rewrite>
|
257 |
</core_resource>
|
258 |
-
<!-- [/v1.6] [/v1.7] -->
|
259 |
<!-- [v1.5] -->
|
260 |
<core_mysql4>
|
261 |
<rewrite>
|
@@ -351,7 +351,7 @@
|
|
351 |
</rating>
|
352 |
</observers>
|
353 |
</catalog_product_delete_before>
|
354 |
-
<!-- [v1.6] [v1.7] -->
|
355 |
<catalog_product_attribute_update_before>
|
356 |
<observers>
|
357 |
<rating>
|
@@ -360,7 +360,7 @@
|
|
360 |
</rating>
|
361 |
</observers>
|
362 |
</catalog_product_attribute_update_before>
|
363 |
-
<!-- [/v1.6] [/v1.7] -->
|
364 |
<!-- [v1.5] -->
|
365 |
<searchanise_product_attribute_update_before>
|
366 |
<observers>
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
+
<version>1.1.8</version>
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
157 |
|
158 |
<!-- <OVERRIDE CATALOG RESOURCE> -->
|
159 |
<!-- [disabled_searchanise_search] -->
|
160 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
161 |
<!-- <catalog_resource>
|
162 |
<rewrite>
|
163 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_Collection</product_collection>
|
165 |
<layer_filter_price>Simtech_Searchanise_Model_Resource_Layer_Filter_Price</layer_filter_price>
|
166 |
</rewrite>
|
167 |
</catalog_resource> -->
|
168 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
169 |
<!-- [v1.5] -->
|
170 |
<!-- <catalog_resource_eav_mysql4>
|
171 |
<rewrite>
|
197 |
|
198 |
<!-- <OVERRIDE CATALOGSEARCH RESOURCE> -->
|
199 |
<!-- [disabled_searchanise_search] -->
|
200 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
201 |
<!-- <catalogsearch_resource>
|
202 |
<rewrite>
|
203 |
<fulltext_collection>Simtech_Searchanise_Model_Resource_Fulltext_Collection</fulltext_collection>
|
204 |
<advanced_collection>Simtech_Searchanise_Model_Resource_Advanced_Collection</advanced_collection>
|
205 |
</rewrite>
|
206 |
</catalogsearch_resource> -->
|
207 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
208 |
<!-- [v1.5] -->
|
209 |
<!-- <catalogsearch_mysql4>
|
210 |
<rewrite>
|
225 |
<!-- END -->
|
226 |
|
227 |
<!-- OVERRIDE TAG RESOURCE -->
|
228 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
229 |
<tag_resource>
|
230 |
<rewrite>
|
231 |
<product_collection>Simtech_Searchanise_Model_Resource_Product_CollectionTag</product_collection>
|
232 |
</rewrite>
|
233 |
</tag_resource>
|
234 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
235 |
<!-- [v1.5]-->
|
236 |
<tag_mysql4>
|
237 |
<rewrite>
|
249 |
</importexport>
|
250 |
<!-- END -->
|
251 |
<!-- <OVERRIDE CORE RESOURCE> -->
|
252 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
253 |
<core_resource>
|
254 |
<rewrite>
|
255 |
<store>Simtech_Searchanise_Model_Resource_Store</store>
|
256 |
</rewrite>
|
257 |
</core_resource>
|
258 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
259 |
<!-- [v1.5] -->
|
260 |
<core_mysql4>
|
261 |
<rewrite>
|
351 |
</rating>
|
352 |
</observers>
|
353 |
</catalog_product_delete_before>
|
354 |
+
<!-- [v1.6] [v1.7] [v1.8] -->
|
355 |
<catalog_product_attribute_update_before>
|
356 |
<observers>
|
357 |
<rating>
|
360 |
</rating>
|
361 |
</observers>
|
362 |
</catalog_product_attribute_update_before>
|
363 |
+
<!-- [/v1.6] [/v1.7] [/v1.8] -->
|
364 |
<!-- [v1.5] -->
|
365 |
<searchanise_product_attribute_update_before>
|
366 |
<observers>
|
app/code/community/Simtech/Searchanise/etc/system.xml
CHANGED
@@ -63,7 +63,7 @@
|
|
63 |
</type_async>
|
64 |
-->
|
65 |
<enabled_searchanise_search translate="labe comment">
|
66 |
-
<label><![CDATA[Use Searchanise for
|
67 |
<comment><![CDATA[Disable in case of invalid search operation.<br>The instant search widget will <strong>remain active</strong>.]]></comment>
|
68 |
<frontend_type>select</frontend_type>
|
69 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
63 |
</type_async>
|
64 |
-->
|
65 |
<enabled_searchanise_search translate="labe comment">
|
66 |
+
<label><![CDATA[Use Searchanise for full-text search]]></label>
|
67 |
<comment><![CDATA[Disable in case of invalid search operation.<br>The instant search widget will <strong>remain active</strong>.]]></comment>
|
68 |
<frontend_type>select</frontend_type>
|
69 |
<source_model>adminhtml/system_config_source_yesno</source_model>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Simtech_Searchanise</name>
|
4 |
-
<version>1.1.
|
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>
|
@@ -10,12 +10,22 @@
|
|
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.
|
11 |

|
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>
|
14 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
15 |
<authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
|
16 |
-
<date>2013-
|
17 |
-
<time>
|
18 |
-
<contents><target name="magecommunity"><dir name="Simtech"><dir name="Searchanise"><dir name="Block"><file name="Async.php" hash="bc97c98da15f5abbc1d8922ca477dc6d"/><file name="Autocomplete.php" hash="efc89ac3f897be3bc307fba6a36778f0"/><file name="Jsinit.php" hash="0cf9770f73064f571420283a0e4bdb8d"/><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="73c06dbe5c5ca8778bb2488ed2b5b5ed"/></dir><file name="Result.php" hash="4e767e273ee21a38332ac226af878291"/></dir><file name="Result.php" hash="dec7b27ab9511c956680eb60eba9b95e"/></dir><dir name="Helper"><file name="ApiSe.php" hash="
|
19 |
<compatible/>
|
20 |
<dependencies><required><php><min>5.2.13</min><max>6.0.0</max></php></required></dependencies>
|
21 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Simtech_Searchanise</name>
|
4 |
+
<version>1.1.8</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>
|
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.
|
11 |

|
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>Searchanise extension for Magento v. 1.1.8 introduces Magento 1.8 support, important fixes and improverments.<br />
|
14 |
+
<br />
|
15 |
+
Changelog:<br />
|
16 |
+
<br />
|
17 |
+
[+] Magento 1.8 support added.<br />
|
18 |
+
[!] Subnitted sorting attributes could be wrong. Fixed.<br />
|
19 |
+
[!] The default sorting is relevenace-based.<br />
|
20 |
+
[!] Usergroup-based prices could be wrong. Fixed.<br />
|
21 |
+
[*] Internal attribute-based filtering disabled (could be buggy).<br />
|
22 |
+
[!] The 'created_at' and 'updated_at' attributes are now submitted in a product feed.<br />
|
23 |
+
[+] If tags were disabled, the initial sync could crash. Fix.<br />
|
24 |
+
[~] Cron debug info is now stored to a log file.</notes>
|
25 |
<authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
|
26 |
+
<date>2013-10-21</date>
|
27 |
+
<time>12:10:57</time>
|
28 |
+
<contents><target name="magecommunity"><dir name="Simtech"><dir name="Searchanise"><dir name="Block"><file name="Async.php" hash="bc97c98da15f5abbc1d8922ca477dc6d"/><file name="Autocomplete.php" hash="efc89ac3f897be3bc307fba6a36778f0"/><file name="Jsinit.php" hash="0cf9770f73064f571420283a0e4bdb8d"/><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="73c06dbe5c5ca8778bb2488ed2b5b5ed"/></dir><file name="Result.php" hash="4e767e273ee21a38332ac226af878291"/></dir><file name="Result.php" hash="dec7b27ab9511c956680eb60eba9b95e"/></dir><dir name="Helper"><file name="ApiSe.php" hash="3b53bed78ed1b22ebce60579a6fc484e"/><file name="ApiXML.php" hash="4c780f46b569c45606ecb9f5cfc21eba"/><file name="Data.php" hash="c63349634ece2dfbd44a35c1be232d42"/></dir><dir name="Model"><file name="Advanced.php" hash="2a22ebcf7ac75b54681ef8a27bad2e47"/><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="Layer"><dir name="Filter"><file name="Category.php" hash="e290ab29f2d50e1acbbbb37496150ea4"/><file name="Price.php" hash="743887b32bf012274ad8a371fff96411"/></dir></dir><file name="Layer.php" hash="3e8c975d649ae6e20fcc69d35779c97c"/><file name="LayerCatalogSearch.php" hash="42058e0552719902f3f40f91e816b460"/><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"/><file name="CollectionTag.php" hash="ea06ec75ee4d083f2b4232c5fe298f00"/></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="5db27768e7d77ed7ddc63ae9f4c4308c"/><file name="Queue.php" hash="831f5ea7e57810f9c78d09659424e9a7"/><file name="Request.php" hash="af0f9a16a0dbc69ba76458eac802638b"/><dir name="Resource"><dir name="Advanced"><file name="Collection.php" hash="6744555254ba1c57f482504b5f16012a"/></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="273467b2e39649fcd0a8eede59c5ab98"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="643a513735ac2a2ac9fba08ff1fa79a0"/><file name="Price.php" hash="15d7ab510b37655a148e077dcece13df"/></dir></dir><dir name="Product"><file name="Collection.php" hash="b7c9a1c2fc24ecf78a32fd0d9d46b120"/><file name="CollectionTag.php" hash="60f12d27d78426a8e04e01d2cbdadb48"/></dir><file name="Store.php" hash="dee8bb23b7fe48dc55e46e93f583699a"/></dir><file name="Searchanise.php" hash="0a03a35854470a310f075298c9a1abf2"/><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"><file name="AdvancedController.php" hash="7500f6075382cd8a14816e424da2348f"/><file name="AsyncController.php" hash="e12b49146b32369e8eda17b7e6558fc7"/><file name="CategoryController.php" hash="909f99c5cf7f85405fc76ebe976c2c8e"/><file name="IndexController.php" hash="e3234ca51a7669741e29ff7c38789989"/><file name="InfoController.php" hash="2f44a35ac9b35e7e9b66a8289a1c5242"/><file name="OptionsController.php" hash="56785c8ea24472c2047268b2d9e8e878"/><file name="ProductController.php" hash="6633fde99f35ffeaa05884f0e0d98da7"/><file name="ResultController.php" hash="4b00515cc47593704ea1178d7b44d48e"/><file name="ResyncController.php" hash="0612f929d375427326821dfc12186be8"/><file name="SignupController.php" hash="80f87a63d6272f98a068dde35f1d140e"/></dir><dir name="etc"><file name="config.xml" hash="e0ac5cc3d17db931a8ebc4e174e4bab9"/><file name="config_without_search.xml" hash="1c4e59138912c79f7fc86625101c5e96"/><file name="system.xml" hash="a006341e693571d11efaa9d289ebf7fa"/></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="4f0674cd493872c2b1e89cdcc80546ab"/></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="5e904fee02cbd42324a297d513b9f582"/></dir></dir></dir><dir name="default"><dir name="default"><dir name="template"><dir name="catalogsearch"><file name="form.mini.phtml" hash="fcf8e06e66801a36c96f20ca5d187123"/></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="1bdb7fddc596dac1460bc3054c425187"/></dir></target></contents>
|
29 |
<compatible/>
|
30 |
<dependencies><required><php><min>5.2.13</min><max>6.0.0</max></php></required></dependencies>
|
31 |
</package>
|