Version Notes
- make the method get instead of post for idsearch
- tax options implementation
- gzip compression
- shell script implementation
- external call to sync the data
-boosting event handled
- catalog rule change event
Download this release
Release Info
Developer | Klevu |
Extension | Klevu_SmartSearch |
Version | 1.2.2 |
Comparing to | |
See all releases |
Code changes from version 1.2.1 to 1.2.2
- app/code/community/Klevu/Boosting/Block/Adminhtml/Boost/Edit/Tab/Conditions.php +1 -1
- app/code/community/Klevu/Boosting/Block/Adminhtml/Boost/Grid.php +1 -1
- app/code/community/Klevu/Boosting/Block/Adminhtml/Form/Field/Rule/Button.php +1 -1
- app/code/community/Klevu/Boosting/Model/Observer.php +5 -1
- app/code/community/Klevu/Boosting/etc/config.xml +5 -5
- app/code/community/Klevu/Search/Block/Adminhtml/Form/Field/Image/Log.php +1 -1
- app/code/community/Klevu/Search/Block/Adminhtml/Form/Field/Store/Status.php +29 -0
- app/code/community/Klevu/Search/Helper/Config.php +18 -3
- app/code/community/Klevu/Search/Helper/Data.php +1 -1
- app/code/community/Klevu/Search/Model/Api/Action/Idsearch.php +1 -1
- app/code/community/Klevu/Search/Model/Api/Action/Producttracking.php +1 -1
- app/code/community/Klevu/Search/Model/Api/Action/Searchtermtracking.php +1 -1
- app/code/community/Klevu/Search/Model/Api/Request/Xml.php +12 -5
- app/code/community/Klevu/Search/Model/Observer.php +26 -0
- app/code/community/Klevu/Search/Model/Product/Sync.php +110 -44
- app/code/community/Klevu/Search/Model/Sync.php +11 -2
- app/code/community/Klevu/Search/Model/System/Config/Source/Taxoptions.php +19 -0
- app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/NotificationsController.php +5 -0
- app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/Search/WizardController.php +4 -0
- app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/SearchController.php +7 -0
- app/code/community/Klevu/Search/controllers/IndexController.php +18 -0
- app/code/community/Klevu/Search/etc/config.xml +22 -3
- app/code/community/Klevu/Search/etc/system.xml +19 -1
- app/code/community/Klevu/Search/sql/klevu_search_setup/mysql4-install-1.0.0.php +1 -1
- app/design/adminhtml/default/default/layout/klevu/boosting.xml +7 -7
- app/design/adminhtml/default/default/template/klevu/search/form/klevuinfo.phtml +1 -1
- app/design/adminhtml/default/default/template/klevu/search/wizard/configure/store.phtml +4 -3
- app/design/adminhtml/default/default/template/klevu/search/wizard/configure/userplan.phtml +0 -1
- package.xml +11 -5
- shell/klevu/sync.php +57 -0
- skin/frontend/base/default/css/klevu/klevu-landing-page-style.css +111 -64
app/code/community/Klevu/Boosting/Block/Adminhtml/Boost/Edit/Tab/Conditions.php
CHANGED
@@ -22,7 +22,7 @@ class Klevu_Boosting_Block_Adminhtml_Boost_Edit_Tab_Conditions extends Mage_Admi
|
|
22 |
$boostModel = Mage::registry('boost_data');
|
23 |
$form = new Varien_Data_Form();
|
24 |
$form->setHtmlIdPrefix('rule_');
|
25 |
-
$renderer = Mage::getBlockSingleton('adminhtml/widget_form_renderer_fieldset')->setTemplate('promo/fieldset.phtml')->setNewChildUrl($this->getUrl('*/
|
26 |
$fieldset = $form->addFieldset('conditions_fieldset', array(
|
27 |
'legend' => $this->__('Specify "Conditions" when the rule should be executed (Note: Only the attributes which have been enabled for promotion use are visible in the dropdown below (see Catalog > Attributes > Manage Attributes > Choose your attribute > Properties > Use for Promo Rule Conditions).
|
28 |
)')
|
22 |
$boostModel = Mage::registry('boost_data');
|
23 |
$form = new Varien_Data_Form();
|
24 |
$form->setHtmlIdPrefix('rule_');
|
25 |
+
$renderer = Mage::getBlockSingleton('adminhtml/widget_form_renderer_fieldset')->setTemplate('promo/fieldset.phtml')->setNewChildUrl($this->getUrl('*/boost/newConditionHtml/form/rule_conditions_fieldset'));
|
26 |
$fieldset = $form->addFieldset('conditions_fieldset', array(
|
27 |
'legend' => $this->__('Specify "Conditions" when the rule should be executed (Note: Only the attributes which have been enabled for promotion use are visible in the dropdown below (see Catalog > Attributes > Manage Attributes > Choose your attribute > Properties > Use for Promo Rule Conditions).
|
28 |
)')
|
app/code/community/Klevu/Boosting/Block/Adminhtml/Boost/Grid.php
CHANGED
@@ -54,7 +54,7 @@ class Klevu_Boosting_Block_Adminhtml_Boost_Grid extends Mage_Adminhtml_Block_Wid
|
|
54 |
$this->getMassactionBlock()->setUseSelectAll(true);
|
55 |
$this->getMassactionBlock()->addItem('remove_boost', array(
|
56 |
'label' => Mage::helper('boosting')->__('Remove Rule') ,
|
57 |
-
'url' => $this->getUrl('*/
|
58 |
'confirm' => Mage::helper('boosting')->__('Are you sure?')
|
59 |
));
|
60 |
return $this;
|
54 |
$this->getMassactionBlock()->setUseSelectAll(true);
|
55 |
$this->getMassactionBlock()->addItem('remove_boost', array(
|
56 |
'label' => Mage::helper('boosting')->__('Remove Rule') ,
|
57 |
+
'url' => $this->getUrl('*/boost/massRemove') ,
|
58 |
'confirm' => Mage::helper('boosting')->__('Are you sure?')
|
59 |
));
|
60 |
return $this;
|
app/code/community/Klevu/Boosting/Block/Adminhtml/Form/Field/Rule/Button.php
CHANGED
@@ -40,7 +40,7 @@ class Klevu_Boosting_Block_Adminhtml_Form_Field_Rule_Button extends Mage_Adminht
|
|
40 |
$this->addData(array(
|
41 |
"html_id" => $element->getHtmlId(),
|
42 |
"button_label" => sprintf("Configure Product Boosting Rules%s", $label_suffix),
|
43 |
-
"destination_url" => $this->getUrl("
|
44 |
));
|
45 |
|
46 |
return $this->_toHtml();
|
40 |
$this->addData(array(
|
41 |
"html_id" => $element->getHtmlId(),
|
42 |
"button_label" => sprintf("Configure Product Boosting Rules%s", $label_suffix),
|
43 |
+
"destination_url" => $this->getUrl("adminhtml/boost/index", $url_params),
|
44 |
));
|
45 |
|
46 |
return $this->_toHtml();
|
app/code/community/Klevu/Boosting/Model/Observer.php
CHANGED
@@ -5,8 +5,12 @@ class Klevu_Boosting_Model_Observer extends Varien_Object
|
|
5 |
/* update matching product ids */
|
6 |
public function updateMatchingids(Varien_Event_Observer $observer) {
|
7 |
$obj = $observer->getEvent()->getObject();
|
8 |
-
|
|
|
9 |
Mage::getResourceModel("boosting/boost")->updateMatchingIds($matchingids,$obj->getId());
|
|
|
|
|
|
|
10 |
}
|
11 |
|
12 |
/* update matching product ids */
|
5 |
/* update matching product ids */
|
6 |
public function updateMatchingids(Varien_Event_Observer $observer) {
|
7 |
$obj = $observer->getEvent()->getObject();
|
8 |
+
$matchIds = $obj->getMatchingProductIds();
|
9 |
+
$matchingids = ",".implode(",",$matchIds).",";
|
10 |
Mage::getResourceModel("boosting/boost")->updateMatchingIds($matchingids,$obj->getId());
|
11 |
+
if(!empty($matchIds)) {
|
12 |
+
Mage::getModel("klevu_search/product_sync")->updateSpecificProductIds($matchIds);
|
13 |
+
}
|
14 |
}
|
15 |
|
16 |
/* update matching product ids */
|
app/code/community/Klevu/Boosting/etc/config.xml
CHANGED
@@ -87,13 +87,13 @@
|
|
87 |
</global>
|
88 |
<admin>
|
89 |
<routers>
|
90 |
-
<
|
91 |
-
<use>admin</use>
|
92 |
<args>
|
93 |
-
<
|
94 |
-
|
|
|
95 |
</args>
|
96 |
-
</
|
97 |
</routers>
|
98 |
</admin>
|
99 |
<adminhtml>
|
87 |
</global>
|
88 |
<admin>
|
89 |
<routers>
|
90 |
+
<adminhtml>
|
|
|
91 |
<args>
|
92 |
+
<modules>
|
93 |
+
<klevu_boosting before="Mage_Adminhtml">Klevu_Boosting_Adminhtml</klevu_boosting>
|
94 |
+
</modules>
|
95 |
</args>
|
96 |
+
</adminhtml>
|
97 |
</routers>
|
98 |
</admin>
|
99 |
<adminhtml>
|
app/code/community/Klevu/Search/Block/Adminhtml/Form/Field/Image/Log.php
CHANGED
@@ -35,7 +35,7 @@ class Klevu_Search_Block_Adminhtml_Form_Field_Image_Log extends Mage_Adminhtml_B
|
|
35 |
}
|
36 |
|
37 |
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) {
|
38 |
-
$url_params = array("debug" => "klevu");
|
39 |
$label_suffix = ($this->getStoreId()) ? " for This Store" : "";
|
40 |
|
41 |
$this->addData(array(
|
35 |
}
|
36 |
|
37 |
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) {
|
38 |
+
$url_params = array("debug" => "klevu",'_store' => Mage::app()->getDefaultStoreView()->getId());
|
39 |
$label_suffix = ($this->getStoreId()) ? " for This Store" : "";
|
40 |
|
41 |
$this->addData(array(
|
app/code/community/Klevu/Search/Block/Adminhtml/Form/Field/Store/Status.php
ADDED
@@ -0,0 +1,29 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Klevu_Search_Block_Adminhtml_Form_Field_Store_Status extends Mage_Adminhtml_Block_System_Config_Form_Field {
|
4 |
+
|
5 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element) {
|
6 |
+
if ($element->getScope() == "stores") {
|
7 |
+
return $element->getEscapedValue();
|
8 |
+
} else {
|
9 |
+
$status = Mage::getModel("klevu_search/product_sync")->getKlevuCronStatus();
|
10 |
+
if(!empty($status)) {
|
11 |
+
$html = Mage::getModel("klevu_search/product_sync")->getKlevuCronStatus();
|
12 |
+
}else {
|
13 |
+
$html = Mage::helper("klevu_search")->__("Never Run");
|
14 |
+
}
|
15 |
+
return $html;
|
16 |
+
}
|
17 |
+
}
|
18 |
+
|
19 |
+
public function render(Varien_Data_Form_Element_Abstract $element) {
|
20 |
+
$this->setData('scope', $element->getScope());
|
21 |
+
|
22 |
+
// Remove the inheritance checkbox
|
23 |
+
$element
|
24 |
+
->unsCanUseWebsiteValue()
|
25 |
+
->unsCanUseDefaultValue();
|
26 |
+
|
27 |
+
return parent::render($element);
|
28 |
+
}
|
29 |
+
}
|
app/code/community/Klevu/Search/Helper/Config.php
CHANGED
@@ -22,6 +22,7 @@ class Klevu_Search_Helper_Config extends Mage_Core_Helper_Abstract {
|
|
22 |
const XML_PATH_ORDER_SYNC_FREQUENCY = "klevu_search/order_sync/frequency";
|
23 |
const XML_PATH_ORDER_SYNC_LAST_RUN = "klevu_search/order_sync/last_run";
|
24 |
const XML_PATH_FORCE_LOG = "klevu_search/developer/force_log";
|
|
|
25 |
const XML_PATH_LOG_LEVEL = "klevu_search/developer/log_level";
|
26 |
const XML_PATH_STORE_ID = "stores/%s/system/store/id";
|
27 |
const XML_PATH_HOSTNAME = "klevu_search/general/hostname";
|
@@ -77,7 +78,10 @@ class Klevu_Search_Helper_Config extends Mage_Core_Helper_Abstract {
|
|
77 |
* @return bool
|
78 |
*/
|
79 |
public function isTaxEnabled($store_id = null) {
|
80 |
-
|
|
|
|
|
|
|
81 |
}
|
82 |
|
83 |
/**
|
@@ -135,10 +139,10 @@ class Klevu_Search_Helper_Config extends Mage_Core_Helper_Abstract {
|
|
135 |
* @return $this
|
136 |
*/
|
137 |
public function setTaxEnabledFlag($flag, $store = null) {
|
138 |
-
|
139 |
-
$flag = ($flag) ? 1 : 0;
|
140 |
$this->setStoreConfig(static::XML_PATH_TAX_ENABLED, $flag, $store);
|
141 |
return $this;
|
|
|
142 |
}
|
143 |
|
144 |
/**
|
@@ -424,6 +428,7 @@ class Klevu_Search_Helper_Config extends Mage_Core_Helper_Abstract {
|
|
424 |
* @return bool
|
425 |
*/
|
426 |
public function isProductSyncEnabled($store_id = null) {
|
|
|
427 |
$flag = $this->getProductSyncEnabledFlag($store_id);
|
428 |
|
429 |
// static::KLEVU_PRODUCT_FORCE_OLDERVERSION for handling of older version of klevu
|
@@ -591,6 +596,16 @@ class Klevu_Search_Helper_Config extends Mage_Core_Helper_Abstract {
|
|
591 |
public function isLoggingForced() {
|
592 |
return Mage::getStoreConfigFlag(static::XML_PATH_FORCE_LOG);
|
593 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
594 |
|
595 |
/**
|
596 |
* Return the minimum log level configured. Default to Zend_Log::WARN.
|
22 |
const XML_PATH_ORDER_SYNC_FREQUENCY = "klevu_search/order_sync/frequency";
|
23 |
const XML_PATH_ORDER_SYNC_LAST_RUN = "klevu_search/order_sync/last_run";
|
24 |
const XML_PATH_FORCE_LOG = "klevu_search/developer/force_log";
|
25 |
+
const XML_PATH_ENABLE_EXTERNAL_CALL = "klevu_search/developer/enable_external_call";
|
26 |
const XML_PATH_LOG_LEVEL = "klevu_search/developer/log_level";
|
27 |
const XML_PATH_STORE_ID = "stores/%s/system/store/id";
|
28 |
const XML_PATH_HOSTNAME = "klevu_search/general/hostname";
|
78 |
* @return bool
|
79 |
*/
|
80 |
public function isTaxEnabled($store_id = null) {
|
81 |
+
$flag = Mage::getStoreConfigFlag(static::XML_PATH_TAX_ENABLED, $store_id);
|
82 |
+
return in_array($flag, array(
|
83 |
+
Klevu_Search_Model_System_Config_Source_Taxoptions::YES
|
84 |
+
));
|
85 |
}
|
86 |
|
87 |
/**
|
139 |
* @return $this
|
140 |
*/
|
141 |
public function setTaxEnabledFlag($flag, $store = null) {
|
142 |
+
//$flag = ($flag) ? 1 : 0;
|
|
|
143 |
$this->setStoreConfig(static::XML_PATH_TAX_ENABLED, $flag, $store);
|
144 |
return $this;
|
145 |
+
|
146 |
}
|
147 |
|
148 |
/**
|
428 |
* @return bool
|
429 |
*/
|
430 |
public function isProductSyncEnabled($store_id = null) {
|
431 |
+
|
432 |
$flag = $this->getProductSyncEnabledFlag($store_id);
|
433 |
|
434 |
// static::KLEVU_PRODUCT_FORCE_OLDERVERSION for handling of older version of klevu
|
596 |
public function isLoggingForced() {
|
597 |
return Mage::getStoreConfigFlag(static::XML_PATH_FORCE_LOG);
|
598 |
}
|
599 |
+
|
600 |
+
/**
|
601 |
+
* Check if KLEVU can sync data by exteranl url.
|
602 |
+
*
|
603 |
+
* @return bool
|
604 |
+
*/
|
605 |
+
public function isExternalCallEnabled() {
|
606 |
+
return Mage::getStoreConfigFlag(static::XML_PATH_ENABLE_EXTERNAL_CALL);
|
607 |
+
}
|
608 |
+
|
609 |
|
610 |
/**
|
611 |
* Return the minimum log level configured. Default to Zend_Log::WARN.
|
app/code/community/Klevu/Search/Helper/Data.php
CHANGED
@@ -15,7 +15,7 @@ class Klevu_Search_Helper_Data extends Mage_Core_Helper_Abstract {
|
|
15 |
* @param string $locale
|
16 |
*/
|
17 |
function getLanguageFromLocale($locale) {
|
18 |
-
if (strlen($locale) == 5 && strpos($locale, "_")
|
19 |
return substr($locale, 0, 2);
|
20 |
}
|
21 |
|
15 |
* @param string $locale
|
16 |
*/
|
17 |
function getLanguageFromLocale($locale) {
|
18 |
+
if (strlen($locale) == 5 && strpos($locale, "_") === 2) {
|
19 |
return substr($locale, 0, 2);
|
20 |
}
|
21 |
|
app/code/community/Klevu/Search/Model/Api/Action/Idsearch.php
CHANGED
@@ -4,7 +4,7 @@ class Klevu_Search_Model_Api_Action_Idsearch extends Klevu_Search_Model_Api_Acti
|
|
4 |
const ENDPOINT = "/cloud-search/n-search/idsearch";
|
5 |
const METHOD = "GET";
|
6 |
|
7 |
-
const DEFAULT_REQUEST_MODEL = "klevu_search/
|
8 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_search";
|
9 |
|
10 |
protected function validate($parameters) {
|
4 |
const ENDPOINT = "/cloud-search/n-search/idsearch";
|
5 |
const METHOD = "GET";
|
6 |
|
7 |
+
const DEFAULT_REQUEST_MODEL = "klevu_search/api_request_get";
|
8 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_search";
|
9 |
|
10 |
protected function validate($parameters) {
|
app/code/community/Klevu/Search/Model/Api/Action/Producttracking.php
CHANGED
@@ -5,7 +5,7 @@ class Klevu_Search_Model_Api_Action_Producttracking extends Klevu_Search_Model_A
|
|
5 |
const ENDPOINT = "/analytics/productTracking";
|
6 |
const METHOD = "POST";
|
7 |
|
8 |
-
const DEFAULT_REQUEST_MODEL = "klevu_search/
|
9 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_data";
|
10 |
|
11 |
protected function validate($parameters) {
|
5 |
const ENDPOINT = "/analytics/productTracking";
|
6 |
const METHOD = "POST";
|
7 |
|
8 |
+
const DEFAULT_REQUEST_MODEL = "klevu_search/api_request_get";
|
9 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_data";
|
10 |
|
11 |
protected function validate($parameters) {
|
app/code/community/Klevu/Search/Model/Api/Action/Searchtermtracking.php
CHANGED
@@ -5,7 +5,7 @@ class Klevu_Search_Model_Api_Action_Searchtermtracking extends Klevu_Search_Mode
|
|
5 |
const ENDPOINT = "/analytics/n-search/search";
|
6 |
const METHOD = "POST";
|
7 |
|
8 |
-
const DEFAULT_REQUEST_MODEL = "klevu_search/
|
9 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_data";
|
10 |
|
11 |
protected function validate($parameters) {
|
5 |
const ENDPOINT = "/analytics/n-search/search";
|
6 |
const METHOD = "POST";
|
7 |
|
8 |
+
const DEFAULT_REQUEST_MODEL = "klevu_search/api_request_get";
|
9 |
const DEFAULT_RESPONSE_MODEL = "klevu_search/api_response_data";
|
10 |
|
11 |
protected function validate($parameters) {
|
app/code/community/Klevu/Search/Model/Api/Request/Xml.php
CHANGED
@@ -26,11 +26,18 @@ class Klevu_Search_Model_Api_Request_Xml extends Klevu_Search_Model_Api_Request
|
|
26 |
*/
|
27 |
protected function build() {
|
28 |
$client = parent::build();
|
29 |
-
|
30 |
-
$
|
31 |
-
|
32 |
-
|
33 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
return $client;
|
35 |
}
|
36 |
|
26 |
*/
|
27 |
protected function build() {
|
28 |
$client = parent::build();
|
29 |
+
$convertDataToXml = $this->getDataAsXml();
|
30 |
+
$gZen = gzencode($convertDataToXml,5);
|
31 |
+
if($gZen !== false) {
|
32 |
+
$client
|
33 |
+
->setHeaders("Content-Encoding", "gzip")
|
34 |
+
->setHeaders("Content-Type", "application/xml")
|
35 |
+
->setRawData($gZen);
|
36 |
+
} else {
|
37 |
+
$client
|
38 |
+
->setHeaders("Content-Type", "application/xml")
|
39 |
+
->setRawData($convertDataToXml);
|
40 |
+
}
|
41 |
return $client;
|
42 |
}
|
43 |
|
app/code/community/Klevu/Search/Model/Observer.php
CHANGED
@@ -217,5 +217,31 @@ class Klevu_Search_Model_Observer extends Varien_Object {
|
|
217 |
Mage::helper('klevu_search')->log(Zend_Log::CRIT, sprintf("Exception thrown in %s::%s - %s", __CLASS__, __METHOD__, $e->getMessage()));
|
218 |
}
|
219 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
220 |
|
221 |
}
|
217 |
Mage::helper('klevu_search')->log(Zend_Log::CRIT, sprintf("Exception thrown in %s::%s - %s", __CLASS__, __METHOD__, $e->getMessage()));
|
218 |
}
|
219 |
}
|
220 |
+
|
221 |
+
public function catalogRulePriceChange(Varien_Event_Observer $observer){
|
222 |
+
try {
|
223 |
+
$obj = $observer->getEvent()->getRule();
|
224 |
+
$matchIds = $obj->getMatchingProductIds();
|
225 |
+
$rows = array();
|
226 |
+
if(!empty($matchIds)) {
|
227 |
+
if (version_compare(Mage::getVersion(), '1.7.0.2', '<=')===true) {
|
228 |
+
$rows = $matchIds;
|
229 |
+
} else {
|
230 |
+
foreach($matchIds as $key => $value) {
|
231 |
+
if(is_array($value)) {
|
232 |
+
if (in_array(1,$value)) {
|
233 |
+
$rows[] = $key;
|
234 |
+
}
|
235 |
+
}
|
236 |
+
}
|
237 |
+
}
|
238 |
+
}
|
239 |
+
if(!empty($rows)){
|
240 |
+
Mage::getModel("klevu_search/product_sync")->updateSpecificProductIds($rows);
|
241 |
+
}
|
242 |
+
} catch (Exception $e) {
|
243 |
+
Mage::helper('klevu_search')->log(Zend_Log::CRIT, sprintf("Exception thrown in %s::%s - %s", __CLASS__, __METHOD__, $e->getMessage()));
|
244 |
+
}
|
245 |
+
}
|
246 |
|
247 |
}
|
app/code/community/Klevu/Search/Model/Product/Sync.php
CHANGED
@@ -119,47 +119,76 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
119 |
$this->log(Zend_Log::INFO, sprintf("Starting sync for %s (%s).", $store->getWebsite()->getName(), $store->getName()));
|
120 |
|
121 |
$actions = array(
|
122 |
-
'delete' =>
|
|
|
123 |
->select()
|
124 |
-
|
125 |
-
|
126 |
-
|
127 |
-
|
128 |
-
|
129 |
-
|
130 |
-
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
|
147 |
-
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
156 |
->select()
|
|
|
|
|
|
|
|
|
|
|
157 |
->from(
|
158 |
-
array('
|
159 |
-
array('
|
160 |
)
|
161 |
-
|
162 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
163 |
->group(array('k.product_id', 'k.parent_id'))
|
164 |
->bind(array(
|
165 |
'type' => "products",
|
@@ -622,14 +651,14 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
622 |
if (isset($skipped_record_ids[$i])) {
|
623 |
continue;
|
624 |
}
|
625 |
-
$or_where[] = sprintf("(%s AND %s)",
|
626 |
$connection->quoteInto("k.product_id = ?", $data[$i]['product_id']),
|
627 |
$connection->quoteInto("k.parent_id = ?", $data[$i]['parent_id']),
|
628 |
$connection->quoteInto("k.type = ?", "products")
|
629 |
);
|
630 |
}
|
|
|
631 |
$select->where(implode(" OR ", $or_where));
|
632 |
-
|
633 |
$connection->query($select->deleteFromSelect("k"));
|
634 |
|
635 |
$skipped_count = count($skipped_record_ids);
|
@@ -820,7 +849,6 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
820 |
}
|
821 |
$product_ids = array_unique($product_ids);
|
822 |
$parent_ids = array_unique($parent_ids);
|
823 |
-
|
824 |
$data = Mage::getModel('catalog/product')->getCollection()
|
825 |
->addIdFilter($product_ids)
|
826 |
->setStore($this->getStore())
|
@@ -1078,7 +1106,7 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
1078 |
$product['listCategory'] = $this->getCategoryNames($parent->getCategoryIds());
|
1079 |
} else {
|
1080 |
$product['category'] = "";
|
1081 |
-
$product['listCategory'] = "";
|
1082 |
}
|
1083 |
|
1084 |
|
@@ -2092,9 +2120,10 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
2092 |
*/
|
2093 |
public function updateSpecificProductIds($ids)
|
2094 |
{
|
2095 |
-
$pro_ids = implode(',', $ids);
|
2096 |
-
$where = sprintf("product_id IN(%s) OR parent_id IN(%s)", $pro_ids, $pro_ids);
|
2097 |
$resource = Mage::getSingleton('core/resource');
|
|
|
|
|
|
|
2098 |
$resource->getConnection('core_write')->update(
|
2099 |
$resource->getTableName('klevu_search/product_sync'),
|
2100 |
array('last_synced_at' => '0'),
|
@@ -2253,6 +2282,7 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
2253 |
)
|
2254 |
->where("k.product_id IS NULL")
|
2255 |
->where("c.path LIKE ?","{$rootStoreCategory}%")
|
|
|
2256 |
->bind(array(
|
2257 |
'type' => "categories",
|
2258 |
'store_id' => $store->getId(),
|
@@ -2502,7 +2532,7 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
2502 |
}
|
2503 |
|
2504 |
// Get all products for update
|
2505 |
-
public function
|
2506 |
$timestamp_after = strtotime("+1 day",strtotime(date_create("now")->format("Y-m-d")));
|
2507 |
$timestamp_before = strtotime("-1 day",strtotime(date_create("now")->format("Y-m-d")));
|
2508 |
$query = $this->getConnection()->select()
|
@@ -2526,4 +2556,40 @@ class Klevu_Search_Model_Product_Sync extends Klevu_Search_Model_Sync {
|
|
2526 |
$this->updateSpecificProductIds($pro_ids);
|
2527 |
}
|
2528 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2529 |
}
|
119 |
$this->log(Zend_Log::INFO, sprintf("Starting sync for %s (%s).", $store->getWebsite()->getName(), $store->getName()));
|
120 |
|
121 |
$actions = array(
|
122 |
+
'delete' =>
|
123 |
+
$this->getConnection()
|
124 |
->select()
|
125 |
+
->union(array(
|
126 |
+
$this->getConnection()
|
127 |
+
->select()
|
128 |
+
/*
|
129 |
+
* Select synced products in the current store/mode that are no longer enabled
|
130 |
+
* (don't exist in the products table, or have status disabled for the current
|
131 |
+
* store, or have status disabled for the default store) or are not visible
|
132 |
+
* (in the case of configurable products, check the parent visibility instead).
|
133 |
+
*/
|
134 |
+
->from(
|
135 |
+
array('k' => $this->getTableName("klevu_search/product_sync")),
|
136 |
+
array('product_id' => "k.product_id", 'parent_id' => "k.parent_id")
|
137 |
+
)
|
138 |
+
->joinLeft(
|
139 |
+
array('v' => $this->getTableName("catalog/category_product_index")),
|
140 |
+
"v.product_id = k.product_id AND v.store_id = :store_id",
|
141 |
+
""
|
142 |
+
)
|
143 |
+
->joinLeft(
|
144 |
+
array('p' => $this->getTableName("catalog/product")),
|
145 |
+
"p.entity_id = k.product_id",
|
146 |
+
""
|
147 |
+
)
|
148 |
+
->joinLeft(
|
149 |
+
array('ss' => $this->getProductStatusAttribute()->getBackendTable()),
|
150 |
+
"ss.attribute_id = :status_attribute_id AND ss.entity_id = k.product_id AND ss.store_id = :store_id",
|
151 |
+
""
|
152 |
+
)
|
153 |
+
->joinLeft(
|
154 |
+
array('sd' => $this->getProductStatusAttribute()->getBackendTable()),
|
155 |
+
"sd.attribute_id = :status_attribute_id AND sd.entity_id = k.product_id AND sd.store_id = :default_store_id",
|
156 |
+
""
|
157 |
+
)
|
158 |
+
->where("(k.store_id = :store_id) AND (k.type = :type) AND (k.test_mode = :test_mode) AND ((p.entity_id IS NULL) OR (CASE WHEN ss.value_id > 0 THEN ss.value ELSE sd.value END != :status_enabled) OR (CASE WHEN k.parent_id = 0 THEN k.product_id ELSE k.parent_id END NOT IN (?)) )",
|
159 |
+
$this->getConnection()
|
160 |
+
->select()
|
161 |
+
->from(
|
162 |
+
array('i' => $this->getTableName("catalog/category_product_index")),
|
163 |
+
array('id' => "i.product_id")
|
164 |
+
)
|
165 |
+
->where("(i.store_id = :store_id) AND (i.visibility IN (:visible_both, :visible_search))")
|
166 |
+
|
167 |
+
),
|
168 |
+
$this->getConnection()
|
169 |
->select()
|
170 |
+
/*
|
171 |
+
* Select products which are not associated with parent
|
172 |
+
* but still parent exits in klevu product sync table with parent id
|
173 |
+
*
|
174 |
+
*/
|
175 |
->from(
|
176 |
+
array('ks' => $this->getTableName("klevu_search/product_sync")),
|
177 |
+
array('product_id' => "ks.product_id","parent_id" => 'ks.parent_id')
|
178 |
)
|
179 |
+
->where("(ks.parent_id !=0 AND ks.product_id NOT IN (?) AND ks.store_id = :store_id)",
|
180 |
+
$this->getConnection()
|
181 |
+
->select()
|
182 |
+
/*
|
183 |
+
* Select products from catalog super link table
|
184 |
+
*/
|
185 |
+
->from(
|
186 |
+
array('s' => $this->getTableName("catalog/product_super_link")),
|
187 |
+
array('product_id' => "s.product_id")
|
188 |
+
)
|
189 |
+
)
|
190 |
+
)
|
191 |
+
)
|
192 |
->group(array('k.product_id', 'k.parent_id'))
|
193 |
->bind(array(
|
194 |
'type' => "products",
|
651 |
if (isset($skipped_record_ids[$i])) {
|
652 |
continue;
|
653 |
}
|
654 |
+
$or_where[] = sprintf("(%s AND %s AND %s)",
|
655 |
$connection->quoteInto("k.product_id = ?", $data[$i]['product_id']),
|
656 |
$connection->quoteInto("k.parent_id = ?", $data[$i]['parent_id']),
|
657 |
$connection->quoteInto("k.type = ?", "products")
|
658 |
);
|
659 |
}
|
660 |
+
|
661 |
$select->where(implode(" OR ", $or_where));
|
|
|
662 |
$connection->query($select->deleteFromSelect("k"));
|
663 |
|
664 |
$skipped_count = count($skipped_record_ids);
|
849 |
}
|
850 |
$product_ids = array_unique($product_ids);
|
851 |
$parent_ids = array_unique($parent_ids);
|
|
|
852 |
$data = Mage::getModel('catalog/product')->getCollection()
|
853 |
->addIdFilter($product_ids)
|
854 |
->setStore($this->getStore())
|
1106 |
$product['listCategory'] = $this->getCategoryNames($parent->getCategoryIds());
|
1107 |
} else {
|
1108 |
$product['category'] = "";
|
1109 |
+
$product['listCategory'] = "KLEVU_PRODUCT";
|
1110 |
}
|
1111 |
|
1112 |
|
2120 |
*/
|
2121 |
public function updateSpecificProductIds($ids)
|
2122 |
{
|
|
|
|
|
2123 |
$resource = Mage::getSingleton('core/resource');
|
2124 |
+
$pro_ids = implode(',', $ids);
|
2125 |
+
$where = sprintf("(product_id IN(%s) OR parent_id IN(%s)) AND %s", $pro_ids,$pro_ids,$this->getConnection()->quoteInto('type = ?',"products"));
|
2126 |
+
|
2127 |
$resource->getConnection('core_write')->update(
|
2128 |
$resource->getTableName('klevu_search/product_sync'),
|
2129 |
array('last_synced_at' => '0'),
|
2282 |
)
|
2283 |
->where("k.product_id IS NULL")
|
2284 |
->where("c.path LIKE ?","{$rootStoreCategory}%")
|
2285 |
+
->group(array('c.entity_id'))
|
2286 |
->bind(array(
|
2287 |
'type' => "categories",
|
2288 |
'store_id' => $store->getId(),
|
2532 |
}
|
2533 |
|
2534 |
// Get all products for update
|
2535 |
+
public function catalogruleUpdateinfo(){
|
2536 |
$timestamp_after = strtotime("+1 day",strtotime(date_create("now")->format("Y-m-d")));
|
2537 |
$timestamp_before = strtotime("-1 day",strtotime(date_create("now")->format("Y-m-d")));
|
2538 |
$query = $this->getConnection()->select()
|
2556 |
$this->updateSpecificProductIds($pro_ids);
|
2557 |
}
|
2558 |
}
|
2559 |
+
|
2560 |
+
/**
|
2561 |
+
* Get the klevu cron entry which is running mode
|
2562 |
+
* @return int
|
2563 |
+
*/
|
2564 |
+
public function getKlevuCronStatus(){
|
2565 |
+
$collection = Mage::getResourceModel('cron/schedule_collection')
|
2566 |
+
->addFieldToFilter("job_code", $this->getJobCode())
|
2567 |
+
->addFieldToFilter("status", Mage_Cron_Model_Schedule::STATUS_RUNNING);
|
2568 |
+
if($collection->getSize()){
|
2569 |
+
$data = $collection->getData();
|
2570 |
+
$url = Mage::getModel('adminhtml/url')->getUrl("adminhtml/klevu_search/clear_klevu_cron");
|
2571 |
+
return Mage_Cron_Model_Schedule::STATUS_RUNNING." Since ".$data[0]['executed_at']." <a href='".$url."'>Clear Klevu Cron</a>";
|
2572 |
+
} else {
|
2573 |
+
$collection = Mage::getResourceModel('cron/schedule_collection')
|
2574 |
+
->addFieldToFilter("job_code", $this->getJobCode())
|
2575 |
+
->addFieldToFilter("status",Mage_Cron_Model_Schedule::STATUS_SUCCESS)
|
2576 |
+
->setOrder('finished_at', 'desc');
|
2577 |
+
if($collection->getSize()){
|
2578 |
+
$data = $collection->getData();
|
2579 |
+
return Mage_Cron_Model_Schedule::STATUS_SUCCESS." ".$data[0]["finished_at"];
|
2580 |
+
}
|
2581 |
+
}
|
2582 |
+
return;
|
2583 |
+
}
|
2584 |
+
|
2585 |
+
/**
|
2586 |
+
* Remove the cron which is in running state
|
2587 |
+
* @return void
|
2588 |
+
*/
|
2589 |
+
public function clearKlevuCron(){
|
2590 |
+
$condition = array();
|
2591 |
+
$condition[] = $this->getConnection()->quoteInto('status = ?', Mage_Cron_Model_Schedule::STATUS_RUNNING);
|
2592 |
+
$condition[] = $this->getConnection()->quoteInto('job_code = ?',$this->getJobCode());
|
2593 |
+
$this->getConnection()->delete($this->getTableName("cron_schedule"),$condition);
|
2594 |
+
}
|
2595 |
}
|
app/code/community/Klevu/Search/Model/Sync.php
CHANGED
@@ -95,10 +95,19 @@ abstract class Klevu_Search_Model_Sync extends Varien_Object {
|
|
95 |
*/
|
96 |
protected function isBelowMemoryLimit() {
|
97 |
$helper = Mage::helper('klevu_search');
|
98 |
-
|
99 |
-
$limit = $helper->humanReadableToBytes(ini_get('memory_limit'));
|
100 |
$usage = memory_get_usage(true);
|
101 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
102 |
$this->log(Zend_Log::DEBUG, sprintf(
|
103 |
"Memory usage: %s of %s.",
|
104 |
$helper->bytesToHumanReadable($usage),
|
95 |
*/
|
96 |
protected function isBelowMemoryLimit() {
|
97 |
$helper = Mage::helper('klevu_search');
|
98 |
+
$php_memory_limit = ini_get('memory_limit');
|
|
|
99 |
$usage = memory_get_usage(true);
|
100 |
|
101 |
+
if($php_memory_limit < 0){
|
102 |
+
$this->log(Zend_Log::DEBUG, sprintf(
|
103 |
+
"Memory usage: %s of %s.",
|
104 |
+
$helper->bytesToHumanReadable($usage),
|
105 |
+
$php_memory_limit));
|
106 |
+
return true;
|
107 |
+
}
|
108 |
+
|
109 |
+
$limit = $helper->humanReadableToBytes($php_memory_limit);
|
110 |
+
|
111 |
$this->log(Zend_Log::DEBUG, sprintf(
|
112 |
"Memory usage: %s of %s.",
|
113 |
$helper->bytesToHumanReadable($usage),
|
app/code/community/Klevu/Search/Model/System/Config/Source/Taxoptions.php
ADDED
@@ -0,0 +1,19 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
|
3 |
+
class Klevu_Search_Model_System_Config_Source_Taxoptions {
|
4 |
+
|
5 |
+
const YES = 1;
|
6 |
+
const NO = 0;
|
7 |
+
const NEVER = 2;
|
8 |
+
|
9 |
+
|
10 |
+
public function toOptionArray() {
|
11 |
+
$helper = Mage::helper("klevu_search");
|
12 |
+
|
13 |
+
return array(
|
14 |
+
array('value' => static::NEVER, 'label' => $helper->__("Do not add tax in price as catalog prices entered by admin already include tax")),
|
15 |
+
array('value' => static::NO, 'label' => $helper->__("Do not add tax in price as product prices are displayed without tax")),
|
16 |
+
array('value' => static::YES, 'label' => $helper->__("Add relevant tax in price as product prices need to be displayed with tax"))
|
17 |
+
);
|
18 |
+
}
|
19 |
+
}
|
app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/NotificationsController.php
CHANGED
@@ -15,4 +15,9 @@ class Klevu_Search_Adminhtml_Klevu_NotificationsController extends Mage_Adminhtm
|
|
15 |
|
16 |
return $this->_redirectReferer($this->getUrl("adminhtml/dashboard"));
|
17 |
}
|
|
|
|
|
|
|
|
|
|
|
18 |
}
|
15 |
|
16 |
return $this->_redirectReferer($this->getUrl("adminhtml/dashboard"));
|
17 |
}
|
18 |
+
|
19 |
+
protected function _isAllowed()
|
20 |
+
{
|
21 |
+
return true;
|
22 |
+
}
|
23 |
}
|
app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/Search/WizardController.php
CHANGED
@@ -284,4 +284,8 @@ class Klevu_Search_Adminhtml_Klevu_Search_WizardController extends Mage_Adminhtm
|
|
284 |
//return $this->_forward("configure_attributes");
|
285 |
}
|
286 |
}
|
|
|
|
|
|
|
|
|
287 |
}
|
284 |
//return $this->_forward("configure_attributes");
|
285 |
}
|
286 |
}
|
287 |
+
|
288 |
+
protected function _isAllowed() {
|
289 |
+
return true;
|
290 |
+
}
|
291 |
}
|
app/code/community/Klevu/Search/controllers/Adminhtml/Klevu/SearchController.php
CHANGED
@@ -82,6 +82,13 @@ class Klevu_Search_Adminhtml_Klevu_SearchController extends Mage_Adminhtml_Contr
|
|
82 |
Mage::helper('klevu_search/config')->saveSyncOptions($sync_options);
|
83 |
}
|
84 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
85 |
protected function _isAllowed()
|
86 |
{
|
87 |
return true;
|
82 |
Mage::helper('klevu_search/config')->saveSyncOptions($sync_options);
|
83 |
}
|
84 |
|
85 |
+
/* clear the cron entry */
|
86 |
+
public function clear_klevu_cronAction() {
|
87 |
+
Mage::getModel("klevu_search/product_sync")->clearKlevuCron();
|
88 |
+
Mage::getSingleton('adminhtml/session')->addSuccess($this->__("Running Klevu product Sync entry cleared from cron_schedule table."));
|
89 |
+
return $this->_redirectReferer("adminhtml/dashboard");
|
90 |
+
}
|
91 |
+
|
92 |
protected function _isAllowed()
|
93 |
{
|
94 |
return true;
|
app/code/community/Klevu/Search/controllers/IndexController.php
CHANGED
@@ -40,6 +40,24 @@ class Klevu_Search_IndexController extends Mage_Core_Controller_Front_Action {
|
|
40 |
*/
|
41 |
public function runexternalyAction(){
|
42 |
try {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
43 |
$debugapi = Mage::getModel('klevu_search/product_sync')->getApiDebug();
|
44 |
$content="";
|
45 |
if($this->getRequest()->getParam('debug') == "klevu") {
|
40 |
*/
|
41 |
public function runexternalyAction(){
|
42 |
try {
|
43 |
+
$config = Mage::helper('klevu_search/config');
|
44 |
+
if($config->isExternalCallEnabled()){
|
45 |
+
if($this->getRequest()->getParam('data') == "updatesonly") {
|
46 |
+
Mage::getModel('klevu_search/product_sync')->run();
|
47 |
+
Mage::getModel("content/content")->run();
|
48 |
+
Mage::getSingleton('core/session')->addSuccess("Updated Data has been sent to klevu.");
|
49 |
+
|
50 |
+
} else if($this->getRequest()->getParam('data') == "alldata") {
|
51 |
+
// Modified the updated date klevu_product_sync table
|
52 |
+
Mage::getModel('klevu_search/product_sync')->markAllProductsForUpdate();
|
53 |
+
// Run the product sync for all store
|
54 |
+
Mage::getModel('klevu_search/product_sync')->run();
|
55 |
+
Mage::getModel("content/content")->run();
|
56 |
+
Mage::getSingleton('core/session')->addSuccess("All products Data sent to klevu.");
|
57 |
+
|
58 |
+
}
|
59 |
+
|
60 |
+
}
|
61 |
$debugapi = Mage::getModel('klevu_search/product_sync')->getApiDebug();
|
62 |
$content="";
|
63 |
if($this->getRequest()->getParam('debug') == "klevu") {
|
app/code/community/Klevu/Search/etc/config.xml
CHANGED
@@ -2,7 +2,7 @@
|
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Klevu_Search>
|
5 |
-
<version>1.2.
|
6 |
</Klevu_Search>
|
7 |
</modules>
|
8 |
<global>
|
@@ -58,6 +58,24 @@
|
|
58 |
</klevu_search_removetest>
|
59 |
</observers>
|
60 |
</admin_system_config_changed_section_klevu_search>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
61 |
<controller_action_predispatch_catalogsearch_result_index>
|
62 |
<observers>
|
63 |
<klevu_search_landing_page>
|
@@ -208,7 +226,7 @@
|
|
208 |
<catalogruleexpiryupdatebefore>
|
209 |
<type>singleton</type>
|
210 |
<class>klevu_search/product_sync</class>
|
211 |
-
<method>
|
212 |
</catalogruleexpiryupdatebefore>
|
213 |
</observers>
|
214 |
</catalogrule_before_apply>
|
@@ -217,7 +235,7 @@
|
|
217 |
<catalogruleexpiryupdateafter>
|
218 |
<type>singleton</type>
|
219 |
<class>klevu_search/product_sync</class>
|
220 |
-
<method>
|
221 |
</catalogruleexpiryupdateafter>
|
222 |
</observers>
|
223 |
</catalogrule_after_apply>
|
@@ -319,6 +337,7 @@
|
|
319 |
</order_sync>
|
320 |
<developer>
|
321 |
<force_log>1</force_log>
|
|
|
322 |
<!-- Log level default is set in the backend model and getter as it uses Zend_Log constants -->
|
323 |
</developer>
|
324 |
<order_sync>
|
2 |
<config>
|
3 |
<modules>
|
4 |
<Klevu_Search>
|
5 |
+
<version>1.2.2</version>
|
6 |
</Klevu_Search>
|
7 |
</modules>
|
8 |
<global>
|
58 |
</klevu_search_removetest>
|
59 |
</observers>
|
60 |
</admin_system_config_changed_section_klevu_search>
|
61 |
+
<catalogrule_rule_save_commit_after>
|
62 |
+
<observers>
|
63 |
+
<klevu_search_catalogrule_change>
|
64 |
+
<type>singleton</type>
|
65 |
+
<class>klevu_search/observer</class>
|
66 |
+
<method>catalogRulePriceChange</method>
|
67 |
+
</klevu_search_catalogrule_change>
|
68 |
+
</observers>
|
69 |
+
</catalogrule_rule_save_commit_after>
|
70 |
+
<catalogrule_rule_delete_before>
|
71 |
+
<observers>
|
72 |
+
<klevu_search_catalogrule_delete_before>
|
73 |
+
<type>singleton</type>
|
74 |
+
<class>klevu_search/observer</class>
|
75 |
+
<method>catalogRulePriceChange</method>
|
76 |
+
</klevu_search_catalogrule_delete_before>
|
77 |
+
</observers>
|
78 |
+
</catalogrule_rule_delete_before>
|
79 |
<controller_action_predispatch_catalogsearch_result_index>
|
80 |
<observers>
|
81 |
<klevu_search_landing_page>
|
226 |
<catalogruleexpiryupdatebefore>
|
227 |
<type>singleton</type>
|
228 |
<class>klevu_search/product_sync</class>
|
229 |
+
<method>catalogruleUpdateinfo</method>
|
230 |
</catalogruleexpiryupdatebefore>
|
231 |
</observers>
|
232 |
</catalogrule_before_apply>
|
235 |
<catalogruleexpiryupdateafter>
|
236 |
<type>singleton</type>
|
237 |
<class>klevu_search/product_sync</class>
|
238 |
+
<method>catalogruleUpdateinfo</method>
|
239 |
</catalogruleexpiryupdateafter>
|
240 |
</observers>
|
241 |
</catalogrule_after_apply>
|
337 |
</order_sync>
|
338 |
<developer>
|
339 |
<force_log>1</force_log>
|
340 |
+
<enable_external_call>0</enable_external_call>
|
341 |
<!-- Log level default is set in the backend model and getter as it uses Zend_Log constants -->
|
342 |
</developer>
|
343 |
<order_sync>
|
app/code/community/Klevu/Search/etc/system.xml
CHANGED
@@ -181,6 +181,14 @@
|
|
181 |
<show_in_website>1</show_in_website>
|
182 |
<show_in_store>1</show_in_store>
|
183 |
</last_run>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
184 |
<sync_options translate="label comment">
|
185 |
<label>Sync</label>
|
186 |
<frontend_type>select</frontend_type>
|
@@ -350,7 +358,7 @@
|
|
350 |
<label>Include Tax in Price</label>
|
351 |
<comment><![CDATA[Please make sure to resynchronize products by choosing the "All data" option and clicking on the "Sync Data for This Store" button under the "Data Sync Settings".]]></comment>
|
352 |
<frontend_type>select</frontend_type>
|
353 |
-
<source_model>
|
354 |
<sort_order>100</sort_order>
|
355 |
<show_in_default>0</show_in_default>
|
356 |
<show_in_website>0</show_in_website>
|
@@ -407,6 +415,16 @@
|
|
407 |
<show_in_website>0</show_in_website>
|
408 |
<show_in_store>0</show_in_store>
|
409 |
</force_log>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
410 |
<log_level translate="label">
|
411 |
<label>Log level</label>
|
412 |
<frontend_type>select</frontend_type>
|
181 |
<show_in_website>1</show_in_website>
|
182 |
<show_in_store>1</show_in_store>
|
183 |
</last_run>
|
184 |
+
<cron_run_status translate="label">
|
185 |
+
<label>Cron Status</label>
|
186 |
+
<frontend_model>klevu_search/adminhtml_form_field_store_status</frontend_model>
|
187 |
+
<sort_order>301</sort_order>
|
188 |
+
<show_in_default>1</show_in_default>
|
189 |
+
<show_in_website>0</show_in_website>
|
190 |
+
<show_in_store>0</show_in_store>
|
191 |
+
</cron_run_status>
|
192 |
<sync_options translate="label comment">
|
193 |
<label>Sync</label>
|
194 |
<frontend_type>select</frontend_type>
|
358 |
<label>Include Tax in Price</label>
|
359 |
<comment><![CDATA[Please make sure to resynchronize products by choosing the "All data" option and clicking on the "Sync Data for This Store" button under the "Data Sync Settings".]]></comment>
|
360 |
<frontend_type>select</frontend_type>
|
361 |
+
<source_model>klevu_search/system_config_source_taxoptions</source_model>
|
362 |
<sort_order>100</sort_order>
|
363 |
<show_in_default>0</show_in_default>
|
364 |
<show_in_website>0</show_in_website>
|
415 |
<show_in_website>0</show_in_website>
|
416 |
<show_in_store>0</show_in_store>
|
417 |
</force_log>
|
418 |
+
<enable_external_call translate="label comment">
|
419 |
+
<label>Allow External Call</label>
|
420 |
+
<comment><![CDATA[<your Domain>/search/index/runexternaly/data/updatesonly In case of Klevu not receiving data for few days, the above call will be used by the Klevu Team to sync your data externally.]]></comment>
|
421 |
+
<frontend_type>select</frontend_type>
|
422 |
+
<source_model>adminhtml/system_config_source_yesno</source_model>
|
423 |
+
<sort_order>300</sort_order>
|
424 |
+
<show_in_default>1</show_in_default>
|
425 |
+
<show_in_website>0</show_in_website>
|
426 |
+
<show_in_store>0</show_in_store>
|
427 |
+
</enable_external_call>
|
428 |
<log_level translate="label">
|
429 |
<label>Log level</label>
|
430 |
<frontend_type>select</frontend_type>
|
app/code/community/Klevu/Search/sql/klevu_search_setup/mysql4-install-1.0.0.php
CHANGED
@@ -26,7 +26,7 @@ CREATE TABLE `{$notifications_table}` (
|
|
26 |
// the notification the next time cron runs
|
27 |
$installer->getConnection()->insert($notifications_table, array(
|
28 |
"type" => "cron_check",
|
29 |
-
"message" => Mage::helper("klevu_search")->__('Klevu Search relies on cron for normal operations. Please check that you have Magento cron set up correctly. You can find instructions on how to set up Magento Cron <a target="_blank" href="
|
30 |
));
|
31 |
|
32 |
$now = date_create("now")->format("Y-m-d H:i:00");
|
26 |
// the notification the next time cron runs
|
27 |
$installer->getConnection()->insert($notifications_table, array(
|
28 |
"type" => "cron_check",
|
29 |
+
"message" => Mage::helper("klevu_search")->__('Klevu Search relies on cron for normal operations. Please check that you have Magento cron set up correctly. You can find instructions on how to set up Magento Cron <a target="_blank" href="http://support.klevu.com/knowledgebase/setup-a-cron/">here</a>.')
|
30 |
));
|
31 |
|
32 |
$now = date_create("now")->format("Y-m-d H:i:00");
|
app/design/adminhtml/default/default/layout/klevu/boosting.xml
CHANGED
@@ -1,12 +1,12 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<layout version="0.1.0">
|
3 |
-
<
|
4 |
<reference name="messages">
|
5 |
<action method="addNotice" translate="message">
|
6 |
<message><![CDATA[Steps:</br>
|
7 |
1. Click on the "Add New Rule" button to start adding Product Boosting Rules.</br>
|
8 |
2. Once you are done with adding rules, at the store view scope, choose the option "Apply Product Boosting Rules" for the "Boosting attribute".</br>
|
9 |
-
|
10 |
</message>
|
11 |
</action>
|
12 |
</reference>
|
@@ -17,17 +17,17 @@
|
|
17 |
<reference name="content">
|
18 |
<block type="boosting/adminhtml_boost" name="boost" />
|
19 |
</reference>
|
20 |
-
</
|
21 |
-
<
|
22 |
<reference name="head">
|
23 |
<action method="setCanLoadExtJs"><flag>1</flag></action>
|
24 |
<action method="setCanLoadRulesJs"><flag>1</flag></action>
|
25 |
</reference>
|
26 |
-
</
|
27 |
-
<
|
28 |
<reference name="head">
|
29 |
<action method="setCanLoadExtJs"><flag>1</flag></action>
|
30 |
<action method="setCanLoadRulesJs"><flag>1</flag></action>
|
31 |
</reference>
|
32 |
-
</
|
33 |
</layout>
|
1 |
<?xml version="1.0"?>
|
2 |
<layout version="0.1.0">
|
3 |
+
<adminhtml_boost_index>
|
4 |
<reference name="messages">
|
5 |
<action method="addNotice" translate="message">
|
6 |
<message><![CDATA[Steps:</br>
|
7 |
1. Click on the "Add New Rule" button to start adding Product Boosting Rules.</br>
|
8 |
2. Once you are done with adding rules, at the store view scope, choose the option "Apply Product Boosting Rules" for the "Boosting attribute".</br>
|
9 |
+
]]>
|
10 |
</message>
|
11 |
</action>
|
12 |
</reference>
|
17 |
<reference name="content">
|
18 |
<block type="boosting/adminhtml_boost" name="boost" />
|
19 |
</reference>
|
20 |
+
</adminhtml_boost_index>
|
21 |
+
<adminhtml_boost_edit>
|
22 |
<reference name="head">
|
23 |
<action method="setCanLoadExtJs"><flag>1</flag></action>
|
24 |
<action method="setCanLoadRulesJs"><flag>1</flag></action>
|
25 |
</reference>
|
26 |
+
</adminhtml_boost_edit>
|
27 |
+
<adminhtml_boost_new>
|
28 |
<reference name="head">
|
29 |
<action method="setCanLoadExtJs"><flag>1</flag></action>
|
30 |
<action method="setCanLoadRulesJs"><flag>1</flag></action>
|
31 |
</reference>
|
32 |
+
</adminhtml_boost_new>
|
33 |
</layout>
|
app/design/adminhtml/default/default/template/klevu/search/form/klevuinfo.phtml
CHANGED
@@ -1,2 +1,2 @@
|
|
1 |
<?php /** @var Klevu_Search_Block_Adminhtml_Form_KlevuInfo $this */ ?>
|
2 |
-
<iframe src="
|
1 |
<?php /** @var Klevu_Search_Block_Adminhtml_Form_KlevuInfo $this */ ?>
|
2 |
+
<iframe src="https://support.klevu.com/section/manuals/magento-manuals/" frameBorder="0" style="margin-top:-86px;" width="100%" height="2160"></iframe>
|
app/design/adminhtml/default/default/template/klevu/search/wizard/configure/store.phtml
CHANGED
@@ -50,11 +50,12 @@
|
|
50 |
</tr>
|
51 |
|
52 |
<tr>
|
53 |
-
<td class="label"><label for="tax_enable"><?php echo $this->__("
|
54 |
<td class="value">
|
55 |
<select name="tax_enable" id="tax_enable">
|
56 |
-
<option value="
|
57 |
-
<option value="
|
|
|
58 |
</select>
|
59 |
</td>
|
60 |
</tr>
|
50 |
</tr>
|
51 |
|
52 |
<tr>
|
53 |
+
<td class="label"><label for="tax_enable"><?php echo $this->__("How do you want to display product prices in search?") ?></label></td>
|
54 |
<td class="value">
|
55 |
<select name="tax_enable" id="tax_enable">
|
56 |
+
<option value="2" selected="selected"><?php echo $this->__("Do not add tax in price as catalog prices entered by admin already include tax") ?></option>
|
57 |
+
<option value="0"><?php echo $this->__("Do not add tax in price as product prices are displayed without tax"); ?></option>
|
58 |
+
<option value="1"><?php echo $this->__("Add relevant tax in price as product prices need to be displayed with tax"); ?></option>
|
59 |
</select>
|
60 |
</td>
|
61 |
</tr>
|
app/design/adminhtml/default/default/template/klevu/search/wizard/configure/userplan.phtml
CHANGED
@@ -28,7 +28,6 @@
|
|
28 |
<div class="kuSelectPlanHeader">
|
29 |
<h2><?php echo $this->__("Start 14-Day risk free trial");?></h2>
|
30 |
<h5><?php echo $this->__("No obligation to continue, no credit card required");?></h5>
|
31 |
-
<h5><?php echo $this->__("10% off when paid yearly");?></h5>
|
32 |
</div>
|
33 |
<table cellspacing="0" cellpadding="10" class="form-list kuPlanDetails">
|
34 |
<tbody>
|
28 |
<div class="kuSelectPlanHeader">
|
29 |
<h2><?php echo $this->__("Start 14-Day risk free trial");?></h2>
|
30 |
<h5><?php echo $this->__("No obligation to continue, no credit card required");?></h5>
|
|
|
31 |
</div>
|
32 |
<table cellspacing="0" cellpadding="10" class="form-list kuPlanDetails">
|
33 |
<tbody>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Klevu_SmartSearch</name>
|
4 |
-
<version>1.2.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://klevu.com">Commercial</license>
|
7 |
<channel>community</channel>
|
@@ -14,12 +14,18 @@ Intelligent boosting - Just select products you want to promote, no need to manu
|
|
14 |
Dynamic filters - Shoppers get excellent shopping experience.
|
15 |
Search as you type - Shoppers see results even with long keywords.
|
16 |
Actionable insights - Drive traffic by learning from shoppers' search patterns.</description>
|
17 |
-
<notes>-
|
|
|
|
|
|
|
|
|
|
|
|
|
18 |
</notes>
|
19 |
<authors><author><name>Klevu</name><user>Klevu</user><email>niraj.aswani@klevu.com</email></author></authors>
|
20 |
-
<date>2016-
|
21 |
-
<time>10:
|
22 |
-
<contents><target name="mageetc"><dir name="modules"><file name="Klevu_Search.xml" hash="49674c121481f67bcfc2f31bb21e5aaf"/><file name="Klevu_Boosting.xml" hash="760dd6473e4c12c619691c6c553a4658"/><file name="Klevu_Content.xml" hash="36bede0a8b596e50aa11cac1ed7b0c5e"/><file name="Klevu_Searchterms.xml" hash="b1ff813c77dbbb1d1d555c11f699fc8e"/><file name="Klevu_Addtocart.xml" hash="88c66ba423c823ce3a86670b4e2c1f65"/></dir></target><target name="magecommunity"><dir name="Klevu"><dir name="Boosting"><dir name="Block"><dir name="Adminhtml"><dir name="Boost"><dir name="Edit"><file name="Form.php" hash="f383d355c07e8f6930037a3cb663fea8"/><dir name="Tab"><file name="Actions.php" hash="bea65d14949e38f7e2470f596e6a8757"/><file name="Conditions.php" hash="48d378c2a7fc4bc07e1fcd3b765f4d78"/><file name="Form.php" hash="ceb369273be213ab6c0699edf029f8f5"/></dir><file name="Tabs.php" hash="956926b08afbd7d5c24d4015b8d5fb1a"/></dir><file name="Edit.php" hash="102725d29f9a72655baa68f334837d2c"/><file name="Grid.php" hash="57cf6190293cb6d08862d4bbe10d3e33"/></dir><file name="Boost.php" hash="ca0e56e107ef39310f81d43ad16f6ae5"/><dir name="Form"><dir name="Field"><dir name="Rule"><file name="Button.php" hash="097d738836c5482fe6aaa05186bf2db9"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="5dd9cdbc59b7886d7248a49013ee0692"/></dir><dir name="Model"><dir name="Boost"><dir name="Rule"><dir name="Condition"><file name="Combine.php" hash="f01c5f12ea202559feed422130df4d5f"/><file name="Product.php" hash="f35bd54c39f6412db9e08b78a00687fc"/></dir></dir></dir><file name="Boost.php" hash="b11c92c884361d22e705bde6f18f413a"/><dir name="Mysql4"><dir name="Boost"><file name="Collection.php" hash="1ac0d91b93e00c6ca0c6229b8dce69e0"/></dir><file name="Boost.php" hash="0f1e02a537093d2c7cf6392e691646e8"/></dir><file name="Observer.php" hash="60a570b0a9408c32facbacac05ac0d9e"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Boosting"><file name="Attribute.php" hash="6debec1229df22e3f4eda58dd781053a"/></dir></dir></dir></dir></dir><dir name="Test"><dir name="Model"><dir name="Boost"><dir name="fixtures"><file name="testGetMatchingProductIds.yaml" hash="023c1cc74e5525ccfbed76d38674243d"/></dir></dir><file name="Boost.php" hash="e2cba3650eeed3e39ed29381a6014579"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="BoostController.php" hash="0f2ce187d18fe74c8445becd6e44acfc"/></dir></dir><dir name="etc"><file name="config.xml" hash="8eeebfd154ffa219e7965996cbec214d"/><file name="system.xml" hash="a9f3647f178f8f373c31a90569ffd651"/></dir><dir name="sql"><dir name="klevu_boosting_setup"><file name="mysql4-install-10.0.0.php" hash="b36ab1905efd2ba496635fd8830d7438"/></dir></dir></dir><dir name="Search"><dir name="Block"><dir name="Adminhtml"><dir name="Form"><dir name="Field"><dir name="Attribute"><file name="Mappings.php" hash="293c4d19663fa3aad76c17287fec2114"/></dir><dir name="Automatic"><dir name="Attribute"><file name="Mappings.php" hash="b0d192bd03319957d09f34d510914a2f"/></dir></dir><dir name="Html"><file name="Select.php" hash="adc22272b93deb46b524f46f7000972f"/></dir><dir name="Image"><file name="Log.php" hash="5be8e22db76874a10914b297425532c6"/></dir><dir name="Store"><dir name="Level"><file name="Label.php" hash="df3680c83924ece232eb14bd0b7ac9b3"/></dir></dir><dir name="Sync"><file name="Button.php" hash="aeec22e3e952e40d1e1bed33a9e8185b"/></dir></dir><file name="Infolinks.php" hash="201b94b4b627bf9053424fcd70bbd101"/><file name="Information.php" hash="b422d8aa8524b4277f2b4013e90379a0"/><file name="Klevuinfo.php" hash="d2532a3a273acd33515165b3d98ac4d1"/><file name="Syncoptionsinfo.php" hash="28621e3bd17eb8216639fa3a2da47840"/></dir><file name="Notifications.php" hash="9fc2511a89e04cb2c9ce86fc7c3684cd"/><dir name="System"><dir name="Config"><dir name="Form"><file name="Field.php" hash="d4e9023e6cdbedceb7145d248168d33b"/></dir></dir></dir><dir name="Wizard"><dir name="Config"><file name="Button.php" hash="d17ba7640d5777612ab9fb27f85aa5c9"/></dir><dir name="Configure"><file name="Attributes.php" hash="3801cd4ebb45b3d29cfbacf830af2874"/><file name="Store.php" hash="a5e900bf91db47115ce54497669fd384"/><file name="User.php" hash="b885cf0d838e5de5d734c4c0c76cb173"/><file name="Userplan.php" hash="5fc147d5266c2251b4388800fe8f78fb"/></dir></dir></dir><dir name="Catalog"><dir name="Product"><file name="Tracking.php" hash="e314132d47d15ba686c62a0d5ce1668e"/></dir></dir></dir><dir name="Helper"><file name="Api.php" hash="f7f1b51781d27032c114ec2392cb5371"/><file name="Compat.php" hash="3726862a4576a53c5a44dda59a1e9a86"/><file name="Config.php" hash="a83918ba8023adbbcfae454b95982907"/><file name="Data.php" hash="2b10f60163baa9c7f327b33b12344b86"/></dir><dir name="Model"><dir name="Adminhtml"><file name="Comment.php" hash="2d3cb94ca5bea4c6ea50f9aa9dd3a936"/></dir><dir name="Api"><dir name="Action"><file name="Addrecords.php" hash="eeba80aa6abf651cf3ef2b0584cd4354"/><file name="Adduser.php" hash="d8b6e6d37fe6ce522747fd6951c8e9df"/><file name="Addwebstore.php" hash="ea33f2c7032682a6ec2bdb8324cdaf0e"/><file name="Checkuserdetail.php" hash="ebe4eeaf8986684bb7081932e68553bf"/><file name="Debuginfo.php" hash="dd92df091719aa73eca07a08d9681d42"/><file name="Deleterecords.php" hash="0e404db0aab2c58ff90a4e7e4fe73818"/><file name="Features.php" hash="f3f22d268fe2e6651cdab8f12c56599a"/><file name="Gettimezone.php" hash="4bb572b68f42236d765f8194e413b1ca"/><file name="Getuserdetail.php" hash="849a0f04bfdbf39ae75a2627d26717ca"/><file name="Idsearch.php" hash="9244fbdf1e67beea19c99ad0a014d0fc"/><file name="Producttracking.php" hash="50dacac910b7a68b035078771e9f8ff6"/><file name="Removetestmode.php" hash="bd2e7ecf6c233b1430e2989b2b62000f"/><file name="Searchtermtracking.php" hash="e58d1c361cdc8c57886ecaaa7218b394"/><file name="Startsession.php" hash="14edcef879dce92c76a9c78d4106fc6c"/><file name="Updaterecords.php" hash="9e99ce8da72a030b10e9af8353233427"/></dir><file name="Action.php" hash="792f3fe4348f7d13bdf09562ec0d8b59"/><dir name="Request"><file name="Get.php" hash="2d6f510d4dcc171b8e44322b76a49f93"/><file name="Post.php" hash="a46b484a50ced15e2c02deb16bbeb6bb"/><file name="Xml.php" hash="73b3f04d29c2bd79c470d7b81cfc0390"/></dir><file name="Request.php" hash="7f15814e8a01982499563e0e056d2d52"/><dir name="Response"><file name="Data.php" hash="9dbe8e28a501feacb07a6ce2bcc4deb8"/><file name="Empty.php" hash="5988ec43c1756cf4acfedb212787b2b9"/><file name="Invalid.php" hash="8287280c3b99f64e08cf54a0bf65e4a1"/><file name="Message.php" hash="5b6d717c75014e798e619e3df2008d29"/><file name="Search.php" hash="96b9bdef60811c4d994cb457f0d355a9"/><file name="Timezone.php" hash="ffa4d48e42fa52d2c928e202c2af61fd"/></dir><file name="Response.php" hash="9d85b7a9e899375df6cffb375cd59ed7"/></dir><dir name="Catalog"><dir name="Model"><file name="Config.php" hash="57ae55e3cea3dd1b4c60dafcb06d5efd"/></dir></dir><dir name="CatalogSearch"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="104ac92f6ef59879b593a9f1baffd562"/><file name="Category.php" hash="39e56a1a1a1070f09fce2bec6d48c4ce"/><file name="Price.php" hash="4ca1e56183364670fb39a88ea5666c13"/></dir></dir><dir name="Resource"><dir name="Fulltext"><file name="Collection.php" hash="ae39faa3bb9ed99678f667f7d86c0420"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="d675e50ad7c5277b9ca4100770ac16d3"/></dir></dir></dir></dir><dir name="Config"><dir name="Log"><file name="Level.php" hash="ef07b22f48c4ca72066bf90a1cf9ac27"/></dir></dir><file name="Cron.php" hash="0936cc2667e056182668c9f61fc171bc"/><file name="Notification.php" hash="771d45868668c5b925e3bf2202482b43"/><file name="Observer.php" hash="1ccc24d37bafdfb7c3240e3d44de1d70"/><dir name="Order"><file name="Sync.php" hash="1f5c2290ba46ab597f6e85747093bb16"/></dir><dir name="Product"><file name="Sync.php" hash="6c9174a710764f875b2f9f12059e3a6a"/></dir><dir name="Resource"><dir name="Notification"><file name="Collection.php" hash="936a242678b1c89853149e9dc77b6aff"/></dir><file name="Notification.php" hash="f3206c5286bf6ccb4df268c54fcff0f5"/></dir><file name="Session.php" hash="a4ab94b093ba8a414fbfa031f0d2cabe"/><file name="Sync.php" hash="f9f6f4d1251d493944ab13f1467d5257"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Additional"><file name="Attributes.php" hash="d91e1af65488d647b035fbb100a4eb1d"/></dir><dir name="Boosting"><file name="Attribute.php" hash="f6db7762064a7e97ca73b5e15757148f"/></dir><file name="Frequency.php" hash="5866e9d92476cdaa8a5f27c5fa0dc48b"/><file name="Landingoptions.php" hash="031834ff6c6c794735350120a686c77e"/><dir name="Log"><file name="Level.php" hash="ba2bee63eb18b966db6beade72293036"/></dir><dir name="Product"><file name="Attributes.php" hash="f99ced41d6504f1570a703e66743dd0b"/></dir><file name="Syncoptions.php" hash="6114fd30c79d1d268b039c09f93e9f74"/><file name="Yesnoforced.php" hash="0cf0e7842afae56af0caf92c9490295b"/></dir></dir></dir></dir><dir name="Test"><dir name="Config"><file name="Base.php" hash="a1a8faa15e50cd1d394bc79ca94f712b"/></dir><dir name="Controller"><dir name="CatalogSearch"><dir name="fixtures"><file name="search_results.yaml" hash="bfa6ebad238b75d771b89fb369201540"/></dir></dir><file name="CatalogSearch.php" hash="f6c2615ef27061d0cce7e7eae717c040"/></dir><dir name="Helper"><file name="Api.php" hash="c8484c149e920b3f74b8f6f2dce82936"/><file name="Compat.php" hash="8bae993e0da8f368eb50689f271446a5"/><dir name="Config"><dir name="fixtures"><file name="testGetOrderSyncEnabledFlag.yaml" hash="d1427ea15734ca336c47aad51ad7026e"/><file name="testGetOrderSyncFrequency.yaml" hash="52dffcad75b15761a695eb451b99c751"/><file name="testGetProductSyncEnabledFlag.yaml" hash="43e7263c8b781ef7fb6efbb6598f0226"/><file name="testGetProductSyncFrequency.yaml" hash="004e62dfa22c9abfd8dcf56c92270e19"/><file name="testIsExtensionEnabledDisabled.yaml" hash="5d706b347b4f32f87dc8eb4dd6102148"/><file name="testIsExtensionEnabledEnabled.yaml" hash="52c9eb8a4fad4d8f3ba25c68d35977f3"/></dir><dir name="providers"><file name="testIsOrderSyncEnabled.yaml" hash="938cc58e15b310ba2760be6c64e3d3cb"/><file name="testIsProductSyncEnabled.yaml" hash="5be1dcfb21264a012de32cbd252a09c9"/><file name="testIsTestModeEnabled.yaml" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir><file name="Config.php" hash="9ef7b00d63104e11426f3085afa36744"/><dir name="Data"><dir name="providers"><file name="testBytesToHumanReadable.yaml" hash="7cdb8705e108715abc63fa2cfd81626b"/><file name="testGetLanguageFromLocale.yaml" hash="c301f8dc090142627f6af4e4222b7708"/><file name="testHumanReadableToBytes.yaml" hash="dd89ae5b6705cfcfbf42ba64432c0f0a"/><file name="testIsProductionDomain.yaml" hash="f88ef0f80073fdb9cbdbd020348527a7"/></dir></dir><file name="Data.php" hash="93bb38ec55380a6ec7d79008496cac34"/></dir><dir name="Model"><dir name="Api"><dir name="Action"><dir name="Addrecords"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="26eea8bfc58c60e4a2f07dcbddc2e6fd"/><file name="testValidateRequiredFieldsRecords.yaml" hash="590b7ec9b7c33debb740b8c6c6db717f"/><file name="testValidateRequiredFieldsRecordsAllowedEmpty.yaml" hash="f82933b3d219491015cef39a214543bd"/><file name="testValidateRequiredFieldsRecordsEmpty.yaml" hash="d5dcd5aad682db42b1352c35b8905d47"/><file name="testValidateRequiredFieldsRecordsOptional.yaml" hash="25092bb84ba311815ca33971a388256e"/></dir></dir><file name="Addrecords.php" hash="14f5c217fac3f82957f54916fa29b387"/><dir name="Adduser"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="841f068ff3ffd8081ccc91e8675f998c"/></dir></dir><file name="Adduser.php" hash="5189f29f08c4ed30d9b6ac83429de3d0"/><dir name="Addwebstore"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="e52324b58b76d2d63cfa83ee228e1b31"/></dir></dir><file name="Addwebstore.php" hash="fbeac1b8adc5df45ef08a0a3331e5fbc"/><dir name="Getuserdetail"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="297df49838c47536bc9ee928b27470b2"/></dir></dir><file name="Getuserdetail.php" hash="4733d1ec7fd5b3b765aa88f182adf390"/><dir name="Getuserfeaturesdetail"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="e4ef56d9b494fad5392984a144401998"/></dir></dir><file name="Getuserfeaturesdetail.php" hash="601f204cb67a44628c2c951aa8228cd3"/><dir name="Idsearch"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="f36c1a1a1e6d1f5a2d3a59d8d349036e"/></dir></dir><file name="Idsearch.php" hash="4c8849b460a0df494911e3a4df65719c"/><dir name="Producttracking"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="4bc690980c701649d17ff6caba3ef646"/></dir></dir><file name="Producttracking.php" hash="04d8ef59f24f848d36493aabfa413828"/><file name="Startsession.php" hash="c1ae49d22b5e75672b8d84499d51f3d4"/></dir><file name="Action.php" hash="14ce7e11eb3acfda2dfea539c8f5254b"/><dir name="Request"><dir name="Xml"><dir name="providers"><file name="testGetDataAsXml.yaml" hash="4aa16e3557481444ba39775ee0b99d29"/></dir></dir><file name="Xml.php" hash="279a5defe0c933540e9635455590d8b1"/></dir><file name="Request.php" hash="b0cbdfe6a023d0479dc1b1c7fc6869c0"/><dir name="Response"><dir name="Data"><dir name="providers"><file name="testIsSuccessful.yaml" hash="f085922f4329b3d6b19c1e0010d3ca22"/></dir></dir><file name="Data.php" hash="1ab05c7225658f54bd31f0c205d05a2b"/><file name="Empty.php" hash="9933c42aa9ff06977ca3e53d2de15857"/><file name="Invalid.php" hash="bb68f25a053b7e5fc024bce0f5286fcb"/><dir name="Message"><dir name="providers"><file name="testIsSuccessful.yaml" hash="d53562002270a0c4b58ca94733309a21"/></dir></dir><file name="Message.php" hash="135c0d136fa9d0e86158407fc59294c3"/><dir name="Timezone"><dir name="providers"><file name="testIsSuccessful.yaml" hash="67f35e7ee5081689a1eddb867ae6256d"/></dir></dir><file name="Timezone.php" hash="f9cb063ef1f506f656a25c6206899eb3"/><dir name="providers"><file name="response_testIsSuccessful.yaml" hash="ac214d5ebf1eccb89e8fa85e8e3cbb75"/></dir></dir><file name="Response.php" hash="dbcce43ccb2cdf47bce5c05fcf27e759"/><dir name="Test"><file name="Case.php" hash="ec6d3169b9e2bd26655687124be779dd"/></dir><dir name="data"><file name="data_response_data.xml" hash="cd2e5d3dcac402828b9e5f0b0b637c76"/><file name="data_response_failure.xml" hash="ba677628e68149e0283729c1c8e5e86a"/><file name="data_response_no_response.xml" hash="98944f0eda050221de59100f4b22f030"/><file name="data_response_success.xml" hash="e92d1cfcd4461dc8d3fcabe1f902b40b"/><file name="data_response_success_only.xml" hash="276055d04a3f112efe9e6f1c337d7699"/><file name="feature_response.xml" hash="4d400030f5c322b6ab85ccbc7bcd2c0d"/><file name="message_response_failure.xml" hash="ab63c55523b26bd53ea6abf426dd11f5"/><file name="message_response_missing_message.xml" hash="4a43490eda6f33804ca400da2f9cdac1"/><file name="message_response_missing_status.xml" hash="39103fec18a0be88e4ff00a8149c8ad4"/><file name="message_response_session_id.xml" hash="415f25f79a3795ae70b983504cbb784f"/><file name="message_response_success.xml" hash="3ac53566b3d187cb81eb04d40a195c50"/><file name="response_malformed.xml" hash="bfeb4e75829a42082a7935a8e7be491e"/><file name="response_noxml.xml" hash="2debfdcf79f03e4a65a667d21ef9de14"/><file name="response_valid.xml" hash="c915992330f0e4bd37bb629637139f98"/><file name="search_response_empty.xml" hash="601298402d21f3626052634cbbb0ae72"/><file name="search_response_paged.xml" hash="04203807a1d6df787c54afd84690a50e"/><file name="search_response_sorted.xml" hash="c3ee65658a56f65334417328c7fbdcac"/><file name="search_response_success.xml" hash="fea4e59e7ae6e68b387729e320d5f49c"/><file name="startsession_response_success.xml" hash="1865ee2da80359e5a84914c56cae2c8d"/><file name="timezone_response_no_data.xml" hash="276055d04a3f112efe9e6f1c337d7699"/><file name="timezone_response_no_status.xml" hash="bd695479b03e3607196f01f627af4a45"/><file name="timezone_response_with_failure.xml" hash="69a6b1fa7b2cf087d85be162064525b0"/><file name="timezone_response_with_success.xml" hash="e6888eca066741675d228ba1397b5554"/></dir></dir><dir name="Config"><dir name="Log"><file name="Level.php" hash="2032f568dc75c8a5ff63c7daaf8bd049"/></dir></dir><dir name="Notification"><dir name="fixtures"><file name="testLoad.yaml" hash="305afce09851bb40e8c990c138aff162"/></dir></dir><file name="Notification.php" hash="889ec647dbdb938741cfc75e1baa2bc2"/><dir name="Observer"><dir name="fixtures"><file name="testLandingPageRewritesDisabled.yaml" hash="88f0c274444dbaab4fded639b4f40048"/><file name="testLandingPageRewritesEnabled.yaml" hash="bfe60a7ccc0ac73c664f24a4b7394343"/><file name="testScheduleOrderSync.yaml" hash="170806194b4a1bd7f00bc346a51709e1"/></dir></dir><file name="Observer.php" hash="73349e9c475129197c2cf55a1e1d4cdc"/><dir name="Order"><dir name="Sync"><dir name="fixtures"><file name="testAddOrderToQueue.yaml" hash="c93c3c28273757a13b878f97dd0b9e97"/><file name="testClearQueue.yaml" hash="d7ad7abd553e333e84cbab149cdcfb31"/><file name="testRun.yaml" hash="44f091d24de97d230f61fcaf3689ba81"/></dir></dir><file name="Sync.php" hash="d2166272904e003b6bea3862f66e0235"/></dir><dir name="Product"><dir name="Sync"><dir name="fixtures"><file name="testAddProducts.yaml" hash="0ac9a9e6666f285eff796d30c8e0a4e3"/><file name="testCatalogruleProducts.yaml" hash="c37fe4fe86fda18d9fd90794ea1520e4"/><file name="testClearAllProducts.yaml" hash="b7ec8b285d34a27e1c50d572b5ae8227"/><file name="testDeleteProducts.yaml" hash="22f94366cc64b6980b8d648067920533"/><file name="testRun.yaml" hash="eaac2bf57835625a6cd80294e6c5a99c"/><file name="testSpecialpriceProducts.yaml" hash="7d44672dcf91473c0bf1d9cb523a394a"/><file name="testUpdateProducts.yaml" hash="61266411faa659dc175f75ffbccce97e"/></dir></dir><file name="Sync.php" hash="62c07a8123480172bba781b78103fcf6"/></dir><dir name="Sync"><dir name="providers"><file name="testSchedule.yaml" hash="97f1043c42eb74162ae97941dc920d8f"/></dir></dir><file name="Sync.php" hash="8c091e168e251761be7fb1d1d2149305"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Test"><dir name="providers"><file name="testIsValidSourceModel.yaml" hash="cfedc94014707ee5586dd212b4d1ee16"/></dir></dir><file name="Test.php" hash="3e915599d4f76a2fbbb20aed9ffdf968"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Klevu"><file name="NotificationsController.php" hash="e6a8f7ee4ca5463bb9b3df5fa901b6b1"/><dir name="Search"><file name="WizardController.php" hash="1da9a698cc4263d7338784b8f1e3e21e"/></dir><file name="SearchController.php" hash="7e9645eac02a8730ddfec5df977ef0be"/></dir></dir><file name="IndexController.php" hash="2ed1a9392ce871e0b733bbaead48f6f3"/></dir><dir name="etc"><file name="adminhtml.xml" hash="6ce395b9dec2d88a7709d0917c13d50f"/><file name="config.xml" hash="c23acfc302fa2e731f18ae4e0a74d569"/><file name="system.xml" hash="02560c50ff31a5b1b1d9968900fb7233"/></dir><dir name="sql"><dir name="klevu_search_setup"><file name="mysql4-data-upgrade-1.1.1-1.1.2.php" hash="a65f702cf64af452f2fb6f6cdac130a7"/><file name="mysql4-data-upgrade-1.1.22-1.1.23.php" hash="79a74acda887a3a5e435a4793bd39dfd"/><file name="mysql4-data-upgrade-1.1.25-1.1.26.php" hash="0c31a59a5562739a00909738ef26d742"/><file name="mysql4-data-upgrade-1.1.27-1.1.28.php" hash="b9dcc6b50d2177976e13b61064adfa2a"/><file name="mysql4-install-1.0.0.php" hash="860c1991c2ebf804f939598e9932edf5"/></dir></dir></dir><dir name="Searchterms"><dir name="Block"><dir name="Catalog"><dir name="Product"><file name="Popularterms.php" hash="aa85fe13044e5477b08dc8b5b5b9da24"/></dir></dir><file name="Popularterms.php" hash="aa85fe13044e5477b08dc8b5b5b9da24"/></dir><dir name="Helper"><file name="Data.php" hash="8e9151b766cdb3eda6f78063c3abbe08"/></dir><dir name="Model"><dir name="Api"><dir name="Action"><file name="Boostingscore.php" hash="13ab65ce0a7109d71b6764495cee7790"/><file name="Popularterms.php" hash="8551ebb57c02e80cf36497f324b55955"/></dir></dir><file name="Observer.php" hash="38538cda2093dfa3502b2ba5dd3dd833"/><dir name="Product"><file name="Seo.php" hash="52dcabcd7be98ccceaa2d3cdea6aaa6c"/></dir></dir><dir name="controllers"><file name="IndexController.php" hash="4578e1f39d16335c7a3acd9bb6fdc560"/></dir><dir name="etc"><file name="config.xml" hash="5c8664b8fa4997b2b762e571111868da"/><file name="system.xml" hash="17b7d94f5635e3cbbdaa164ced250e0d"/></dir><dir name="sql"><dir name="klevu_searchterms_setup"><file name="mysql4-data-upgrade-10.0.0-10.0.1.php" hash="d41d8cd98f00b204e9800998ecf8427e"/><file name="mysql4-install-10.0.0.php" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir><dir name="Addtocart"><dir name="Helper"><file name="Data.php" hash="1cf568a02f4d4a319683c986201934e7"/></dir><dir name="etc"><file name="config.xml" hash="bb74783fa2486f42a92efc93ac1b1e8e"/><file name="system.xml" hash="5f214a95e3095fbd78a17f69bf5dc249"/></dir></dir><dir name="Content"><dir name="Block"><dir name="Adminhtml"><dir name="Form"><file name="Cmspages.php" hash="74fc3262b45481e33dad508f48002746"/><dir name="System"><dir name="Config"><dir name="Field"><file name="Select.php" hash="a42ac33f00dfd9346479143ac910f53f"/></dir></dir></dir></dir><dir name="Wizard"><dir name="Configure"><file name="Store.php" hash="6926f8cc65cdcf47bdc89d5067a1e0e4"/></dir></dir></dir><file name="Index.php" hash="4e40ebae7545e7a61a2fcd8da21b7e64"/><file name="Tracking.php" hash="15150693e0d1a6167960f3f96ea3ed22"/></dir><dir name="Helper"><file name="Data.php" hash="3fa32fbc5a5a3ed4396149bdf1fd8e4a"/></dir><dir name="Model"><file name="Content.php" hash="889d353af39dc2c9426faf4bc11c04a5"/><file name="Observer.php" hash="e3f82254218a2db909ecb1d9a2a69b37"/></dir><dir name="Test"><dir name="Controller"><dir name="ContentSearch"><dir name="fixtures"><file name="content_search_results.yaml" hash="952b8215496a66cca9563eea08030f8a"/></dir></dir><file name="ContentSearch.php" hash="9b0e012f2c9bf7d33394361f880020af"/></dir><dir name="Helper"><dir name="Data"><dir name="fixtures"><file name="content_search_results.yaml" hash="65a8b23a351f8b87c2993301361d9191"/><file name="testIsCmsEnabledDisabled.yaml" hash="24e89be563a355b9dcfd6016eb7fe3e2"/><file name="testIsCmsEnabledEnabled.yaml" hash="8903e1fc649bb70f4d76454fced95e2a"/></dir><dir name="providers"><file name="testGetExcludedCmsPages.yaml" hash="954599a138a65fecd75da2366aa6b515"/><file name="testIsCmsSyncEnabled.yaml" hash="9c3006c510c146f6511cae9287b3fdb8"/></dir></dir><file name="Data.php" hash="a8ee9e9d91eece007d94c0d92ddb654b"/></dir><dir name="Model"><dir name="Api"><dir name="data"><file name="message_response_content_success.xml" hash="3ac53566b3d187cb81eb04d40a195c50"/><file name="search_response_empty.xml" hash="39b739de681275c6a192dcd4ce796207"/><file name="search_response_success.xml" hash="15fea6ab852abd01c9630c86b895d773"/><file name="startsession_response_content_success.xml" hash="5fd26f817657ca9e1c1980d59219b28e"/></dir></dir><dir name="Content"><dir name="fixtures"><file name="testAddCms.yaml" hash="3054d1f054399ac080721e9a03be5f0e"/><file name="testClearAllProducts.yaml" hash="b7ec8b285d34a27e1c50d572b5ae8227"/><file name="testCmsRun.yaml" hash="074c89e69ec7a903f224ea430534c12d"/><file name="testDeleteCms.yaml" hash="21071d067eb03b1e546d1e12fe70955b"/><file name="testUpdateCms.yaml" hash="0e3a9db13fdee6858284ebb8b1d31083"/></dir></dir><file name="Content.php" hash="4d2f4c54d5389c686cd745c28fa97d40"/></dir></dir><dir name="controllers"><file name="SearchController.php" hash="b84ae7ea7a66f7c7f78c54fa7afdcfd1"/></dir><dir name="etc"><file name="config.xml" hash="c0e3647d7d4f067f14a45ab037cfc2c8"/><file name="system.xml" hash="de4dfb0d239a9d498c3157ce14d2fd57"/></dir><dir name="sql"><dir name="klevu_content_setup"><file name="mysql4-install-0.1.0.php" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="klevu"><dir name="boosting"><dir name="form"><dir name="field"><dir name="rule"><file name="button.phtml" hash="f27feff3fad2bbcd68b56df38de5cc83"/></dir></dir></dir></dir><dir name="search"><dir name="form"><dir name="field"><file name="array_readonly.phtml" hash="d3a3be4cf22f89d84bd73121a1adfa86"/><dir name="sync"><file name="button.phtml" hash="dae55579390ed8b72e1fadcbb538442b"/><file name="logbutton.phtml" hash="d31dd881015319d78d9fb2b83874f296"/></dir></dir><file name="information.phtml" hash="9014ac2b78bf4f22be503208b377dc2c"/><file name="klevuinfo.phtml" hash="88f965b9f5ccbbcd6a540ab6197c7f5f"/><file name="quickinfo.phtml" hash="a383bb10176e87206954b5e379d20c7f"/></dir><file name="notifications.phtml" hash="090714ca57b11d24769c1baa1bcd4615"/><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array.phtml" hash="2e55476e647b79114b28d0a3a02704d5"/></dir></dir></dir></dir><dir name="wizard"><file name="complete.phtml" hash="7cf33a9a829eb07148d16da5056324dd"/><dir name="config"><file name="button.phtml" hash="b1644ee569882b05c2d8cb2f1eecddbc"/></dir><dir name="configure"><file name="attributes.phtml" hash="d54f0a86e78390fbe66825d0771aad25"/><file name="store.phtml" hash="ae9229bf0e74a70be66705dba17c5a6c"/><file name="user.phtml" hash="e5678d947c0ccd6f14a23be3df7e9d7d"/><file name="userplan.phtml" hash="948ae8a4cef7e4a5e4f5540fe0c3ee50"/></dir><dir name="form"><dir name="field"><file name="array.phtml" hash="ccdccab02fbd9cfc2145f094d5e12a2e"/></dir></dir></dir></dir></dir></dir><dir name="layout"><dir name="klevu"><file name="boosting.xml" hash="1b5cfeeab8891bc702294eab4e21994c"/><file name="search.xml" hash="26cef989bb342bad783f5d8fc6a49e7f"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="klevu"><dir name="addtocart"><file name="index.phtml" hash="5697e2f53a92173a1ce89a933ac674f4"/><file name="index.phtml" hash="5697e2f53a92173a1ce89a933ac674f4"/></dir><dir name="content"><file name="content_tracking.phtml" hash="54dc6f0ce8112013c1bcaad01899d7bc"/><file name="index.phtml" hash="a6fdec47b211db2177c9ceba0683d302"/><file name="left.phtml" hash="51f0cad58008a71a27e44377319fa044"/><file name="search.phtml" hash="b22a3597fa610ce0f3a77d47422d42ac"/><file name="top.phtml" hash="2e2e3484388be8eed022ff541fc354f5"/><file name="type_of_query.phtml" hash="25b05bfe942a3bba838a44a8e150a453"/><file name="content_tracking.phtml" hash="54dc6f0ce8112013c1bcaad01899d7bc"/><file name="index.phtml" hash="a6fdec47b211db2177c9ceba0683d302"/><file name="left.phtml" hash="51f0cad58008a71a27e44377319fa044"/><file name="search.phtml" hash="b22a3597fa610ce0f3a77d47422d42ac"/><file name="top.phtml" hash="2e2e3484388be8eed022ff541fc354f5"/><file name="type_of_query.phtml" hash="25b05bfe942a3bba838a44a8e150a453"/></dir><dir name="learning"><file name="category.phtml" hash="ce6ab73d3c9f2a36ac0d34e7a0cf3280"/><file name="category_tracking.phtml" hash="b825ba28a49b9ebb2e4d15ac5459fbf4"/></dir><dir name="search"><file name="form_js.phtml" hash="a5141d394a3b34b57ceea83031400081"/><file name="index.phtml" hash="abdd1e62171a43fee32e35ac42099843"/><file name="klevulog.phtml" hash="9cebbd9ec162570768aefc30c777fb78"/><file name="product_tracking.phtml" hash="e773b0cfcc8c3649bf26cc83d71345ec"/><file name="form_js.phtml" hash="a5141d394a3b34b57ceea83031400081"/><file name="index.phtml" hash="abdd1e62171a43fee32e35ac42099843"/><file name="klevulog.phtml" hash="9cebbd9ec162570768aefc30c777fb78"/><file name="product_tracking.phtml" hash="e773b0cfcc8c3649bf26cc83d71345ec"/></dir><dir name="searchterm"><file name="popular_searchterms.phtml" hash="4306a14ced0036bdb72158e11d4091d3"/></dir></dir></dir><dir name="layout"><dir name="klevu"><file name="search.xml" hash="7c581fe86dd6379ccdfdfce5120e43ca"/><file name="addtocart.xml" hash="78bb1c4910c4c2c37b49a9c36446f9d5"/><file name="content.xml" hash="b420ba1cceb6b45e8eb1754370439da1"/><file name="searchterms.xml" hash="c0db7111782ef105d6c44281b5a95303"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="klevu"><dir name="search"><dir name="lib"><file name="Wizard.js" hash="359afd117dc5cc7ccd14c838eacb573d"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="klevu"><dir name="search"><file name="klevumagestyle.css" hash="1e014f38c2169e415e01b24cba8fa6a0"/><file name="notifications.css" hash="019a5a055bc621cb0f4c166ab8e5604c"/><file name="wizard.css" hash="824f735715f3ed97ce98414b9895e46b"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="klevu"><dir name="content"><file name="klevu-landing-left.css" hash="38c63d7796e4e33b212a1d8b044d0a91"/></dir><file name="klevu-landing-page-style.css" hash="3b610e806f513b56a9b7d4c05ad071cd"/><file name="klevu-landing-responsive.css" hash="811e1bfece09ba7d5529fec850963ac6"/><dir name="search"><file name="klevu-search-term.css" hash="e7e3f2e24073e6fa0949ac157d6d4d34"/></dir></dir></dir><dir name="images"><dir name="klevu"><file name="btn-gridview.png" hash="c3dd97f4f53e1dfe34b6c5b6b4237b8a"/><file name="btn-listview.png" hash="00aaaa62d67e252248d6075f53b04f7f"/><file name="ku-loader.gif" hash="6050f5bcf455cc8f0332dd65e72f8e52"/></dir></dir></dir></dir></dir></target></contents>
|
23 |
<compatible/>
|
24 |
<dependencies><required><php><min>5.3.0</min><max>5.6.18</max></php></required></dependencies>
|
25 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Klevu_SmartSearch</name>
|
4 |
+
<version>1.2.2</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://klevu.com">Commercial</license>
|
7 |
<channel>community</channel>
|
14 |
Dynamic filters - Shoppers get excellent shopping experience.
|
15 |
Search as you type - Shoppers see results even with long keywords.
|
16 |
Actionable insights - Drive traffic by learning from shoppers' search patterns.</description>
|
17 |
+
<notes>- make the method get instead of post for idsearch
|
18 |
+
- tax options implementation
|
19 |
+
- gzip compression
|
20 |
+
- shell script implementation
|
21 |
+
- external call to sync the data
|
22 |
+
-boosting event handled
|
23 |
+
- catalog rule change event 
|
24 |
</notes>
|
25 |
<authors><author><name>Klevu</name><user>Klevu</user><email>niraj.aswani@klevu.com</email></author></authors>
|
26 |
+
<date>2016-03-18</date>
|
27 |
+
<time>10:37:01</time>
|
28 |
+
<contents><target name="mageetc"><dir name="modules"><file name="Klevu_Search.xml" hash="49674c121481f67bcfc2f31bb21e5aaf"/><file name="Klevu_Boosting.xml" hash="760dd6473e4c12c619691c6c553a4658"/><file name="Klevu_Content.xml" hash="36bede0a8b596e50aa11cac1ed7b0c5e"/><file name="Klevu_Searchterms.xml" hash="b1ff813c77dbbb1d1d555c11f699fc8e"/><file name="Klevu_Addtocart.xml" hash="88c66ba423c823ce3a86670b4e2c1f65"/></dir></target><target name="magecommunity"><dir name="Klevu"><dir name="Boosting"><dir name="Block"><dir name="Adminhtml"><dir name="Boost"><dir name="Edit"><file name="Form.php" hash="f383d355c07e8f6930037a3cb663fea8"/><dir name="Tab"><file name="Actions.php" hash="bea65d14949e38f7e2470f596e6a8757"/><file name="Conditions.php" hash="f471bf87addc58de5fc577efb1ef000f"/><file name="Form.php" hash="ceb369273be213ab6c0699edf029f8f5"/></dir><file name="Tabs.php" hash="956926b08afbd7d5c24d4015b8d5fb1a"/></dir><file name="Edit.php" hash="102725d29f9a72655baa68f334837d2c"/><file name="Grid.php" hash="3e9f1e10943666904bdf2cf895111e19"/></dir><file name="Boost.php" hash="ca0e56e107ef39310f81d43ad16f6ae5"/><dir name="Form"><dir name="Field"><dir name="Rule"><file name="Button.php" hash="54234efa375229e734b38f0f1daa7c44"/></dir></dir></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="5dd9cdbc59b7886d7248a49013ee0692"/></dir><dir name="Model"><dir name="Boost"><dir name="Rule"><dir name="Condition"><file name="Combine.php" hash="f01c5f12ea202559feed422130df4d5f"/><file name="Product.php" hash="f35bd54c39f6412db9e08b78a00687fc"/></dir></dir></dir><file name="Boost.php" hash="b11c92c884361d22e705bde6f18f413a"/><dir name="Mysql4"><dir name="Boost"><file name="Collection.php" hash="1ac0d91b93e00c6ca0c6229b8dce69e0"/></dir><file name="Boost.php" hash="0f1e02a537093d2c7cf6392e691646e8"/></dir><file name="Observer.php" hash="957265071bc3f48cc277cb17660f654b"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Boosting"><file name="Attribute.php" hash="6debec1229df22e3f4eda58dd781053a"/></dir></dir></dir></dir></dir><dir name="Test"><dir name="Model"><dir name="Boost"><dir name="fixtures"><file name="testGetMatchingProductIds.yaml" hash="023c1cc74e5525ccfbed76d38674243d"/></dir></dir><file name="Boost.php" hash="e2cba3650eeed3e39ed29381a6014579"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="BoostController.php" hash="0f2ce187d18fe74c8445becd6e44acfc"/></dir></dir><dir name="etc"><file name="config.xml" hash="644ad1907e652c1a5e9d3d5bce4742fa"/><file name="system.xml" hash="a9f3647f178f8f373c31a90569ffd651"/></dir><dir name="sql"><dir name="klevu_boosting_setup"><file name="mysql4-install-10.0.0.php" hash="b36ab1905efd2ba496635fd8830d7438"/></dir></dir></dir><dir name="Search"><dir name="Block"><dir name="Adminhtml"><dir name="Form"><dir name="Field"><dir name="Attribute"><file name="Mappings.php" hash="293c4d19663fa3aad76c17287fec2114"/></dir><dir name="Automatic"><dir name="Attribute"><file name="Mappings.php" hash="b0d192bd03319957d09f34d510914a2f"/></dir></dir><dir name="Html"><file name="Select.php" hash="adc22272b93deb46b524f46f7000972f"/></dir><dir name="Image"><file name="Log.php" hash="a5775de3c82a73e0cda865586a2d10ee"/></dir><dir name="Store"><dir name="Level"><file name="Label.php" hash="df3680c83924ece232eb14bd0b7ac9b3"/></dir><file name="Status.php" hash="0e023c95f20bea421ea6e7f4e64e5eae"/></dir><dir name="Sync"><file name="Button.php" hash="aeec22e3e952e40d1e1bed33a9e8185b"/></dir></dir><file name="Infolinks.php" hash="201b94b4b627bf9053424fcd70bbd101"/><file name="Information.php" hash="b422d8aa8524b4277f2b4013e90379a0"/><file name="Klevuinfo.php" hash="d2532a3a273acd33515165b3d98ac4d1"/><file name="Syncoptionsinfo.php" hash="28621e3bd17eb8216639fa3a2da47840"/></dir><file name="Notifications.php" hash="9fc2511a89e04cb2c9ce86fc7c3684cd"/><dir name="System"><dir name="Config"><dir name="Form"><file name="Field.php" hash="d4e9023e6cdbedceb7145d248168d33b"/></dir></dir></dir><dir name="Wizard"><dir name="Config"><file name="Button.php" hash="d17ba7640d5777612ab9fb27f85aa5c9"/></dir><dir name="Configure"><file name="Attributes.php" hash="3801cd4ebb45b3d29cfbacf830af2874"/><file name="Store.php" hash="a5e900bf91db47115ce54497669fd384"/><file name="User.php" hash="b885cf0d838e5de5d734c4c0c76cb173"/><file name="Userplan.php" hash="5fc147d5266c2251b4388800fe8f78fb"/></dir></dir></dir><dir name="Catalog"><dir name="Product"><file name="Tracking.php" hash="e314132d47d15ba686c62a0d5ce1668e"/></dir></dir></dir><dir name="Helper"><file name="Api.php" hash="f7f1b51781d27032c114ec2392cb5371"/><file name="Compat.php" hash="3726862a4576a53c5a44dda59a1e9a86"/><file name="Config.php" hash="034a25287066481bace437c52e332c1c"/><file name="Data.php" hash="b47fee221f16cfceeb5df9f9356e36f5"/></dir><dir name="Model"><dir name="Adminhtml"><file name="Comment.php" hash="2d3cb94ca5bea4c6ea50f9aa9dd3a936"/></dir><dir name="Api"><dir name="Action"><file name="Addrecords.php" hash="eeba80aa6abf651cf3ef2b0584cd4354"/><file name="Adduser.php" hash="d8b6e6d37fe6ce522747fd6951c8e9df"/><file name="Addwebstore.php" hash="ea33f2c7032682a6ec2bdb8324cdaf0e"/><file name="Checkuserdetail.php" hash="ebe4eeaf8986684bb7081932e68553bf"/><file name="Debuginfo.php" hash="dd92df091719aa73eca07a08d9681d42"/><file name="Deleterecords.php" hash="0e404db0aab2c58ff90a4e7e4fe73818"/><file name="Features.php" hash="f3f22d268fe2e6651cdab8f12c56599a"/><file name="Gettimezone.php" hash="4bb572b68f42236d765f8194e413b1ca"/><file name="Getuserdetail.php" hash="849a0f04bfdbf39ae75a2627d26717ca"/><file name="Idsearch.php" hash="9b8ba6fde615675884e6e0b6a49e8200"/><file name="Producttracking.php" hash="d88a30dcc3926ad0626591567868a04b"/><file name="Removetestmode.php" hash="bd2e7ecf6c233b1430e2989b2b62000f"/><file name="Searchtermtracking.php" hash="450a05e0598618130ef06d71410a3fcc"/><file name="Startsession.php" hash="14edcef879dce92c76a9c78d4106fc6c"/><file name="Updaterecords.php" hash="9e99ce8da72a030b10e9af8353233427"/></dir><file name="Action.php" hash="792f3fe4348f7d13bdf09562ec0d8b59"/><dir name="Request"><file name="Get.php" hash="2d6f510d4dcc171b8e44322b76a49f93"/><file name="Post.php" hash="a46b484a50ced15e2c02deb16bbeb6bb"/><file name="Xml.php" hash="6fb6945b88624571b332733076f1cd3b"/></dir><file name="Request.php" hash="7f15814e8a01982499563e0e056d2d52"/><dir name="Response"><file name="Data.php" hash="9dbe8e28a501feacb07a6ce2bcc4deb8"/><file name="Empty.php" hash="5988ec43c1756cf4acfedb212787b2b9"/><file name="Invalid.php" hash="8287280c3b99f64e08cf54a0bf65e4a1"/><file name="Message.php" hash="5b6d717c75014e798e619e3df2008d29"/><file name="Search.php" hash="96b9bdef60811c4d994cb457f0d355a9"/><file name="Timezone.php" hash="ffa4d48e42fa52d2c928e202c2af61fd"/></dir><file name="Response.php" hash="9d85b7a9e899375df6cffb375cd59ed7"/></dir><dir name="Catalog"><dir name="Model"><file name="Config.php" hash="57ae55e3cea3dd1b4c60dafcb06d5efd"/></dir></dir><dir name="CatalogSearch"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="104ac92f6ef59879b593a9f1baffd562"/><file name="Category.php" hash="39e56a1a1a1070f09fce2bec6d48c4ce"/><file name="Price.php" hash="4ca1e56183364670fb39a88ea5666c13"/></dir></dir><dir name="Resource"><dir name="Fulltext"><file name="Collection.php" hash="ae39faa3bb9ed99678f667f7d86c0420"/></dir><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="d675e50ad7c5277b9ca4100770ac16d3"/></dir></dir></dir></dir><dir name="Config"><dir name="Log"><file name="Level.php" hash="ef07b22f48c4ca72066bf90a1cf9ac27"/></dir></dir><file name="Cron.php" hash="0936cc2667e056182668c9f61fc171bc"/><file name="Notification.php" hash="771d45868668c5b925e3bf2202482b43"/><file name="Observer.php" hash="85c36107a2f74794ee729deccf489818"/><dir name="Order"><file name="Sync.php" hash="1f5c2290ba46ab597f6e85747093bb16"/></dir><dir name="Product"><file name="Sync.php" hash="3dabd1dab6ebf664aeddb99fa970d267"/></dir><dir name="Resource"><dir name="Notification"><file name="Collection.php" hash="936a242678b1c89853149e9dc77b6aff"/></dir><file name="Notification.php" hash="f3206c5286bf6ccb4df268c54fcff0f5"/></dir><file name="Session.php" hash="a4ab94b093ba8a414fbfa031f0d2cabe"/><file name="Sync.php" hash="34fcfeef2306531cff00ce55cb7219cf"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Additional"><file name="Attributes.php" hash="d91e1af65488d647b035fbb100a4eb1d"/></dir><dir name="Boosting"><file name="Attribute.php" hash="f6db7762064a7e97ca73b5e15757148f"/></dir><file name="Frequency.php" hash="5866e9d92476cdaa8a5f27c5fa0dc48b"/><file name="Landingoptions.php" hash="031834ff6c6c794735350120a686c77e"/><dir name="Log"><file name="Level.php" hash="ba2bee63eb18b966db6beade72293036"/></dir><dir name="Product"><file name="Attributes.php" hash="f99ced41d6504f1570a703e66743dd0b"/></dir><file name="Syncoptions.php" hash="6114fd30c79d1d268b039c09f93e9f74"/><file name="Taxoptions.php" hash="2754ec4fcaa8fcaf17976bc35d2f2ed2"/><file name="Yesnoforced.php" hash="0cf0e7842afae56af0caf92c9490295b"/></dir></dir></dir></dir><dir name="Test"><dir name="Config"><file name="Base.php" hash="a1a8faa15e50cd1d394bc79ca94f712b"/></dir><dir name="Controller"><dir name="CatalogSearch"><dir name="fixtures"><file name="search_results.yaml" hash="bfa6ebad238b75d771b89fb369201540"/></dir></dir><file name="CatalogSearch.php" hash="f6c2615ef27061d0cce7e7eae717c040"/></dir><dir name="Helper"><file name="Api.php" hash="c8484c149e920b3f74b8f6f2dce82936"/><file name="Compat.php" hash="8bae993e0da8f368eb50689f271446a5"/><dir name="Config"><dir name="fixtures"><file name="testGetOrderSyncEnabledFlag.yaml" hash="d1427ea15734ca336c47aad51ad7026e"/><file name="testGetOrderSyncFrequency.yaml" hash="52dffcad75b15761a695eb451b99c751"/><file name="testGetProductSyncEnabledFlag.yaml" hash="43e7263c8b781ef7fb6efbb6598f0226"/><file name="testGetProductSyncFrequency.yaml" hash="004e62dfa22c9abfd8dcf56c92270e19"/><file name="testIsExtensionEnabledDisabled.yaml" hash="5d706b347b4f32f87dc8eb4dd6102148"/><file name="testIsExtensionEnabledEnabled.yaml" hash="52c9eb8a4fad4d8f3ba25c68d35977f3"/></dir><dir name="providers"><file name="testIsOrderSyncEnabled.yaml" hash="938cc58e15b310ba2760be6c64e3d3cb"/><file name="testIsProductSyncEnabled.yaml" hash="5be1dcfb21264a012de32cbd252a09c9"/><file name="testIsTestModeEnabled.yaml" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir><file name="Config.php" hash="9ef7b00d63104e11426f3085afa36744"/><dir name="Data"><dir name="providers"><file name="testBytesToHumanReadable.yaml" hash="7cdb8705e108715abc63fa2cfd81626b"/><file name="testGetLanguageFromLocale.yaml" hash="c301f8dc090142627f6af4e4222b7708"/><file name="testHumanReadableToBytes.yaml" hash="dd89ae5b6705cfcfbf42ba64432c0f0a"/><file name="testIsProductionDomain.yaml" hash="f88ef0f80073fdb9cbdbd020348527a7"/></dir></dir><file name="Data.php" hash="93bb38ec55380a6ec7d79008496cac34"/></dir><dir name="Model"><dir name="Api"><dir name="Action"><dir name="Addrecords"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="26eea8bfc58c60e4a2f07dcbddc2e6fd"/><file name="testValidateRequiredFieldsRecords.yaml" hash="590b7ec9b7c33debb740b8c6c6db717f"/><file name="testValidateRequiredFieldsRecordsAllowedEmpty.yaml" hash="f82933b3d219491015cef39a214543bd"/><file name="testValidateRequiredFieldsRecordsEmpty.yaml" hash="d5dcd5aad682db42b1352c35b8905d47"/><file name="testValidateRequiredFieldsRecordsOptional.yaml" hash="25092bb84ba311815ca33971a388256e"/></dir></dir><file name="Addrecords.php" hash="14f5c217fac3f82957f54916fa29b387"/><dir name="Adduser"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="841f068ff3ffd8081ccc91e8675f998c"/></dir></dir><file name="Adduser.php" hash="5189f29f08c4ed30d9b6ac83429de3d0"/><dir name="Addwebstore"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="e52324b58b76d2d63cfa83ee228e1b31"/></dir></dir><file name="Addwebstore.php" hash="fbeac1b8adc5df45ef08a0a3331e5fbc"/><dir name="Getuserdetail"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="297df49838c47536bc9ee928b27470b2"/></dir></dir><file name="Getuserdetail.php" hash="4733d1ec7fd5b3b765aa88f182adf390"/><dir name="Getuserfeaturesdetail"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="e4ef56d9b494fad5392984a144401998"/></dir></dir><file name="Getuserfeaturesdetail.php" hash="601f204cb67a44628c2c951aa8228cd3"/><dir name="Idsearch"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="f36c1a1a1e6d1f5a2d3a59d8d349036e"/></dir></dir><file name="Idsearch.php" hash="4c8849b460a0df494911e3a4df65719c"/><dir name="Producttracking"><dir name="providers"><file name="testValidateRequiredFields.yaml" hash="4bc690980c701649d17ff6caba3ef646"/></dir></dir><file name="Producttracking.php" hash="04d8ef59f24f848d36493aabfa413828"/><file name="Startsession.php" hash="c1ae49d22b5e75672b8d84499d51f3d4"/></dir><file name="Action.php" hash="14ce7e11eb3acfda2dfea539c8f5254b"/><dir name="Request"><dir name="Xml"><dir name="providers"><file name="testGetDataAsXml.yaml" hash="4aa16e3557481444ba39775ee0b99d29"/></dir></dir><file name="Xml.php" hash="279a5defe0c933540e9635455590d8b1"/></dir><file name="Request.php" hash="b0cbdfe6a023d0479dc1b1c7fc6869c0"/><dir name="Response"><dir name="Data"><dir name="providers"><file name="testIsSuccessful.yaml" hash="f085922f4329b3d6b19c1e0010d3ca22"/></dir></dir><file name="Data.php" hash="1ab05c7225658f54bd31f0c205d05a2b"/><file name="Empty.php" hash="9933c42aa9ff06977ca3e53d2de15857"/><file name="Invalid.php" hash="bb68f25a053b7e5fc024bce0f5286fcb"/><dir name="Message"><dir name="providers"><file name="testIsSuccessful.yaml" hash="d53562002270a0c4b58ca94733309a21"/></dir></dir><file name="Message.php" hash="135c0d136fa9d0e86158407fc59294c3"/><dir name="Timezone"><dir name="providers"><file name="testIsSuccessful.yaml" hash="67f35e7ee5081689a1eddb867ae6256d"/></dir></dir><file name="Timezone.php" hash="f9cb063ef1f506f656a25c6206899eb3"/><dir name="providers"><file name="response_testIsSuccessful.yaml" hash="ac214d5ebf1eccb89e8fa85e8e3cbb75"/></dir></dir><file name="Response.php" hash="dbcce43ccb2cdf47bce5c05fcf27e759"/><dir name="Test"><file name="Case.php" hash="ec6d3169b9e2bd26655687124be779dd"/></dir><dir name="data"><file name="data_response_data.xml" hash="cd2e5d3dcac402828b9e5f0b0b637c76"/><file name="data_response_failure.xml" hash="ba677628e68149e0283729c1c8e5e86a"/><file name="data_response_no_response.xml" hash="98944f0eda050221de59100f4b22f030"/><file name="data_response_success.xml" hash="e92d1cfcd4461dc8d3fcabe1f902b40b"/><file name="data_response_success_only.xml" hash="276055d04a3f112efe9e6f1c337d7699"/><file name="feature_response.xml" hash="4d400030f5c322b6ab85ccbc7bcd2c0d"/><file name="message_response_failure.xml" hash="ab63c55523b26bd53ea6abf426dd11f5"/><file name="message_response_missing_message.xml" hash="4a43490eda6f33804ca400da2f9cdac1"/><file name="message_response_missing_status.xml" hash="39103fec18a0be88e4ff00a8149c8ad4"/><file name="message_response_session_id.xml" hash="415f25f79a3795ae70b983504cbb784f"/><file name="message_response_success.xml" hash="3ac53566b3d187cb81eb04d40a195c50"/><file name="response_malformed.xml" hash="bfeb4e75829a42082a7935a8e7be491e"/><file name="response_noxml.xml" hash="2debfdcf79f03e4a65a667d21ef9de14"/><file name="response_valid.xml" hash="c915992330f0e4bd37bb629637139f98"/><file name="search_response_empty.xml" hash="601298402d21f3626052634cbbb0ae72"/><file name="search_response_paged.xml" hash="04203807a1d6df787c54afd84690a50e"/><file name="search_response_sorted.xml" hash="c3ee65658a56f65334417328c7fbdcac"/><file name="search_response_success.xml" hash="fea4e59e7ae6e68b387729e320d5f49c"/><file name="startsession_response_success.xml" hash="1865ee2da80359e5a84914c56cae2c8d"/><file name="timezone_response_no_data.xml" hash="276055d04a3f112efe9e6f1c337d7699"/><file name="timezone_response_no_status.xml" hash="bd695479b03e3607196f01f627af4a45"/><file name="timezone_response_with_failure.xml" hash="69a6b1fa7b2cf087d85be162064525b0"/><file name="timezone_response_with_success.xml" hash="e6888eca066741675d228ba1397b5554"/></dir></dir><dir name="Config"><dir name="Log"><file name="Level.php" hash="2032f568dc75c8a5ff63c7daaf8bd049"/></dir></dir><dir name="Notification"><dir name="fixtures"><file name="testLoad.yaml" hash="305afce09851bb40e8c990c138aff162"/></dir></dir><file name="Notification.php" hash="889ec647dbdb938741cfc75e1baa2bc2"/><dir name="Observer"><dir name="fixtures"><file name="testLandingPageRewritesDisabled.yaml" hash="88f0c274444dbaab4fded639b4f40048"/><file name="testLandingPageRewritesEnabled.yaml" hash="bfe60a7ccc0ac73c664f24a4b7394343"/><file name="testScheduleOrderSync.yaml" hash="170806194b4a1bd7f00bc346a51709e1"/></dir></dir><file name="Observer.php" hash="73349e9c475129197c2cf55a1e1d4cdc"/><dir name="Order"><dir name="Sync"><dir name="fixtures"><file name="testAddOrderToQueue.yaml" hash="c93c3c28273757a13b878f97dd0b9e97"/><file name="testClearQueue.yaml" hash="d7ad7abd553e333e84cbab149cdcfb31"/><file name="testRun.yaml" hash="44f091d24de97d230f61fcaf3689ba81"/></dir></dir><file name="Sync.php" hash="d2166272904e003b6bea3862f66e0235"/></dir><dir name="Product"><dir name="Sync"><dir name="fixtures"><file name="testAddProducts.yaml" hash="0ac9a9e6666f285eff796d30c8e0a4e3"/><file name="testCatalogruleProducts.yaml" hash="c37fe4fe86fda18d9fd90794ea1520e4"/><file name="testClearAllProducts.yaml" hash="b7ec8b285d34a27e1c50d572b5ae8227"/><file name="testDeleteProducts.yaml" hash="22f94366cc64b6980b8d648067920533"/><file name="testRun.yaml" hash="eaac2bf57835625a6cd80294e6c5a99c"/><file name="testSpecialpriceProducts.yaml" hash="7d44672dcf91473c0bf1d9cb523a394a"/><file name="testUpdateProducts.yaml" hash="61266411faa659dc175f75ffbccce97e"/></dir></dir><file name="Sync.php" hash="62c07a8123480172bba781b78103fcf6"/></dir><dir name="Sync"><dir name="providers"><file name="testSchedule.yaml" hash="97f1043c42eb74162ae97941dc920d8f"/></dir></dir><file name="Sync.php" hash="8c091e168e251761be7fb1d1d2149305"/><dir name="System"><dir name="Config"><dir name="Source"><dir name="Test"><dir name="providers"><file name="testIsValidSourceModel.yaml" hash="cfedc94014707ee5586dd212b4d1ee16"/></dir></dir><file name="Test.php" hash="3e915599d4f76a2fbbb20aed9ffdf968"/></dir></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><dir name="Klevu"><file name="NotificationsController.php" hash="880ebe97a3e7f9cd1d8d0da41447ae12"/><dir name="Search"><file name="WizardController.php" hash="89dbef5d4eff9dd2c5d5bfc1e4b6faa9"/></dir><file name="SearchController.php" hash="c74f62fc67d47a81a7d31e72f8be0d28"/></dir></dir><file name="IndexController.php" hash="938643728bbfeaecfee7ad3ec87823fe"/></dir><dir name="etc"><file name="adminhtml.xml" hash="6ce395b9dec2d88a7709d0917c13d50f"/><file name="config.xml" hash="2d6707829052559ee94676ee21c30395"/><file name="system.xml" hash="4b9bd118de9292db80b2ba1a7fbbb3f0"/></dir><dir name="sql"><dir name="klevu_search_setup"><file name="mysql4-data-upgrade-1.1.1-1.1.2.php" hash="a65f702cf64af452f2fb6f6cdac130a7"/><file name="mysql4-data-upgrade-1.1.22-1.1.23.php" hash="79a74acda887a3a5e435a4793bd39dfd"/><file name="mysql4-data-upgrade-1.1.25-1.1.26.php" hash="0c31a59a5562739a00909738ef26d742"/><file name="mysql4-data-upgrade-1.1.27-1.1.28.php" hash="b9dcc6b50d2177976e13b61064adfa2a"/><file name="mysql4-install-1.0.0.php" hash="028831a3f92cf63768a5b43beba06e75"/></dir></dir></dir><dir name="Searchterms"><dir name="Block"><dir name="Catalog"><dir name="Product"><file name="Popularterms.php" hash="aa85fe13044e5477b08dc8b5b5b9da24"/></dir></dir><file name="Popularterms.php" hash="aa85fe13044e5477b08dc8b5b5b9da24"/></dir><dir name="Helper"><file name="Data.php" hash="8e9151b766cdb3eda6f78063c3abbe08"/></dir><dir name="Model"><dir name="Api"><dir name="Action"><file name="Boostingscore.php" hash="13ab65ce0a7109d71b6764495cee7790"/><file name="Popularterms.php" hash="8551ebb57c02e80cf36497f324b55955"/></dir></dir><file name="Observer.php" hash="38538cda2093dfa3502b2ba5dd3dd833"/><dir name="Product"><file name="Seo.php" hash="52dcabcd7be98ccceaa2d3cdea6aaa6c"/></dir></dir><dir name="controllers"><file name="IndexController.php" hash="4578e1f39d16335c7a3acd9bb6fdc560"/></dir><dir name="etc"><file name="config.xml" hash="5c8664b8fa4997b2b762e571111868da"/><file name="system.xml" hash="17b7d94f5635e3cbbdaa164ced250e0d"/></dir><dir name="sql"><dir name="klevu_searchterms_setup"><file name="mysql4-data-upgrade-10.0.0-10.0.1.php" hash="d41d8cd98f00b204e9800998ecf8427e"/><file name="mysql4-install-10.0.0.php" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir><dir name="Addtocart"><dir name="Helper"><file name="Data.php" hash="1cf568a02f4d4a319683c986201934e7"/></dir><dir name="etc"><file name="config.xml" hash="bb74783fa2486f42a92efc93ac1b1e8e"/><file name="system.xml" hash="5f214a95e3095fbd78a17f69bf5dc249"/></dir></dir><dir name="Content"><dir name="Block"><dir name="Adminhtml"><dir name="Form"><file name="Cmspages.php" hash="74fc3262b45481e33dad508f48002746"/><dir name="System"><dir name="Config"><dir name="Field"><file name="Select.php" hash="a42ac33f00dfd9346479143ac910f53f"/></dir></dir></dir></dir><dir name="Wizard"><dir name="Configure"><file name="Store.php" hash="6926f8cc65cdcf47bdc89d5067a1e0e4"/></dir></dir></dir><file name="Index.php" hash="4e40ebae7545e7a61a2fcd8da21b7e64"/><file name="Tracking.php" hash="15150693e0d1a6167960f3f96ea3ed22"/></dir><dir name="Helper"><file name="Data.php" hash="3fa32fbc5a5a3ed4396149bdf1fd8e4a"/></dir><dir name="Model"><file name="Content.php" hash="889d353af39dc2c9426faf4bc11c04a5"/><file name="Observer.php" hash="e3f82254218a2db909ecb1d9a2a69b37"/></dir><dir name="Test"><dir name="Controller"><dir name="ContentSearch"><dir name="fixtures"><file name="content_search_results.yaml" hash="952b8215496a66cca9563eea08030f8a"/></dir></dir><file name="ContentSearch.php" hash="9b0e012f2c9bf7d33394361f880020af"/></dir><dir name="Helper"><dir name="Data"><dir name="fixtures"><file name="content_search_results.yaml" hash="65a8b23a351f8b87c2993301361d9191"/><file name="testIsCmsEnabledDisabled.yaml" hash="24e89be563a355b9dcfd6016eb7fe3e2"/><file name="testIsCmsEnabledEnabled.yaml" hash="8903e1fc649bb70f4d76454fced95e2a"/></dir><dir name="providers"><file name="testGetExcludedCmsPages.yaml" hash="954599a138a65fecd75da2366aa6b515"/><file name="testIsCmsSyncEnabled.yaml" hash="9c3006c510c146f6511cae9287b3fdb8"/></dir></dir><file name="Data.php" hash="a8ee9e9d91eece007d94c0d92ddb654b"/></dir><dir name="Model"><dir name="Api"><dir name="data"><file name="message_response_content_success.xml" hash="3ac53566b3d187cb81eb04d40a195c50"/><file name="search_response_empty.xml" hash="39b739de681275c6a192dcd4ce796207"/><file name="search_response_success.xml" hash="15fea6ab852abd01c9630c86b895d773"/><file name="startsession_response_content_success.xml" hash="5fd26f817657ca9e1c1980d59219b28e"/></dir></dir><dir name="Content"><dir name="fixtures"><file name="testAddCms.yaml" hash="3054d1f054399ac080721e9a03be5f0e"/><file name="testClearAllProducts.yaml" hash="b7ec8b285d34a27e1c50d572b5ae8227"/><file name="testCmsRun.yaml" hash="074c89e69ec7a903f224ea430534c12d"/><file name="testDeleteCms.yaml" hash="21071d067eb03b1e546d1e12fe70955b"/><file name="testUpdateCms.yaml" hash="0e3a9db13fdee6858284ebb8b1d31083"/></dir></dir><file name="Content.php" hash="4d2f4c54d5389c686cd745c28fa97d40"/></dir></dir><dir name="controllers"><file name="SearchController.php" hash="b84ae7ea7a66f7c7f78c54fa7afdcfd1"/></dir><dir name="etc"><file name="config.xml" hash="c0e3647d7d4f067f14a45ab037cfc2c8"/><file name="system.xml" hash="de4dfb0d239a9d498c3157ce14d2fd57"/></dir><dir name="sql"><dir name="klevu_content_setup"><file name="mysql4-install-0.1.0.php" hash="d41d8cd98f00b204e9800998ecf8427e"/></dir></dir></dir></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="template"><dir name="klevu"><dir name="boosting"><dir name="form"><dir name="field"><dir name="rule"><file name="button.phtml" hash="f27feff3fad2bbcd68b56df38de5cc83"/></dir></dir></dir></dir><dir name="search"><dir name="form"><dir name="field"><file name="array_readonly.phtml" hash="d3a3be4cf22f89d84bd73121a1adfa86"/><dir name="sync"><file name="button.phtml" hash="dae55579390ed8b72e1fadcbb538442b"/><file name="logbutton.phtml" hash="d31dd881015319d78d9fb2b83874f296"/></dir></dir><file name="information.phtml" hash="9014ac2b78bf4f22be503208b377dc2c"/><file name="klevuinfo.phtml" hash="ea29b14b8f9b794f22465a6695a0e2ae"/><file name="quickinfo.phtml" hash="a383bb10176e87206954b5e379d20c7f"/></dir><file name="notifications.phtml" hash="090714ca57b11d24769c1baa1bcd4615"/><dir name="system"><dir name="config"><dir name="form"><dir name="field"><file name="array.phtml" hash="2e55476e647b79114b28d0a3a02704d5"/></dir></dir></dir></dir><dir name="wizard"><file name="complete.phtml" hash="7cf33a9a829eb07148d16da5056324dd"/><dir name="config"><file name="button.phtml" hash="b1644ee569882b05c2d8cb2f1eecddbc"/></dir><dir name="configure"><file name="attributes.phtml" hash="d54f0a86e78390fbe66825d0771aad25"/><file name="store.phtml" hash="c3a4fce90c554be53ecca58a41c2813d"/><file name="user.phtml" hash="e5678d947c0ccd6f14a23be3df7e9d7d"/><file name="userplan.phtml" hash="07adcbd6b363d6ba29d05bd082fde380"/></dir><dir name="form"><dir name="field"><file name="array.phtml" hash="ccdccab02fbd9cfc2145f094d5e12a2e"/></dir></dir></dir></dir></dir></dir><dir name="layout"><dir name="klevu"><file name="boosting.xml" hash="c17c262a50d6dfa4dc3ee6dbaac18432"/><file name="search.xml" hash="26cef989bb342bad783f5d8fc6a49e7f"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="template"><dir name="klevu"><dir name="addtocart"><file name="index.phtml" hash="5697e2f53a92173a1ce89a933ac674f4"/><file name="index.phtml" hash="5697e2f53a92173a1ce89a933ac674f4"/></dir><dir name="content"><file name="content_tracking.phtml" hash="54dc6f0ce8112013c1bcaad01899d7bc"/><file name="index.phtml" hash="a6fdec47b211db2177c9ceba0683d302"/><file name="left.phtml" hash="51f0cad58008a71a27e44377319fa044"/><file name="search.phtml" hash="b22a3597fa610ce0f3a77d47422d42ac"/><file name="top.phtml" hash="2e2e3484388be8eed022ff541fc354f5"/><file name="type_of_query.phtml" hash="25b05bfe942a3bba838a44a8e150a453"/><file name="content_tracking.phtml" hash="54dc6f0ce8112013c1bcaad01899d7bc"/><file name="index.phtml" hash="a6fdec47b211db2177c9ceba0683d302"/><file name="left.phtml" hash="51f0cad58008a71a27e44377319fa044"/><file name="search.phtml" hash="b22a3597fa610ce0f3a77d47422d42ac"/><file name="top.phtml" hash="2e2e3484388be8eed022ff541fc354f5"/><file name="type_of_query.phtml" hash="25b05bfe942a3bba838a44a8e150a453"/></dir><dir name="learning"><file name="category.phtml" hash="ce6ab73d3c9f2a36ac0d34e7a0cf3280"/><file name="category_tracking.phtml" hash="b825ba28a49b9ebb2e4d15ac5459fbf4"/></dir><dir name="search"><file name="form_js.phtml" hash="a5141d394a3b34b57ceea83031400081"/><file name="index.phtml" hash="abdd1e62171a43fee32e35ac42099843"/><file name="klevulog.phtml" hash="9cebbd9ec162570768aefc30c777fb78"/><file name="product_tracking.phtml" hash="e773b0cfcc8c3649bf26cc83d71345ec"/><file name="form_js.phtml" hash="a5141d394a3b34b57ceea83031400081"/><file name="index.phtml" hash="abdd1e62171a43fee32e35ac42099843"/><file name="klevulog.phtml" hash="9cebbd9ec162570768aefc30c777fb78"/><file name="product_tracking.phtml" hash="e773b0cfcc8c3649bf26cc83d71345ec"/></dir><dir name="searchterm"><file name="popular_searchterms.phtml" hash="4306a14ced0036bdb72158e11d4091d3"/></dir></dir></dir><dir name="layout"><dir name="klevu"><file name="search.xml" hash="7c581fe86dd6379ccdfdfce5120e43ca"/><file name="addtocart.xml" hash="78bb1c4910c4c2c37b49a9c36446f9d5"/><file name="content.xml" hash="b420ba1cceb6b45e8eb1754370439da1"/><file name="searchterms.xml" hash="c0db7111782ef105d6c44281b5a95303"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="js"><dir name="klevu"><dir name="search"><dir name="lib"><file name="Wizard.js" hash="359afd117dc5cc7ccd14c838eacb573d"/></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="klevu"><dir name="search"><file name="klevumagestyle.css" hash="1e014f38c2169e415e01b24cba8fa6a0"/><file name="notifications.css" hash="019a5a055bc621cb0f4c166ab8e5604c"/><file name="wizard.css" hash="824f735715f3ed97ce98414b9895e46b"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="css"><dir name="klevu"><dir name="content"><file name="klevu-landing-left.css" hash="38c63d7796e4e33b212a1d8b044d0a91"/></dir><file name="klevu-landing-page-style.css" hash="38e82d8de2a33cf7c17dacbb450bdb3b"/><file name="klevu-landing-responsive.css" hash="811e1bfece09ba7d5529fec850963ac6"/><dir name="search"><file name="klevu-search-term.css" hash="e7e3f2e24073e6fa0949ac157d6d4d34"/></dir></dir></dir><dir name="images"><dir name="klevu"><file name="btn-gridview.png" hash="c3dd97f4f53e1dfe34b6c5b6b4237b8a"/><file name="btn-listview.png" hash="00aaaa62d67e252248d6075f53b04f7f"/><file name="ku-loader.gif" hash="6050f5bcf455cc8f0332dd65e72f8e52"/></dir></dir></dir></dir></dir></target><target name="mage"><dir name="shell"><dir name="klevu"><file name="sync.php" hash="0e64d2d858a047ee2fdaf376f8c5cbca"/></dir></dir></target></contents>
|
29 |
<compatible/>
|
30 |
<dependencies><required><php><min>5.3.0</min><max>5.6.18</max></php></required></dependencies>
|
31 |
</package>
|
shell/klevu/sync.php
ADDED
@@ -0,0 +1,57 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
require_once('../abstract.php');
|
3 |
+
class Klevu_Shell_Sync extends Mage_Shell_Abstract
|
4 |
+
{
|
5 |
+
protected $_argname = array();
|
6 |
+
|
7 |
+
public function __construct() {
|
8 |
+
parent::__construct();
|
9 |
+
|
10 |
+
// Time limit to infinity
|
11 |
+
set_time_limit(0);
|
12 |
+
}
|
13 |
+
|
14 |
+
// Shell script point of entry
|
15 |
+
public function run() {
|
16 |
+
try {
|
17 |
+
if ($this->getArg('updatesonly')) {
|
18 |
+
Mage::getModel('klevu_search/product_sync')->run();
|
19 |
+
Mage::getModel("content/content")->run();
|
20 |
+
echo "Data updates have been sent to Klevu";
|
21 |
+
} else if($this->getArg('alldata')) {
|
22 |
+
// Modified the updated date klevu_product_sync table
|
23 |
+
Mage::getModel('klevu_search/product_sync')->markAllProductsForUpdate();
|
24 |
+
// Run the product sync for all store
|
25 |
+
Mage::getModel('klevu_search/product_sync')->run();
|
26 |
+
Mage::getModel("content/content")->run();
|
27 |
+
echo "All Data have been sent to Klevu";
|
28 |
+
|
29 |
+
} else {
|
30 |
+
echo $this->usageHelp();
|
31 |
+
}
|
32 |
+
} catch(Exception $e){
|
33 |
+
echo $e->getMessage();
|
34 |
+
}
|
35 |
+
|
36 |
+
}
|
37 |
+
|
38 |
+
// Usage instructions
|
39 |
+
public function usageHelp()
|
40 |
+
{
|
41 |
+
return <<<USAGE
|
42 |
+
|
43 |
+
Usage: php -f sync.php -- [options]
|
44 |
+
|
45 |
+
--updatesonly If you are using this option, only the products updated since the last successful synchronization will be synchronized with the Klevu servers. Klevu uses the updated_at timestamp of the catalog_product_entity table to figure out which products to synchronize.
|
46 |
+
|
47 |
+
--alldata If you are using this option, the entire product catalog is considered for synchronization.
|
48 |
+
|
49 |
+
USAGE;
|
50 |
+
}
|
51 |
+
}
|
52 |
+
// Instantiate
|
53 |
+
$shell = new Klevu_Shell_Sync();
|
54 |
+
|
55 |
+
// Initiate script
|
56 |
+
$shell->run();
|
57 |
+
?>
|
skin/frontend/base/default/css/klevu/klevu-landing-page-style.css
CHANGED
@@ -5,7 +5,7 @@
|
|
5 |
.kuContainer{
|
6 |
width:100%;
|
7 |
margin:0 auto;
|
8 |
-
font-family:inherit;
|
9 |
font-size:12px;
|
10 |
}
|
11 |
|
@@ -18,24 +18,28 @@
|
|
18 |
/* klevu filters */
|
19 |
.kuFilters{
|
20 |
float:left;
|
21 |
-
width:
|
22 |
border:1px solid #ccc;
|
|
|
23 |
}
|
24 |
|
25 |
/* set the height of each filter*/
|
26 |
-
.kuFilterBox{
|
27 |
height:150px;
|
28 |
overflow:hidden;
|
|
|
29 |
}
|
30 |
|
31 |
/* heading of filters i.e brand, color */
|
32 |
-
.kuFilterHead{
|
33 |
padding: 8px;
|
34 |
-
font-weight: bold;
|
35 |
-
font-size:
|
36 |
text-align: left;
|
37 |
-
|
38 |
-
|
|
|
|
|
39 |
}
|
40 |
|
41 |
/* down arrow div in filters */
|
@@ -86,24 +90,27 @@
|
|
86 |
position: relative;
|
87 |
overflow: hidden;
|
88 |
margin: 0 5px;
|
89 |
-
line-height:
|
90 |
padding-left: 5px;
|
91 |
padding-right: 5px;
|
92 |
-
font-size:
|
93 |
text-decoration: none;
|
94 |
cursor: pointer;
|
95 |
font-style:normal;
|
|
|
96 |
}
|
97 |
|
98 |
/* set background color on hover of filter */
|
99 |
.kuFilterNames ul li a:hover{
|
100 |
-
background-color
|
101 |
cursor: pointer;
|
|
|
102 |
}
|
103 |
|
|
|
104 |
/* set background color for selected filter */
|
105 |
.kuFilterNames ul li.kuSelected a{
|
106 |
-
background-color
|
107 |
color: #fff;
|
108 |
}
|
109 |
|
@@ -121,6 +128,7 @@
|
|
121 |
float:right;
|
122 |
width:13%;
|
123 |
text-align:right;
|
|
|
124 |
}
|
125 |
|
126 |
/* shows cancel button if filter is selected */
|
@@ -131,15 +139,19 @@
|
|
131 |
font-size:10px;
|
132 |
}
|
133 |
|
|
|
|
|
|
|
|
|
134 |
/* klevu results box */
|
135 |
.kuResultList{
|
136 |
float:right;
|
137 |
-
width:
|
138 |
}
|
139 |
|
140 |
/* div for Sorting, pagination, change result view icons*/
|
141 |
.kuSortHeader{
|
142 |
-
margin:5px;
|
143 |
padding-top: 0px;
|
144 |
margin-top: 0px;
|
145 |
}
|
@@ -163,24 +175,30 @@
|
|
163 |
}
|
164 |
|
165 |
.kuTotalResultsTab a{
|
166 |
-
padding:8px;
|
167 |
cursor:pointer;
|
|
|
168 |
border-radius:3px;
|
|
|
169 |
}
|
170 |
|
171 |
.kuTotalResultsTab a:hover{
|
172 |
-
background-color:#eee;
|
|
|
173 |
}
|
174 |
|
175 |
.kuTotalResultsTab a.kuTabSelected{
|
176 |
-
background-color
|
177 |
color:#fff;
|
178 |
}
|
179 |
|
180 |
.kuSortingOpt{
|
181 |
-
background-color
|
182 |
-
border:1px solid #ccc;
|
183 |
-
|
|
|
|
|
|
|
184 |
}
|
185 |
|
186 |
/* div to display sorting dropdown */
|
@@ -312,16 +330,25 @@
|
|
312 |
}
|
313 |
|
314 |
.kuClearLeft{
|
315 |
-
clear:left;
|
316 |
line-height:0px;
|
317 |
}
|
318 |
|
|
|
|
|
|
|
|
|
|
|
319 |
|
320 |
/* klevu results div */
|
321 |
.kuResults{
|
322 |
margin-top:10px;
|
323 |
}
|
324 |
|
|
|
|
|
|
|
|
|
325 |
/* styles for list view results */
|
326 |
.kuListView{
|
327 |
margin-top:10px;
|
@@ -336,11 +363,16 @@
|
|
336 |
.kuListView ul li{
|
337 |
position:relative;
|
338 |
display:block;
|
339 |
-
width: 98
|
340 |
height: auto;
|
341 |
padding: 10px;
|
342 |
-
border
|
343 |
text-align:left;
|
|
|
|
|
|
|
|
|
|
|
344 |
}
|
345 |
|
346 |
/* In LISTVIEW: for wrapping the image in fixed size div */
|
@@ -393,7 +425,7 @@
|
|
393 |
/* In LISTVIEW: display product name and description */
|
394 |
.kuListView ul li .kuNameDesc{
|
395 |
float:left;
|
396 |
-
width:
|
397 |
margin-left:5px;
|
398 |
}
|
399 |
|
@@ -409,11 +441,12 @@
|
|
409 |
|
410 |
/* In LISTVIEW: set product name color and font size */
|
411 |
.kuListView ul li .kuName a{
|
412 |
-
font-size:14px;
|
413 |
text-decoration:none;
|
414 |
color:inherit;
|
415 |
-
font-weight:
|
416 |
font-style:normal;
|
|
|
417 |
}
|
418 |
|
419 |
.kuListView ul li .kuName a:hover{
|
@@ -432,9 +465,10 @@
|
|
432 |
|
433 |
/* In LISTVIEW: div to display saleprice */
|
434 |
.kuListView ul li .kuSalePrice{
|
435 |
-
font-weight:bold;
|
436 |
-
font-size:
|
437 |
margin-bottom:5px;
|
|
|
438 |
}
|
439 |
|
440 |
/* In LISTVIEW: div to display original price with line-through style */
|
@@ -462,43 +496,43 @@
|
|
462 |
/* In GRIDVIEW: list style for each result */
|
463 |
.kuGridView ul li{
|
464 |
display: inline-block;
|
465 |
-
width:
|
466 |
-
min-height:
|
467 |
padding: 0;
|
468 |
vertical-align: top;
|
469 |
-
border
|
470 |
text-align:center;
|
471 |
-
margin:
|
472 |
padding-top:15px;
|
473 |
margin-left:0px !important;
|
|
|
474 |
font-style:normal;
|
475 |
position:relative;
|
476 |
}
|
477 |
|
478 |
-
.kuGridView ul li:
|
479 |
-
border
|
480 |
}
|
481 |
|
482 |
/* In GRIDVIEW: for wrapping the image in fixed size div */
|
483 |
-
.kuGridView .klevuImgWrap{
|
484 |
float:none;
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
text-align:center;
|
490 |
margin:0 auto;
|
491 |
}
|
492 |
|
493 |
/* In GRIDVIEW: thumbnail of the product */
|
494 |
.kuGridView img{
|
495 |
max-width:100% !important;
|
496 |
-
max-height:140px !important;
|
497 |
height:auto;
|
498 |
width:auto;
|
499 |
border:none;
|
500 |
outline:none;
|
501 |
-
|
502 |
}
|
503 |
|
504 |
.kuGridView ul li .kuDiscountBadge{
|
@@ -526,7 +560,7 @@
|
|
526 |
}
|
527 |
|
528 |
.kuGridView ul li .kuName{
|
529 |
-
padding:5px;
|
530 |
min-height:45px;
|
531 |
}
|
532 |
|
@@ -547,27 +581,25 @@
|
|
547 |
/* CSS for add to cart button */
|
548 |
.kuGridView ul li .kuAddtocart{
|
549 |
display:block;
|
550 |
-
height:20px;
|
551 |
margin-top:20px;
|
|
|
|
|
552 |
}
|
553 |
|
554 |
.kuGridView ul li input[type="text"]{
|
555 |
-
display:
|
556 |
width:25%;
|
557 |
-
float:left;
|
558 |
border:1px solid #ddd;
|
559 |
outline:none;
|
560 |
text-align:right;
|
561 |
}
|
562 |
|
563 |
.kuGridView ul li a.kuAddtocartBtn{
|
564 |
-
display:
|
565 |
-
background: #
|
566 |
-
float:right;
|
567 |
color: #fff;
|
568 |
-
width:
|
569 |
-
padding
|
570 |
-
padding-bottom:6px;
|
571 |
margin-bottom: 0;
|
572 |
text-align: center;
|
573 |
vertical-align: middle;
|
@@ -578,22 +610,31 @@
|
|
578 |
-ms-user-select: none;
|
579 |
-o-user-select: none;
|
580 |
text-decoration:none;
|
|
|
|
|
|
|
|
|
581 |
|
|
|
|
|
|
|
|
|
582 |
}
|
583 |
|
584 |
.kuListView ul li input[type="text"]{
|
585 |
width:5%;
|
586 |
-
float:none;
|
587 |
border:1px solid #ddd;
|
588 |
outline:none;
|
589 |
text-align:right;
|
|
|
590 |
}
|
591 |
|
592 |
.kuListView ul li a.kuAddtocartBtn{
|
593 |
-
background: #
|
594 |
float:none;
|
595 |
color: #fff;
|
596 |
-
width:
|
597 |
padding-top:6px;
|
598 |
padding-bottom:6px;
|
599 |
padding:6px;
|
@@ -607,13 +648,13 @@
|
|
607 |
-ms-user-select: none;
|
608 |
-o-user-select: none;
|
609 |
text-decoration:none;
|
610 |
-
|
611 |
}
|
612 |
|
613 |
|
614 |
/* In GRIDVIEW: set product name color and font size */
|
615 |
.kuGridView ul li .kuName a{
|
616 |
-
font-size:
|
617 |
text-decoration:none;
|
618 |
color:inherit;
|
619 |
font-style:normal;
|
@@ -633,9 +674,14 @@
|
|
633 |
|
634 |
/* In GRIDVIEW: div to display saleprice */
|
635 |
.kuGridView ul li .kuSalePrice{
|
636 |
-
font-
|
637 |
-
font-
|
638 |
-
|
|
|
|
|
|
|
|
|
|
|
639 |
}
|
640 |
|
641 |
/* In GRIDVIEW: div to display original price with line-through style */
|
@@ -652,9 +698,10 @@
|
|
652 |
|
653 |
/* pagination links at bottom of results */
|
654 |
.kuBottomPagi{
|
655 |
-
padding:
|
656 |
-
background-color
|
657 |
-
border:1px solid #ccc;
|
|
|
658 |
}
|
659 |
|
660 |
.kuBottomPagi .kuPerPage{
|
@@ -708,4 +755,4 @@
|
|
708 |
.disableKuFilter{
|
709 |
opacity:0.3;
|
710 |
pointer-events: none;
|
711 |
-
}
|
5 |
.kuContainer{
|
6 |
width:100%;
|
7 |
margin:0 auto;
|
8 |
+
font-family: inherit;
|
9 |
font-size:12px;
|
10 |
}
|
11 |
|
18 |
/* klevu filters */
|
19 |
.kuFilters{
|
20 |
float:left;
|
21 |
+
width: 20%;
|
22 |
border:1px solid #ccc;
|
23 |
+
border-top: none;
|
24 |
}
|
25 |
|
26 |
/* set the height of each filter*/
|
27 |
+
.kuFilterBox{
|
28 |
height:150px;
|
29 |
overflow:hidden;
|
30 |
+
margin-bottom: 20px;
|
31 |
}
|
32 |
|
33 |
/* heading of filters i.e brand, color */
|
34 |
+
.kuFilterHead{
|
35 |
padding: 8px;
|
36 |
+
/* font-weight: bold; */
|
37 |
+
font-size: 14px;
|
38 |
text-align: left;
|
39 |
+
line-height: 1.4;
|
40 |
+
background-color: #f4f4f4;
|
41 |
+
border-bottom: 1px solid #cccccc;
|
42 |
+
border-top: 1px solid #cccccc;
|
43 |
}
|
44 |
|
45 |
/* down arrow div in filters */
|
90 |
position: relative;
|
91 |
overflow: hidden;
|
92 |
margin: 0 5px;
|
93 |
+
line-height: 22px;
|
94 |
padding-left: 5px;
|
95 |
padding-right: 5px;
|
96 |
+
font-size: 14px;
|
97 |
text-decoration: none;
|
98 |
cursor: pointer;
|
99 |
font-style:normal;
|
100 |
+
font-family: inherit;
|
101 |
}
|
102 |
|
103 |
/* set background color on hover of filter */
|
104 |
.kuFilterNames ul li a:hover{
|
105 |
+
background-color: #888888;
|
106 |
cursor: pointer;
|
107 |
+
color:#fff;
|
108 |
}
|
109 |
|
110 |
+
|
111 |
/* set background color for selected filter */
|
112 |
.kuFilterNames ul li.kuSelected a{
|
113 |
+
background-color: #888888;
|
114 |
color: #fff;
|
115 |
}
|
116 |
|
128 |
float:right;
|
129 |
width:13%;
|
130 |
text-align:right;
|
131 |
+
color: #a0a0a0;
|
132 |
}
|
133 |
|
134 |
/* shows cancel button if filter is selected */
|
139 |
font-size:10px;
|
140 |
}
|
141 |
|
142 |
+
.kuFilterNames ul li a:hover span.kuFilterTotal{
|
143 |
+
color:#fff;
|
144 |
+
}
|
145 |
+
|
146 |
/* klevu results box */
|
147 |
.kuResultList{
|
148 |
float:right;
|
149 |
+
width: 78%;
|
150 |
}
|
151 |
|
152 |
/* div for Sorting, pagination, change result view icons*/
|
153 |
.kuSortHeader{
|
154 |
+
/* margin:5px; */
|
155 |
padding-top: 0px;
|
156 |
margin-top: 0px;
|
157 |
}
|
175 |
}
|
176 |
|
177 |
.kuTotalResultsTab a{
|
178 |
+
padding:8px;
|
179 |
cursor:pointer;
|
180 |
+
font-size: 14px;
|
181 |
border-radius:3px;
|
182 |
+
margin-right: 10px;
|
183 |
}
|
184 |
|
185 |
.kuTotalResultsTab a:hover{
|
186 |
+
background-color:#eee;
|
187 |
+
text-decoration:none;
|
188 |
}
|
189 |
|
190 |
.kuTotalResultsTab a.kuTabSelected{
|
191 |
+
background-color: #888888;
|
192 |
color:#fff;
|
193 |
}
|
194 |
|
195 |
.kuSortingOpt{
|
196 |
+
background-color: #f4f4f4;
|
197 |
+
border-top: 1px solid #ccc;
|
198 |
+
border-bottom: 1px solid #ccc;
|
199 |
+
padding: 8px;
|
200 |
+
padding-left: 12px;
|
201 |
+
width: 98%;
|
202 |
}
|
203 |
|
204 |
/* div to display sorting dropdown */
|
330 |
}
|
331 |
|
332 |
.kuClearLeft{
|
333 |
+
clear:left;
|
334 |
line-height:0px;
|
335 |
}
|
336 |
|
337 |
+
.klevu-clearboth-listview{
|
338 |
+
clear:left;
|
339 |
+
|
340 |
+
}
|
341 |
+
|
342 |
|
343 |
/* klevu results div */
|
344 |
.kuResults{
|
345 |
margin-top:10px;
|
346 |
}
|
347 |
|
348 |
+
.kuOtherContentView{
|
349 |
+
margin-top:10px;
|
350 |
+
}
|
351 |
+
|
352 |
/* styles for list view results */
|
353 |
.kuListView{
|
354 |
margin-top:10px;
|
363 |
.kuListView ul li{
|
364 |
position:relative;
|
365 |
display:block;
|
366 |
+
width: 98%;
|
367 |
height: auto;
|
368 |
padding: 10px;
|
369 |
+
border: 1px solid #eee;
|
370 |
text-align:left;
|
371 |
+
margin-bottom: 32px;
|
372 |
+
}
|
373 |
+
|
374 |
+
.kuListView ul li:hover{
|
375 |
+
border: 1px solid #cccccc;
|
376 |
}
|
377 |
|
378 |
/* In LISTVIEW: for wrapping the image in fixed size div */
|
425 |
/* In LISTVIEW: display product name and description */
|
426 |
.kuListView ul li .kuNameDesc{
|
427 |
float:left;
|
428 |
+
width: 52%;
|
429 |
margin-left:5px;
|
430 |
}
|
431 |
|
441 |
|
442 |
/* In LISTVIEW: set product name color and font size */
|
443 |
.kuListView ul li .kuName a{
|
444 |
+
font-size: 14px;
|
445 |
text-decoration:none;
|
446 |
color:inherit;
|
447 |
+
font-weight: 500;
|
448 |
font-style:normal;
|
449 |
+
text-transform: uppercase;
|
450 |
}
|
451 |
|
452 |
.kuListView ul li .kuName a:hover{
|
465 |
|
466 |
/* In LISTVIEW: div to display saleprice */
|
467 |
.kuListView ul li .kuSalePrice{
|
468 |
+
font-weight:bold;
|
469 |
+
font-size: 16px;
|
470 |
margin-bottom:5px;
|
471 |
+
font-family: inherit;
|
472 |
}
|
473 |
|
474 |
/* In LISTVIEW: div to display original price with line-through style */
|
496 |
/* In GRIDVIEW: list style for each result */
|
497 |
.kuGridView ul li{
|
498 |
display: inline-block;
|
499 |
+
width: 23.5%;
|
500 |
+
min-height: 335px;
|
501 |
padding: 0;
|
502 |
vertical-align: top;
|
503 |
+
border: 1px solid #eeeeee;
|
504 |
text-align:center;
|
505 |
+
margin: 8px;
|
506 |
padding-top:15px;
|
507 |
margin-left:0px !important;
|
508 |
+
margin-bottom: 40px;
|
509 |
font-style:normal;
|
510 |
position:relative;
|
511 |
}
|
512 |
|
513 |
+
.kuGridView ul li:hover{
|
514 |
+
border: 1px solid #cccccc;
|
515 |
}
|
516 |
|
517 |
/* In GRIDVIEW: for wrapping the image in fixed size div */
|
518 |
+
.kuGridView .klevuImgWrap{
|
519 |
float:none;
|
520 |
+
overflow:hidden;
|
521 |
+
width: 100% !important;
|
522 |
+
height: 160px !important;
|
523 |
+
text-align:center;
|
|
|
524 |
margin:0 auto;
|
525 |
}
|
526 |
|
527 |
/* In GRIDVIEW: thumbnail of the product */
|
528 |
.kuGridView img{
|
529 |
max-width:100% !important;
|
530 |
+
max-height: 140px !important;
|
531 |
height:auto;
|
532 |
width:auto;
|
533 |
border:none;
|
534 |
outline:none;
|
535 |
+
display:inline-block !important;
|
536 |
}
|
537 |
|
538 |
.kuGridView ul li .kuDiscountBadge{
|
560 |
}
|
561 |
|
562 |
.kuGridView ul li .kuName{
|
563 |
+
padding:5px;
|
564 |
min-height:45px;
|
565 |
}
|
566 |
|
581 |
/* CSS for add to cart button */
|
582 |
.kuGridView ul li .kuAddtocart{
|
583 |
display:block;
|
|
|
584 |
margin-top:20px;
|
585 |
+
margin-bottom: 10px;
|
586 |
+
width: 100%;
|
587 |
}
|
588 |
|
589 |
.kuGridView ul li input[type="text"]{
|
590 |
+
display: none;
|
591 |
width:25%;
|
|
|
592 |
border:1px solid #ddd;
|
593 |
outline:none;
|
594 |
text-align:right;
|
595 |
}
|
596 |
|
597 |
.kuGridView ul li a.kuAddtocartBtn{
|
598 |
+
display: block;
|
599 |
+
background: #3399cc;
|
|
|
600 |
color: #fff;
|
601 |
+
width: 60%;
|
602 |
+
padding: 7px 15px;
|
|
|
603 |
margin-bottom: 0;
|
604 |
text-align: center;
|
605 |
vertical-align: middle;
|
610 |
-ms-user-select: none;
|
611 |
-o-user-select: none;
|
612 |
text-decoration:none;
|
613 |
+
font-size: 13px;
|
614 |
+
line-height: 19px;
|
615 |
+
margin: 0 auto;
|
616 |
+
}
|
617 |
|
618 |
+
.kuListView ul li .kuAddtocart{
|
619 |
+
width: 15%;
|
620 |
+
float:left;
|
621 |
+
margin-top: 20px;
|
622 |
}
|
623 |
|
624 |
.kuListView ul li input[type="text"]{
|
625 |
width:5%;
|
626 |
+
float:none;
|
627 |
border:1px solid #ddd;
|
628 |
outline:none;
|
629 |
text-align:right;
|
630 |
+
display: none;
|
631 |
}
|
632 |
|
633 |
.kuListView ul li a.kuAddtocartBtn{
|
634 |
+
background: #3399cc;
|
635 |
float:none;
|
636 |
color: #fff;
|
637 |
+
width: 92%;
|
638 |
padding-top:6px;
|
639 |
padding-bottom:6px;
|
640 |
padding:6px;
|
648 |
-ms-user-select: none;
|
649 |
-o-user-select: none;
|
650 |
text-decoration:none;
|
651 |
+
display: block;
|
652 |
}
|
653 |
|
654 |
|
655 |
/* In GRIDVIEW: set product name color and font size */
|
656 |
.kuGridView ul li .kuName a{
|
657 |
+
font-size: 14px;
|
658 |
text-decoration:none;
|
659 |
color:inherit;
|
660 |
font-style:normal;
|
674 |
|
675 |
/* In GRIDVIEW: div to display saleprice */
|
676 |
.kuGridView ul li .kuSalePrice{
|
677 |
+
font-size: 16px;
|
678 |
+
font-weight:bold;
|
679 |
+
font-family: inherit;
|
680 |
+
}
|
681 |
+
|
682 |
+
.priceGreyText{
|
683 |
+
font-size:11px;
|
684 |
+
color: #636363;
|
685 |
}
|
686 |
|
687 |
/* In GRIDVIEW: div to display original price with line-through style */
|
698 |
|
699 |
/* pagination links at bottom of results */
|
700 |
.kuBottomPagi{
|
701 |
+
padding: 8px;
|
702 |
+
background-color: #f4f4f4;
|
703 |
+
border-top: 1px solid #ccc;
|
704 |
+
border-bottom: 1px solid #ccc;
|
705 |
}
|
706 |
|
707 |
.kuBottomPagi .kuPerPage{
|
755 |
.disableKuFilter{
|
756 |
opacity:0.3;
|
757 |
pointer-events: none;
|
758 |
+
}
|