Version Notes
[!] Price could be indicated incorrectly on currency change. Fixed.
[~] Cron sync init method now works in parallel with the AJAX method by default to improve stability.
[*] Unnecessary cron processing notifications sent every 5 minutes with the OK message removed..
Download this release
Release Info
Developer | Simbirsk Technologies, Ltd. |
Extension | Simtech_Searchanise |
Version | 1.1.6 |
Comparing to | |
See all releases |
Code changes from version 1.1.5 to 1.1.6
- app/code/community/Simtech/Searchanise/Block/Async.php +2 -2
- app/code/community/Simtech/Searchanise/Block/Jsinit.php +18 -18
- app/code/community/Simtech/Searchanise/Helper/ApiSe.php +37 -23
- app/code/community/Simtech/Searchanise/controllers/AsyncController.php +21 -1
- app/code/community/Simtech/Searchanise/etc/config.xml +2 -2
- app/code/community/Simtech/Searchanise/etc/config_without_search.xml +2 -2
- app/design/adminhtml/default/default/template/searchanise/dashboard.phtml +31 -33
- package.xml +7 -10
app/code/community/Simtech/Searchanise/Block/Async.php
CHANGED
@@ -21,7 +21,7 @@ class Simtech_Searchanise_Block_Async extends Mage_Core_Block_Text
|
|
21 |
|
22 |
if ($autoInstallInBackground) {
|
23 |
$signupUrl = Mage::helper("adminhtml")->getUrl(Mage::helper('searchanise/ApiSe')->getConnectLink());
|
24 |
-
$html .= "\n<object data=\"$signupUrl\" width=\"0\" height=\"0\"></object>\n";
|
25 |
} else {
|
26 |
if (Mage::helper('searchanise/ApiSe')->signup(null, false) == true) {
|
27 |
Mage::helper('searchanise/ApiSe')->queueImport(null, false);
|
@@ -59,7 +59,7 @@ class Simtech_Searchanise_Block_Async extends Mage_Core_Block_Text
|
|
59 |
$asyncUrl = Mage::helper('searchanise/ApiSe')->getAsyncUrl(false);
|
60 |
|
61 |
if (Mage::helper('searchanise/ApiSe')->checkObjectAsync()) {
|
62 |
-
$html .= "\n<object data=\"$asyncUrl\" width=\"0\" height=\"0\"></object>\n";
|
63 |
}
|
64 |
|
65 |
if (Mage::helper('searchanise/ApiSe')->checkAjaxAsync()) {
|
21 |
|
22 |
if ($autoInstallInBackground) {
|
23 |
$signupUrl = Mage::helper("adminhtml")->getUrl(Mage::helper('searchanise/ApiSe')->getConnectLink());
|
24 |
+
$html .= "\n<object data=\"$signupUrl\" width=\"0\" height=\"0\" type=\"text/html\"></object>\n";
|
25 |
} else {
|
26 |
if (Mage::helper('searchanise/ApiSe')->signup(null, false) == true) {
|
27 |
Mage::helper('searchanise/ApiSe')->queueImport(null, false);
|
59 |
$asyncUrl = Mage::helper('searchanise/ApiSe')->getAsyncUrl(false);
|
60 |
|
61 |
if (Mage::helper('searchanise/ApiSe')->checkObjectAsync()) {
|
62 |
+
$html .= "\n<object data=\"$asyncUrl\" width=\"0\" height=\"0\" type=\"text/html\"></object>\n";
|
63 |
}
|
64 |
|
65 |
if (Mage::helper('searchanise/ApiSe')->checkAjaxAsync()) {
|
app/code/community/Simtech/Searchanise/Block/Jsinit.php
CHANGED
@@ -23,25 +23,25 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
|
|
23 |
return $html;
|
24 |
}
|
25 |
|
26 |
-
$
|
27 |
|
28 |
-
if (empty($
|
29 |
return $html;
|
30 |
}
|
31 |
|
32 |
-
$
|
33 |
-
if ($
|
34 |
// Uncomment the lines below if it is necessary to disable search widget in frontend
|
35 |
//~ return '';
|
36 |
}
|
37 |
-
if (empty($
|
38 |
-
$
|
39 |
}
|
40 |
$union = 'Searchanise.AutoCmpParams.union = {};';
|
41 |
$restrictBy = '';
|
42 |
|
43 |
-
$
|
44 |
-
$
|
45 |
$searchWidgetsLink = Mage::helper('searchanise/ApiSe')->getSearchWidgetsLink(false);
|
46 |
|
47 |
$union .= " Searchanise.AutoCmpParams.union.price = {};";
|
@@ -59,15 +59,15 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
|
|
59 |
$restrictBy .= "\nSearchanise.AutoCmpParams.restrictBy.is_in_stock = '1';";
|
60 |
}
|
61 |
|
62 |
-
$
|
63 |
|
64 |
$html .=
|
65 |
"<script type=\"text/javascript\">
|
66 |
//<![CDATA[
|
67 |
Searchanise = {};
|
68 |
-
Searchanise.host = '{$
|
69 |
-
Searchanise.api_key = '{$
|
70 |
-
Searchanise.SearchInput = '#{$
|
71 |
|
72 |
Searchanise.AutoCmpParams = {};
|
73 |
{$union}
|
@@ -82,12 +82,12 @@ class Simtech_Searchanise_Block_Jsinit extends Mage_Core_Block_Text
|
|
82 |
Searchanise.AdditionalSearchInputs = '#name,#description,#sku';
|
83 |
|
84 |
Searchanise.options.PriceFormat = {
|
85 |
-
rate : '{$
|
86 |
-
decimals: '{$
|
87 |
-
decimals_separator: '{$
|
88 |
-
thousands_separator: '{$
|
89 |
-
symbol: '{$
|
90 |
-
after: {$
|
91 |
};
|
92 |
|
93 |
(function() {
|
23 |
return $html;
|
24 |
}
|
25 |
|
26 |
+
$apiKey = Mage::helper('searchanise/ApiSe')->getApiKey();
|
27 |
|
28 |
+
if (empty($apiKey)) {
|
29 |
return $html;
|
30 |
}
|
31 |
|
32 |
+
$inputId = Mage::helper('searchanise/ApiSe')->getInputIdSearch();
|
33 |
+
if ($inputId == '') {
|
34 |
// Uncomment the lines below if it is necessary to disable search widget in frontend
|
35 |
//~ return '';
|
36 |
}
|
37 |
+
if (empty($inputId)) {
|
38 |
+
$inputId = 'search';
|
39 |
}
|
40 |
$union = 'Searchanise.AutoCmpParams.union = {};';
|
41 |
$restrictBy = '';
|
42 |
|
43 |
+
$seServiceUrl = Mage::helper('searchanise/ApiSe')->getServiceUrl();
|
44 |
+
$priceFormat = Mage::helper('searchanise/ApiSe')->getPriceFormat($store);
|
45 |
$searchWidgetsLink = Mage::helper('searchanise/ApiSe')->getSearchWidgetsLink(false);
|
46 |
|
47 |
$union .= " Searchanise.AutoCmpParams.union.price = {};";
|
59 |
$restrictBy .= "\nSearchanise.AutoCmpParams.restrictBy.is_in_stock = '1';";
|
60 |
}
|
61 |
|
62 |
+
$priceFormat['after'] = $priceFormat['after'] ? 'true' : 'false';
|
63 |
|
64 |
$html .=
|
65 |
"<script type=\"text/javascript\">
|
66 |
//<![CDATA[
|
67 |
Searchanise = {};
|
68 |
+
Searchanise.host = '{$seServiceUrl}';
|
69 |
+
Searchanise.api_key = '{$apiKey}';
|
70 |
+
Searchanise.SearchInput = '#{$inputId}';
|
71 |
|
72 |
Searchanise.AutoCmpParams = {};
|
73 |
{$union}
|
82 |
Searchanise.AdditionalSearchInputs = '#name,#description,#sku';
|
83 |
|
84 |
Searchanise.options.PriceFormat = {
|
85 |
+
rate : '{$priceFormat['rate']}',
|
86 |
+
decimals: '{$priceFormat['decimals']}',
|
87 |
+
decimals_separator: '{$priceFormat['decimals_separator']}',
|
88 |
+
thousands_separator: '{$priceFormat['thousands_separator']}',
|
89 |
+
symbol: '{$priceFormat['symbol']}',
|
90 |
+
after: {$priceFormat['after']}
|
91 |
};
|
92 |
|
93 |
(function() {
|
app/code/community/Simtech/Searchanise/Helper/ApiSe.php
CHANGED
@@ -54,6 +54,9 @@ class Simtech_Searchanise_Helper_ApiSe
|
|
54 |
const NOT_USE_HTTP_REQUEST = 'not_use_http_request';
|
55 |
const NOT_USE_HTTP_REQUEST_KEY = 'Y';
|
56 |
|
|
|
|
|
|
|
57 |
public static function getParamNotUseHttpRequest()
|
58 |
{
|
59 |
return self::NOT_USE_HTTP_REQUEST . '=' . self::NOT_USE_HTTP_REQUEST_KEY;
|
@@ -329,10 +332,10 @@ class Simtech_Searchanise_Helper_ApiSe
|
|
329 |
|
330 |
public static function getJsPriceFormat($store = null)
|
331 |
{
|
332 |
-
if (
|
333 |
return Mage::app()->getLocale()->getJsPriceFormat();
|
334 |
}
|
335 |
-
|
336 |
$format = Zend_Locale_Data::getContent(self::getLocaleCode($store), 'currencynumber');
|
337 |
$symbols = Zend_Locale_Data::getList(self::getLocaleCode($store), 'symbols');
|
338 |
|
@@ -378,33 +381,44 @@ class Simtech_Searchanise_Helper_ApiSe
|
|
378 |
|
379 |
public static function getPriceFormat($store = null)
|
380 |
{
|
381 |
-
$
|
382 |
-
|
383 |
-
if (
|
384 |
-
$store = Mage::app()->getStore();
|
385 |
}
|
386 |
-
|
387 |
// fixme if need
|
388 |
// change $positionPrice for AdminPanelWidget like as customer area
|
389 |
-
$positionPrice = strpos($
|
390 |
-
|
391 |
-
$
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
$
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
403 |
'symbol' => $symbol,
|
404 |
'after' => $positionPrice == 0 ? true : false,
|
405 |
);
|
406 |
-
|
407 |
-
return $
|
408 |
}
|
409 |
|
410 |
/**
|
54 |
const NOT_USE_HTTP_REQUEST = 'not_use_http_request';
|
55 |
const NOT_USE_HTTP_REQUEST_KEY = 'Y';
|
56 |
|
57 |
+
const FL_SHOW_STATUS_ASYNC = 'show_status';
|
58 |
+
const FL_SHOW_STATUS_ASYNC_KEY = 'Y';
|
59 |
+
|
60 |
public static function getParamNotUseHttpRequest()
|
61 |
{
|
62 |
return self::NOT_USE_HTTP_REQUEST . '=' . self::NOT_USE_HTTP_REQUEST_KEY;
|
332 |
|
333 |
public static function getJsPriceFormat($store = null)
|
334 |
{
|
335 |
+
if (!($store instanceof Mage_Core_Model_Store)) {
|
336 |
return Mage::app()->getLocale()->getJsPriceFormat();
|
337 |
}
|
338 |
+
|
339 |
$format = Zend_Locale_Data::getContent(self::getLocaleCode($store), 'currencynumber');
|
340 |
$symbols = Zend_Locale_Data::getList(self::getLocaleCode($store), 'symbols');
|
341 |
|
381 |
|
382 |
public static function getPriceFormat($store = null)
|
383 |
{
|
384 |
+
$jsPriceFormat = self::getJsPriceFormat($store);
|
385 |
+
// It is need after getJsPriceFormat, because the 'getJsPriceFormat' function has simple method for '$store = null'.
|
386 |
+
if (!($store instanceof Mage_Core_Model_Store)) {
|
387 |
+
$store = Mage::app()->getStore($store);
|
388 |
}
|
389 |
+
|
390 |
// fixme if need
|
391 |
// change $positionPrice for AdminPanelWidget like as customer area
|
392 |
+
$positionPrice = strpos($jsPriceFormat['pattern'], '%s');
|
393 |
+
|
394 |
+
$symbol = str_replace('%s', '', $jsPriceFormat['pattern']);
|
395 |
+
// fixme in the future
|
396 |
+
// need delete
|
397 |
+
// } else {
|
398 |
+
// $currency = Mage::app()->getLocale()->currency($store->getCurrentCurrencyCode());
|
399 |
+
// $symbol = $currency->getSymbol(self::getDefaultCurrency($store), self::getLocaleCode($store));
|
400 |
+
|
401 |
+
// if (empty($symbol)) {
|
402 |
+
// $symbol = str_replace('%s', '', $jsPriceFormat['pattern']);
|
403 |
+
// }
|
404 |
+
// }
|
405 |
+
|
406 |
+
$seRate = 1;
|
407 |
+
$rate = $store->getCurrentCurrencyRate();
|
408 |
+
if (!empty($rate)) {
|
409 |
+
$seRate = 1 / $rate;
|
410 |
+
}
|
411 |
+
|
412 |
+
$priceFormat = array(
|
413 |
+
'rate' => $seRate, // It requires inverse value.
|
414 |
+
'decimals' => $jsPriceFormat['precision'],
|
415 |
+
'decimals_separator' => $jsPriceFormat['decimalSymbol'],
|
416 |
+
'thousands_separator' => $jsPriceFormat['groupSymbol'],
|
417 |
'symbol' => $symbol,
|
418 |
'after' => $positionPrice == 0 ? true : false,
|
419 |
);
|
420 |
+
|
421 |
+
return $priceFormat;
|
422 |
}
|
423 |
|
424 |
/**
|
app/code/community/Simtech/Searchanise/controllers/AsyncController.php
CHANGED
@@ -14,6 +14,7 @@
|
|
14 |
class Simtech_Searchanise_AsyncController extends Mage_Core_Controller_Front_Action
|
15 |
{
|
16 |
protected $_notUseHttpRequestText = null;
|
|
|
17 |
|
18 |
public function getNotUseHttpRequestText()
|
19 |
{
|
@@ -29,6 +30,20 @@ class Simtech_Searchanise_AsyncController extends Mage_Core_Controller_Front_Act
|
|
29 |
return ($this->getNotUseHttpRequestText() == Simtech_Searchanise_Helper_ApiSe::NOT_USE_HTTP_REQUEST_KEY) ? true : false;
|
30 |
}
|
31 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
32 |
/**
|
33 |
* Dispatch event before action
|
34 |
*
|
@@ -71,8 +86,13 @@ class Simtech_Searchanise_AsyncController extends Mage_Core_Controller_Front_Act
|
|
71 |
@set_time_limit(0);
|
72 |
|
73 |
$result = Mage::helper('searchanise/ApiSe')->async();
|
|
|
|
|
|
|
|
|
|
|
74 |
|
75 |
-
die(
|
76 |
|
77 |
} else {
|
78 |
@ignore_user_abort(false);
|
14 |
class Simtech_Searchanise_AsyncController extends Mage_Core_Controller_Front_Action
|
15 |
{
|
16 |
protected $_notUseHttpRequestText = null;
|
17 |
+
protected $_flShowStatusAsync = null;
|
18 |
|
19 |
public function getNotUseHttpRequestText()
|
20 |
{
|
30 |
return ($this->getNotUseHttpRequestText() == Simtech_Searchanise_Helper_ApiSe::NOT_USE_HTTP_REQUEST_KEY) ? true : false;
|
31 |
}
|
32 |
|
33 |
+
protected function getFlShowStatusAsync()
|
34 |
+
{
|
35 |
+
if (is_null($this->_flShowStatusAsync)) {
|
36 |
+
$this->_flShowStatusAsync = $this->getRequest()->getParam(Simtech_Searchanise_Helper_ApiSe::FL_SHOW_STATUS_ASYNC);
|
37 |
+
}
|
38 |
+
|
39 |
+
return $this->_flShowStatusAsync;
|
40 |
+
}
|
41 |
+
|
42 |
+
protected function checkShowSatusAsync()
|
43 |
+
{
|
44 |
+
return ($this->getFlShowStatusAsync() == Simtech_Searchanise_Helper_ApiSe::FL_SHOW_STATUS_ASYNC_KEY) ? true : false;
|
45 |
+
}
|
46 |
+
|
47 |
/**
|
48 |
* Dispatch event before action
|
49 |
*
|
86 |
@set_time_limit(0);
|
87 |
|
88 |
$result = Mage::helper('searchanise/ApiSe')->async();
|
89 |
+
|
90 |
+
if ($this->checkShowSatusAsync()) {
|
91 |
+
echo 'Searchanise status sync: ';
|
92 |
+
echo $result;
|
93 |
+
}
|
94 |
|
95 |
+
die();
|
96 |
|
97 |
} else {
|
98 |
@ignore_user_abort(false);
|
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>
|
@@ -571,7 +571,7 @@
|
|
571 |
<max_processing_time>720</max_processing_time>
|
572 |
<max_search_request_length>8000</max_search_request_length>
|
573 |
<service_url>http://www.searchanise.com</service_url>
|
574 |
-
<cron_async_enabled>
|
575 |
<ajax_async_enabled>0</ajax_async_enabled>
|
576 |
<!-- default sync init method -->
|
577 |
<object_async_enabled>1</object_async_enabled>
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
+
<version>1.1.6</version>
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
571 |
<max_processing_time>720</max_processing_time>
|
572 |
<max_search_request_length>8000</max_search_request_length>
|
573 |
<service_url>http://www.searchanise.com</service_url>
|
574 |
+
<cron_async_enabled>1</cron_async_enabled>
|
575 |
<ajax_async_enabled>0</ajax_async_enabled>
|
576 |
<!-- default sync init method -->
|
577 |
<object_async_enabled>1</object_async_enabled>
|
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>
|
@@ -571,7 +571,7 @@
|
|
571 |
<max_processing_time>720</max_processing_time>
|
572 |
<max_search_request_length>8000</max_search_request_length>
|
573 |
<service_url>http://www.searchanise.com</service_url>
|
574 |
-
<cron_async_enabled>
|
575 |
<ajax_async_enabled>0</ajax_async_enabled>
|
576 |
<!-- default sync init method -->
|
577 |
<object_async_enabled>1</object_async_enabled>
|
15 |
<config>
|
16 |
<modules>
|
17 |
<Simtech_Searchanise>
|
18 |
+
<version>1.1.6</version>
|
19 |
</Simtech_Searchanise>
|
20 |
</modules>
|
21 |
<frontend>
|
571 |
<max_processing_time>720</max_processing_time>
|
572 |
<max_search_request_length>8000</max_search_request_length>
|
573 |
<service_url>http://www.searchanise.com</service_url>
|
574 |
+
<cron_async_enabled>1</cron_async_enabled>
|
575 |
<ajax_async_enabled>0</ajax_async_enabled>
|
576 |
<!-- default sync init method -->
|
577 |
<object_async_enabled>1</object_async_enabled>
|
app/design/adminhtml/default/default/template/searchanise/dashboard.phtml
CHANGED
@@ -23,55 +23,53 @@
|
|
23 |
|
24 |
<?php
|
25 |
Mage::helper('searchanise/ApiSe')->checkImportIsDone();
|
26 |
-
$
|
27 |
|
28 |
-
$
|
29 |
-
$
|
30 |
-
$
|
31 |
|
32 |
-
$
|
33 |
?>
|
34 |
|
35 |
<script type="text/javascript">
|
36 |
//<![CDATA[
|
37 |
SearchaniseAdmin = {};
|
38 |
|
39 |
-
SearchaniseAdmin.host = '<?php echo $
|
40 |
-
SearchaniseAdmin.PrivateKey = '<?php echo $
|
41 |
-
SearchaniseAdmin.OptionsLink = '<?php echo $
|
42 |
-
SearchaniseAdmin.ReSyncLink = '<?php echo $
|
43 |
-
SearchaniseAdmin.LastRequest = '<?php echo $
|
44 |
-
SearchaniseAdmin.LastResync = '<?php echo $
|
45 |
-
SearchaniseAdmin.ConnectLink = '<?php echo $
|
46 |
-
SearchaniseAdmin.AddonStatus = '<?php echo $
|
47 |
|
48 |
SearchaniseAdmin.Engines = [];
|
49 |
|
50 |
<?php
|
51 |
-
if(!empty($
|
52 |
$stores = Mage::app()->getStores();
|
53 |
|
54 |
-
if(!empty($stores))
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
$
|
59 |
-
$
|
60 |
-
$export_status = empty($searchanise_options['export_status'][$store->getId()]) ? 'none' : $searchanise_options['export_status'][$store->getId()];
|
61 |
-
$price_format['after'] = $price_format['after'] ? 'true' : 'false';
|
62 |
|
63 |
-
echo
|
64 |
-
echo "PrivateKey: '{$
|
65 |
echo "LangCode: '{$store->getCode()}',";
|
66 |
echo "Name : '{$store->getName()}',";
|
67 |
-
echo "ExportStatus: '{$
|
68 |
-
echo
|
69 |
-
echo "rate : '{$
|
70 |
-
echo "decimals: '{$
|
71 |
-
echo "decimals_separator: '{$
|
72 |
-
echo "thousands_separator: '{$
|
73 |
-
echo "symbol: '{$
|
74 |
-
echo "after: {$
|
75 |
echo "}";
|
76 |
echo "});";
|
77 |
}
|
@@ -81,4 +79,4 @@
|
|
81 |
//]]>
|
82 |
</script>
|
83 |
|
84 |
-
<script type="text/javascript" src="<?php echo $
|
23 |
|
24 |
<?php
|
25 |
Mage::helper('searchanise/ApiSe')->checkImportIsDone();
|
26 |
+
$searchaniseOptions = Mage::helper('searchanise/ApiSe')->getAddonOptions();
|
27 |
|
28 |
+
$searchaniseOptions['options_link'] = $this->getUrl(Mage::helper('searchanise/ApiSe')->getOptionsLink());
|
29 |
+
$searchaniseOptions['re_sync_link'] = $this->getUrl(Mage::helper('searchanise/ApiSe')->getReSyncLink());
|
30 |
+
$searchaniseOptions['connect_link'] = $this->getUrl(Mage::helper('searchanise/ApiSe')->getConnectLink());
|
31 |
|
32 |
+
$seServiceUrl = Mage::helper('searchanise/ApiSe')->getServiceUrl(false);
|
33 |
?>
|
34 |
|
35 |
<script type="text/javascript">
|
36 |
//<![CDATA[
|
37 |
SearchaniseAdmin = {};
|
38 |
|
39 |
+
SearchaniseAdmin.host = '<?php echo $seServiceUrl;?>';
|
40 |
+
SearchaniseAdmin.PrivateKey = '<?php echo $searchaniseOptions['parent_private_key'];?>';
|
41 |
+
SearchaniseAdmin.OptionsLink = '<?php echo $searchaniseOptions['options_link'];?>';
|
42 |
+
SearchaniseAdmin.ReSyncLink = '<?php echo $searchaniseOptions['re_sync_link'];?>';
|
43 |
+
SearchaniseAdmin.LastRequest = '<?php echo $searchaniseOptions['last_request'];?>';
|
44 |
+
SearchaniseAdmin.LastResync = '<?php echo $searchaniseOptions['last_resync'];?>';
|
45 |
+
SearchaniseAdmin.ConnectLink = '<?php echo $searchaniseOptions['connect_link'];?>';
|
46 |
+
SearchaniseAdmin.AddonStatus = '<?php echo $searchaniseOptions['addon_status'];?>';
|
47 |
|
48 |
SearchaniseAdmin.Engines = [];
|
49 |
|
50 |
<?php
|
51 |
+
if (!empty($searchaniseOptions['parent_private_key'])) {
|
52 |
$stores = Mage::app()->getStores();
|
53 |
|
54 |
+
if (!empty($stores)) {
|
55 |
+
foreach($stores as $keyStore => $store) {
|
56 |
+
$priceFormat = Mage::helper('searchanise/ApiSe')->getPriceFormat($store);
|
57 |
+
$privateKey = $searchaniseOptions['private_key'][$store->getId()];
|
58 |
+
$exportStatus = empty($searchaniseOptions['export_status'][$store->getId()]) ? 'none' : $searchaniseOptions['export_status'][$store->getId()];
|
59 |
+
$priceFormat['after'] = $priceFormat['after'] ? 'true' : 'false';
|
|
|
|
|
60 |
|
61 |
+
echo 'SearchaniseAdmin.Engines.push({';
|
62 |
+
echo "PrivateKey: '{$privateKey}',";
|
63 |
echo "LangCode: '{$store->getCode()}',";
|
64 |
echo "Name : '{$store->getName()}',";
|
65 |
+
echo "ExportStatus: '{$exportStatus}',";
|
66 |
+
echo 'PriceFormat: {';
|
67 |
+
echo "rate : '{$priceFormat['rate']}',";
|
68 |
+
echo "decimals: '{$priceFormat['decimals']}',";
|
69 |
+
echo "decimals_separator: '{$priceFormat['decimals_separator']}',";
|
70 |
+
echo "thousands_separator: '{$priceFormat['thousands_separator']}',";
|
71 |
+
echo "symbol: '{$priceFormat['symbol']}',";
|
72 |
+
echo "after: {$priceFormat['after']}";
|
73 |
echo "}";
|
74 |
echo "});";
|
75 |
}
|
79 |
//]]>
|
80 |
</script>
|
81 |
|
82 |
+
<script type="text/javascript" src="<?php echo $seServiceUrl;?>/js/init.js"></script>
|
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,16 +10,13 @@
|
|
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 |
-
[
|
16 |
-
[!] Fixed: error occured when the group product prices was obtained.<br />
|
17 |
-
[!] Fixed: incorrect global attribute values could be sent on data submission. Fixed.<br />
|
18 |
-
[*] General improvement of the data submission routine.<br /></notes>
|
19 |
<authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
|
20 |
-
<date>2013-08-
|
21 |
-
<time>08:
|
22 |
-
<contents><target name="magecommunity"><dir name="Simtech"><dir name="Searchanise"><dir name="Block"><file name="Async.php" hash="
|
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>1.1.6</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>[!] Price could be indicated incorrectly on currency change. Fixed.<br />
|
14 |
+
[~] Cron sync init method now works in parallel with the AJAX method by default to improve stability.<br />
|
15 |
+
[*] Unnecessary cron processing notifications sent every 5 minutes with the OK message removed..<br /></notes>
|
|
|
|
|
|
|
16 |
<authors><author><name>Simbirsk Technologies, Ltd.</name><user>searchanise</user><email>sales@searchanise.com</email></author></authors>
|
17 |
+
<date>2013-08-27</date>
|
18 |
+
<time>08:57:46</time>
|
19 |
+
<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="af325d27456d9ef37f324562f3ffdcbb"/><file name="ApiXML.php" hash="92d2847f967b6b02dabe882239264e80"/><file name="Data.php" hash="53bbede2bf74a83521ee64240739f898"/></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="61728092fdb9cf42490afacdc4e731fd"/><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="def509d1365374e6dede36be17e75bf3"/></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="8d24a27713e1db605ef0c14862df8bf0"/><file name="Queue.php" hash="831f5ea7e57810f9c78d09659424e9a7"/><file name="Request.php" hash="af0f9a16a0dbc69ba76458eac802638b"/><dir name="Resource"><dir name="Advanced"><file name="Collection.php" hash="12933839daa74d17ac82fca89071bc0a"/></dir><dir name="Eav"><dir name="Mysql4"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="982b1960bec58522f1bd8b82f86452b4"/><file name="Price.php" hash="fc1ec55d6c2aa97558e06691e690e466"/></dir></dir><dir name="Product"><file name="Action.php" hash="006e3c8c775cf31a8b9c66fb934c9d2d"/></dir></dir></dir><dir name="Fulltext"><file name="Collection.php" hash="b9e2e4884a7ecee0000e6a41c0e6d3e2"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="0bfecbdff2458785a287c3f1de23ed56"/><file name="Price.php" hash="38d1acaa4478d678d4bb20704a81b760"/></dir></dir><dir name="Product"><file name="Collection.php" hash="6072bf2a7a4713f3db2fa96014e7453a"/><file name="CollectionTag.php" hash="e89307da7c26ee153c3f9dead94dcd13"/></dir><file name="Store.php" hash="8dd81bf57d38af2b4640bbf14063d3f8"/></dir><file name="Searchanise.php" hash="507813e92908000315aabc4256c5a05c"/><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="c0d808f26138c60b417b6fc6b8d31efa"/><file name="CategoryController.php" hash="909f99c5cf7f85405fc76ebe976c2c8e"/><file name="IndexController.php" hash="e3234ca51a7669741e29ff7c38789989"/><file name="InfoController.php" hash="dcd05c05477c8df8d612ac1c62912944"/><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="fc3bd88786229c92b19e921af4ef5fae"/><file name="config_without_search.xml" hash="92f5bbf15aae1a1228af350602e51060"/><file name="system.xml" hash="a6b2e082fe45706b86b8da0fe02d4374"/></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>
|
20 |
<compatible/>
|
21 |
<dependencies><required><php><min>5.2.13</min><max>6.0.0</max></php></required></dependencies>
|
22 |
</package>
|