Version Notes
Any questions or concerns, please email cs@tagalys.com and we will get back to you in less than 24 hours.
Download this release
Release Info
| Developer | Aaditya |
| Extension | Personalized-localized-and-Intelligent-Site-Search |
| Version | 1.0.10 |
| Comparing to | |
| See all releases | |
Code changes from version 1.0.9 to 1.0.10
- app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tab/Merchandisingpage.php +96 -0
- app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tab/Similarproducts.php +83 -0
- app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tabs.php +22 -1
- app/code/local/Tagalys/PopularSearches/Model/Observer.php +2 -2
- app/code/local/Tagalys/Sync/Helper/Service.php +9 -0
- app/code/local/Tagalys/Sync/Helper/TagalysFeedFactory.php +86 -55
- app/code/local/Tagalys/Sync/Model/ProductDetails.php +1 -1
- app/code/local/Tagalys/Sync/etc/config.xml +2 -2
- app/code/local/Tagalys/Tsearch/Model/Engine.php +2 -7
- package.xml +5 -5
app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tab/Merchandisingpage.php
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
class Tagalys_Core_Block_Adminhtml_Tagalys_Edit_Tab_Merchandisingpage extends Mage_Adminhtml_Block_Widget_Form
|
| 4 |
+
implements Mage_Adminhtml_Block_Widget_Tab_Interface {
|
| 5 |
+
|
| 6 |
+
public function __construct() {
|
| 7 |
+
parent::__construct();
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
protected function _prepareForm() {
|
| 11 |
+
$this->_helper = Mage::helper('tagalys_core');
|
| 12 |
+
|
| 13 |
+
/** @var $form Varien_Data_Form */
|
| 14 |
+
$form = Mage::getModel('varien/data_form', array(
|
| 15 |
+
'id' => 'tsearch_edit_form',
|
| 16 |
+
'action' => $this->getUrl('*/tagalys', array('_current' => true)),
|
| 17 |
+
'method' => 'post'
|
| 18 |
+
));
|
| 19 |
+
|
| 20 |
+
$form->setHtmlIdPrefix('admin_tagalys_merchandisingpage');
|
| 21 |
+
$htmlIdPrefix = $form->getHtmlIdPrefix();
|
| 22 |
+
$fieldset = $form->addFieldset('tagalys_merchandisingpage_fieldset', array('legend' => $this->__('Merchandising Page Settings')));
|
| 23 |
+
|
| 24 |
+
$fieldset->addField('is_merchandising_page_active', 'select', array(
|
| 25 |
+
'name' => 'is_merchandising_page_active',
|
| 26 |
+
'label' => $this->__('Enable merchandising page'),
|
| 27 |
+
'title' => $this->__('Enable merchandising page'),
|
| 28 |
+
'options' => array(
|
| 29 |
+
'0' => $this->__('No'),
|
| 30 |
+
'1' => $this->__('Yes'),
|
| 31 |
+
),
|
| 32 |
+
'required' => true,
|
| 33 |
+
'style' => "width:100%",
|
| 34 |
+
'value' => (int)$this->_helper->getTagalysConfig("is_merchandising_page_active")
|
| 35 |
+
));
|
| 36 |
+
|
| 37 |
+
|
| 38 |
+
$fieldset->addField('merchandising_page_template', 'textarea', array(
|
| 39 |
+
'label' => $this->__('Enter Template Config'),
|
| 40 |
+
'required' => false,
|
| 41 |
+
'name' => 'merchandising_page_template',
|
| 42 |
+
'value' => $this->_helper->getTagalysConfig("merchandising_page_template"),
|
| 43 |
+
'disabled' => false,
|
| 44 |
+
// 'readonly' => false,
|
| 45 |
+
'style' => "width:100%",
|
| 46 |
+
'after_element_html' => '<small> </small>',
|
| 47 |
+
'tabindex' => 1
|
| 48 |
+
));
|
| 49 |
+
|
| 50 |
+
$fieldset->addField('submit', 'submit', array(
|
| 51 |
+
'name' => 'submit_merchandising_page_config',
|
| 52 |
+
'value' => 'Submit',
|
| 53 |
+
'class'=> "tagalys-btn",
|
| 54 |
+
'tabindex' => 1
|
| 55 |
+
));
|
| 56 |
+
|
| 57 |
+
$this->setForm($form);
|
| 58 |
+
return parent::_prepareForm();
|
| 59 |
+
}
|
| 60 |
+
|
| 61 |
+
/**
|
| 62 |
+
* Tab label getter
|
| 63 |
+
*
|
| 64 |
+
* @return string
|
| 65 |
+
*/
|
| 66 |
+
public function getTabLabel() {
|
| 67 |
+
return $this->__('Settings');
|
| 68 |
+
}
|
| 69 |
+
|
| 70 |
+
/**
|
| 71 |
+
* Tab title getter
|
| 72 |
+
*
|
| 73 |
+
* @return string
|
| 74 |
+
*/
|
| 75 |
+
public function getTabTitle() {
|
| 76 |
+
return $this->__('Settings');
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
/**
|
| 80 |
+
* Check if tab can be shown
|
| 81 |
+
*
|
| 82 |
+
* @return bool
|
| 83 |
+
*/
|
| 84 |
+
public function canShowTab() {
|
| 85 |
+
return false;
|
| 86 |
+
}
|
| 87 |
+
|
| 88 |
+
/**
|
| 89 |
+
* Check if tab hidden
|
| 90 |
+
*
|
| 91 |
+
* @return bool
|
| 92 |
+
*/
|
| 93 |
+
public function isHidden() {
|
| 94 |
+
return true;
|
| 95 |
+
}
|
| 96 |
+
}
|
app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tab/Similarproducts.php
ADDED
|
@@ -0,0 +1,83 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
<?php
|
| 2 |
+
|
| 3 |
+
class Tagalys_Core_Block_Adminhtml_Tagalys_Edit_Tab_Similarproducts extends Mage_Adminhtml_Block_Widget_Form
|
| 4 |
+
implements Mage_Adminhtml_Block_Widget_Tab_Interface {
|
| 5 |
+
|
| 6 |
+
public function __construct() {
|
| 7 |
+
parent::__construct();
|
| 8 |
+
}
|
| 9 |
+
|
| 10 |
+
protected function _prepareForm() {
|
| 11 |
+
$this->_helper = Mage::helper('tagalys_core');
|
| 12 |
+
|
| 13 |
+
/** @var $form Varien_Data_Form */
|
| 14 |
+
$form = Mage::getModel('varien/data_form', array(
|
| 15 |
+
'id' => 'tsearch_edit_form',
|
| 16 |
+
'action' => $this->getUrl('*/tagalys', array('_current' => true)),
|
| 17 |
+
'method' => 'post'
|
| 18 |
+
));
|
| 19 |
+
|
| 20 |
+
$form->setHtmlIdPrefix('admin_tagalys_similarproducts');
|
| 21 |
+
$htmlIdPrefix = $form->getHtmlIdPrefix();
|
| 22 |
+
$fieldset = $form->addFieldset('tagalys_similarproducts_fieldset', array('legend' => $this->__('Similar Products Settings')));
|
| 23 |
+
|
| 24 |
+
$fieldset->addField('is_similar_products_active', 'select', array(
|
| 25 |
+
'name' => 'is_similar_products_active',
|
| 26 |
+
'label' => $this->__('Enable similar products'),
|
| 27 |
+
'title' => $this->__('Enable similar products'),
|
| 28 |
+
'options' => array(
|
| 29 |
+
'0' => $this->__('No'),
|
| 30 |
+
'1' => $this->__('Yes'),
|
| 31 |
+
),
|
| 32 |
+
'required' => true,
|
| 33 |
+
'style' => "width:100%",
|
| 34 |
+
'value' => (int)$this->_helper->getTagalysConfig("is_similar_products_active")
|
| 35 |
+
));
|
| 36 |
+
|
| 37 |
+
$fieldset->addField('submit', 'submit', array(
|
| 38 |
+
'name' => 'submit_similar_products_config',
|
| 39 |
+
'value' => 'Submit',
|
| 40 |
+
'class'=> "tagalys-btn",
|
| 41 |
+
'tabindex' => 1
|
| 42 |
+
));
|
| 43 |
+
|
| 44 |
+
$this->setForm($form);
|
| 45 |
+
return parent::_prepareForm();
|
| 46 |
+
}
|
| 47 |
+
|
| 48 |
+
/**
|
| 49 |
+
* Tab label getter
|
| 50 |
+
*
|
| 51 |
+
* @return string
|
| 52 |
+
*/
|
| 53 |
+
public function getTabLabel() {
|
| 54 |
+
return $this->__('Settings');
|
| 55 |
+
}
|
| 56 |
+
|
| 57 |
+
/**
|
| 58 |
+
* Tab title getter
|
| 59 |
+
*
|
| 60 |
+
* @return string
|
| 61 |
+
*/
|
| 62 |
+
public function getTabTitle() {
|
| 63 |
+
return $this->__('Settings');
|
| 64 |
+
}
|
| 65 |
+
|
| 66 |
+
/**
|
| 67 |
+
* Check if tab can be shown
|
| 68 |
+
*
|
| 69 |
+
* @return bool
|
| 70 |
+
*/
|
| 71 |
+
public function canShowTab() {
|
| 72 |
+
return false;
|
| 73 |
+
}
|
| 74 |
+
|
| 75 |
+
/**
|
| 76 |
+
* Check if tab hidden
|
| 77 |
+
*
|
| 78 |
+
* @return bool
|
| 79 |
+
*/
|
| 80 |
+
public function isHidden() {
|
| 81 |
+
return true;
|
| 82 |
+
}
|
| 83 |
+
}
|
app/code/local/Tagalys/Core/Block/Adminhtml/Tagalys/Edit/Tabs.php
CHANGED
|
@@ -33,6 +33,12 @@ class Tagalys_Core_Block_Adminhtml_Tagalys_Edit_Tabs extends Mage_Adminhtml_Bloc
|
|
| 33 |
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_Tsearch')) {
|
| 34 |
$this->setActiveTab('tagalys_tsearch');
|
| 35 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 36 |
return parent::_beforeToHtml();
|
| 37 |
}
|
| 38 |
/**
|
|
@@ -85,10 +91,25 @@ class Tagalys_Core_Block_Adminhtml_Tagalys_Edit_Tabs extends Mage_Adminhtml_Bloc
|
|
| 85 |
->toHtml()
|
| 86 |
));
|
| 87 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 88 |
|
| 89 |
if($stores_setup) {
|
| 90 |
$this->addTab('tagalys_debug', array(
|
| 91 |
-
'label' => $this->__('
|
| 92 |
'content' => $this->getLayout()->createBlock('tagalys_core/adminhtml_tagalys_edit_tab_debug')
|
| 93 |
->toHtml()
|
| 94 |
));
|
| 33 |
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_Tsearch')) {
|
| 34 |
$this->setActiveTab('tagalys_tsearch');
|
| 35 |
}
|
| 36 |
+
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_MerchandisingPage')) {
|
| 37 |
+
$this->setActiveTab('tagalys_merchandisingpage');
|
| 38 |
+
}
|
| 39 |
+
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_SimilarProducts')) {
|
| 40 |
+
$this->setActiveTab('tagalys_similarproducts');
|
| 41 |
+
}
|
| 42 |
return parent::_beforeToHtml();
|
| 43 |
}
|
| 44 |
/**
|
| 91 |
->toHtml()
|
| 92 |
));
|
| 93 |
}
|
| 94 |
+
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_MerchandisingPage')) {
|
| 95 |
+
$this->addTab('tagalys_merchandisingpage', array(
|
| 96 |
+
'label' => $this->__('Merchandising Page Settings'),
|
| 97 |
+
'content' => $this->getLayout()->createBlock('tagalys_core/adminhtml_tagalys_edit_tab_merchandisingpage')
|
| 98 |
+
->toHtml()
|
| 99 |
+
));
|
| 100 |
+
}
|
| 101 |
+
|
| 102 |
+
if($status && Mage::helper('core')->isModuleEnabled('Tagalys_SimilarProducts')) {
|
| 103 |
+
$this->addTab('tagalys_similarproducts', array(
|
| 104 |
+
'label' => $this->__('Similar Products Settings'),
|
| 105 |
+
'content' => $this->getLayout()->createBlock('tagalys_core/adminhtml_tagalys_edit_tab_similarproducts')
|
| 106 |
+
->toHtml()
|
| 107 |
+
));
|
| 108 |
+
}
|
| 109 |
|
| 110 |
if($stores_setup) {
|
| 111 |
$this->addTab('tagalys_debug', array(
|
| 112 |
+
'label' => $this->__('Troubleshooting'),
|
| 113 |
'content' => $this->getLayout()->createBlock('tagalys_core/adminhtml_tagalys_edit_tab_debug')
|
| 114 |
->toHtml()
|
| 115 |
));
|
app/code/local/Tagalys/PopularSearches/Model/Observer.php
CHANGED
|
@@ -24,13 +24,13 @@ public function getPopularSearches() {
|
|
| 24 |
$request = array(
|
| 25 |
'client_code' => $this->_client_code,
|
| 26 |
'api_key' => $this->_private_api_key,
|
| 27 |
-
'store' => Mage::app()->getStore()->getStoreId()
|
| 28 |
);
|
| 29 |
$payload["identification"] = $request;
|
| 30 |
$payloadData = (json_encode($payload));
|
| 31 |
$json_data = $this->_payloadAgent($this->_url,($payloadData));
|
| 32 |
|
| 33 |
-
$fp = fopen( $this->file_path.'tagalys-popularsearches-'.
|
| 34 |
if($json_data == null) {
|
| 35 |
$json_data = array();
|
| 36 |
fwrite($fp, json_encode($json_data));
|
| 24 |
$request = array(
|
| 25 |
'client_code' => $this->_client_code,
|
| 26 |
'api_key' => $this->_private_api_key,
|
| 27 |
+
'store' => Mage::app()->getStore()->getStoreId() ? Mage::app()->getStore()->getStoreId() : 1
|
| 28 |
);
|
| 29 |
$payload["identification"] = $request;
|
| 30 |
$payloadData = (json_encode($payload));
|
| 31 |
$json_data = $this->_payloadAgent($this->_url,($payloadData));
|
| 32 |
|
| 33 |
+
$fp = fopen( $this->file_path.'tagalys-popularsearches-'.$request["store"].'.json', 'w');
|
| 34 |
if($json_data == null) {
|
| 35 |
$json_data = array();
|
| 36 |
fwrite($fp, json_encode($json_data));
|
app/code/local/Tagalys/Sync/Helper/Service.php
CHANGED
|
@@ -246,9 +246,18 @@ class Tagalys_Sync_Helper_Service extends Mage_Core_Helper_Abstract {
|
|
| 246 |
$defaultCurrencies = $currencyModel->getConfigBaseCurrencies();
|
| 247 |
$rates=$currencyModel->getCurrencyRates($defaultCurrencies, $currencies); //rates of each currency
|
| 248 |
|
|
|
|
|
|
|
|
|
|
|
|
|
| 249 |
foreach($rates[$baseCurrencyCode] as $key=>$value ) {
|
| 250 |
$default = $baseCurrencyCode == $key ? true : false;
|
| 251 |
$label = Mage::app()->getLocale()->currency( $key )->getSymbol();
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 252 |
$currency_rate[] = array("id" => $key, "label" => $label, "fractional_digits" => 2 , "rounding_mode" => "round", "exchange_rate" => (float)$value, "default" => $default); //getFinalPrice
|
| 253 |
}
|
| 254 |
|
| 246 |
$defaultCurrencies = $currencyModel->getConfigBaseCurrencies();
|
| 247 |
$rates=$currencyModel->getCurrencyRates($defaultCurrencies, $currencies); //rates of each currency
|
| 248 |
|
| 249 |
+
if (empty($rates[$baseCurrencyCode])) {
|
| 250 |
+
$rates[$baseCurrencyCode] = array($baseCurrencyCode => '1.0000');
|
| 251 |
+
}
|
| 252 |
+
|
| 253 |
foreach($rates[$baseCurrencyCode] as $key=>$value ) {
|
| 254 |
$default = $baseCurrencyCode == $key ? true : false;
|
| 255 |
$label = Mage::app()->getLocale()->currency( $key )->getSymbol();
|
| 256 |
+
if (!isset($label)) {
|
| 257 |
+
if($baseCurrencyCode == "INR") {
|
| 258 |
+
$label = '\u20b9';
|
| 259 |
+
}
|
| 260 |
+
}
|
| 261 |
$currency_rate[] = array("id" => $key, "label" => $label, "fractional_digits" => 2 , "rounding_mode" => "round", "exchange_rate" => (float)$value, "default" => $default); //getFinalPrice
|
| 262 |
}
|
| 263 |
|
app/code/local/Tagalys/Sync/Helper/TagalysFeedFactory.php
CHANGED
|
@@ -40,36 +40,47 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 40 |
$total = $collection->count();
|
| 41 |
return $total;
|
| 42 |
}
|
| 43 |
-
|
| 44 |
-
|
| 45 |
-
|
| 46 |
-
|
| 47 |
-
|
| 48 |
-
|
| 49 |
-
|
| 50 |
-
|
| 51 |
-
|
| 52 |
-
|
| 53 |
-
|
| 54 |
-
|
| 55 |
-
|
| 56 |
-
|
| 57 |
-
|
| 58 |
-
|
| 59 |
-
|
| 60 |
-
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 69 |
}
|
| 70 |
-
|
| 71 |
-
|
|
|
|
|
|
|
| 72 |
}
|
|
|
|
|
|
|
|
|
|
| 73 |
/**
|
| 74 |
* Retuns finished product feed details
|
| 75 |
*
|
|
@@ -82,7 +93,7 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 82 |
if (!is_dir($this->file_path . $value) ) {
|
| 83 |
if(!preg_match("/^\./", $value)) {
|
| 84 |
$file_status = explode( '-', $value );
|
| 85 |
-
if(count($file_status) ==
|
| 86 |
array_push($finishd_files, $value);
|
| 87 |
}
|
| 88 |
}
|
|
@@ -114,7 +125,7 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 114 |
} else {
|
| 115 |
$files = $feed;
|
| 116 |
$file_status = explode( '-', $files );
|
| 117 |
-
if(count($file_status) ==
|
| 118 |
return true;
|
| 119 |
}
|
| 120 |
}
|
|
@@ -122,13 +133,14 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 122 |
if (!is_dir($this->file_path . $value) ) {
|
| 123 |
if(!preg_match("/^\./", $value)) {
|
| 124 |
$file_status = explode( '-', $value );
|
| 125 |
-
if(count($file_status) >
|
| 126 |
-
$meta_temp = explode( '.', $file_status[
|
| 127 |
$total = $meta_temp[0]; //explode('.', $file_status[1]);
|
| 128 |
$file_meta->name = $value;
|
| 129 |
-
$file_meta->store = $file_status[
|
| 130 |
-
$file_meta->uniq_name =$file_status[
|
| 131 |
-
$file_meta->type = $file_status[
|
|
|
|
| 132 |
$file_meta->total = (int) $total;
|
| 133 |
if(preg_match("/^[0-9]+$/",$total)) {
|
| 134 |
$file_meta->total = (int) $total;
|
|
@@ -149,7 +161,8 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 149 |
*/
|
| 150 |
public function updateProductFeed() {
|
| 151 |
try {
|
| 152 |
-
|
|
|
|
| 153 |
$pages = 0;
|
| 154 |
$page_done = 0;
|
| 155 |
$products_done = 0;
|
|
@@ -160,17 +173,22 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 160 |
return false;
|
| 161 |
}
|
| 162 |
$helper = Mage::helper("sync/service");
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 163 |
if($file_meta->type == "dump") {
|
| 164 |
$total = $this->getTotal($file_meta->store, true);
|
| 165 |
|
| 166 |
-
|
| 167 |
} else {
|
| 168 |
$total = Mage::getModel('sync/queue')->getCollection()->count();
|
| 169 |
}
|
| 170 |
$pages = $total/self::PAGE_LIMIT;
|
| 171 |
$feed_file = $this->getFeedFile($file_meta->store, "dump");
|
|
|
|
| 172 |
if (!empty($file_meta->type)) {
|
| 173 |
-
$fp = file((String)$this->file_path.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 174 |
$line_count = count($fp);
|
| 175 |
$page_no = $pages - (($total - $line_count)/self::PAGE_LIMIT);
|
| 176 |
if (is_float($page_no)) {
|
|
@@ -180,12 +198,13 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 180 |
|
| 181 |
if($file_meta->status != "processing" && $file_meta->type == "dump" ) {
|
| 182 |
|
| 183 |
-
rename($this->file_path
|
| 184 |
-
|
|
|
|
| 185 |
|
| 186 |
} else {
|
| 187 |
if ($file_meta->type == "dump")
|
| 188 |
-
$file = $this->file_path . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 189 |
if(file_exists($file)){
|
| 190 |
|
| 191 |
if($file_meta->type == "dump") {
|
|
@@ -216,10 +235,10 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 216 |
}
|
| 217 |
if($page_done == $pages && $file_meta->type == "dump") {
|
| 218 |
|
| 219 |
-
$fp = file((String)$this->file_path.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 220 |
$line_count = count($fp);
|
| 221 |
-
$finished_file_name = $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl';
|
| 222 |
-
rename($file, $this->file_path . $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl');
|
| 223 |
|
| 224 |
if($line_count > 0) {
|
| 225 |
$this->notify_tagalys($finished_file_name, $line_count, $file_meta->store, $file_meta->type);
|
|
@@ -238,8 +257,8 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 238 |
$products_done = 0;
|
| 239 |
$file_meta = Mage::helper("sync/tagalysFeedFactory")->getProductFeedMetaDetails(array($key =>$value));
|
| 240 |
if($file_meta->status != "processing" ) {
|
| 241 |
-
rename(Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->name, Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl');
|
| 242 |
-
$file = Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 243 |
} else {
|
| 244 |
$file = Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 245 |
}
|
|
@@ -254,10 +273,10 @@ class Tagalys_Sync_Helper_TagalysFeedFactory extends Varien_Io_File {
|
|
| 254 |
}
|
| 255 |
$this->streamClose();
|
| 256 |
if($products_done == $total) {
|
| 257 |
-
$fp = file((String)$this->file_path.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 258 |
$line_count = count($fp);
|
| 259 |
-
$finished_file_name = $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl';
|
| 260 |
-
rename($file, $this->file_path . $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl');
|
| 261 |
|
| 262 |
if($line_count > 0) {
|
| 263 |
$this->notify_tagalys($finished_file_name, $line_count, $file_meta->store, $file_meta->type);
|
|
@@ -282,8 +301,20 @@ public function updateStatusFile($storeId, $products_count) {
|
|
| 282 |
public function notify_tagalys($filename, $count, $storeId, $type) {
|
| 283 |
$service = Mage::getSingleton("sync/client");
|
| 284 |
$params["store_id"] = $storeId;
|
| 285 |
-
|
| 286 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 287 |
Mage::dispatchEvent('tagalys_event'); //to-check to-do blank
|
| 288 |
return true;
|
| 289 |
}
|
|
@@ -360,7 +391,7 @@ public function notify_tagalys($filename, $count, $storeId, $type) {
|
|
| 360 |
if (!is_dir($this->file_path . $value) ) {
|
| 361 |
if(!preg_match("/^\./", $value)) {
|
| 362 |
$file_status = explode( '-', $value );
|
| 363 |
-
if($file_status[
|
| 364 |
$feed_files[] = $value;
|
| 365 |
}
|
| 366 |
}
|
|
@@ -370,7 +401,7 @@ public function notify_tagalys($filename, $count, $storeId, $type) {
|
|
| 370 |
if (!is_dir($this->file_path . $value) ) {
|
| 371 |
if(!preg_match("/^\./", $value)) {
|
| 372 |
$file_status = explode( '-', $value );
|
| 373 |
-
if($file_status[
|
| 374 |
$feed_files[] = $value;
|
| 375 |
}
|
| 376 |
}
|
|
@@ -392,7 +423,7 @@ public function notify_tagalys($filename, $count, $storeId, $type) {
|
|
| 392 |
if (!is_dir($this->file_path . $value) ) {
|
| 393 |
if(!preg_match("/^\./", $value)) {
|
| 394 |
$file_status = explode( '-', $value );
|
| 395 |
-
if(count($file_status) >
|
| 396 |
$feed_count++;
|
| 397 |
}
|
| 398 |
}
|
|
@@ -412,7 +443,7 @@ public function notify_tagalys($filename, $count, $storeId, $type) {
|
|
| 412 |
foreach ($files as $key => $value) {
|
| 413 |
if (!is_dir($this->file_path . $value) ) {
|
| 414 |
$file_status = explode( '-', $value );
|
| 415 |
-
if($file_status[
|
| 416 |
return $value;
|
| 417 |
}
|
| 418 |
}
|
| 40 |
$total = $collection->count();
|
| 41 |
return $total;
|
| 42 |
}
|
| 43 |
+
|
| 44 |
+
public function getDomain() {
|
| 45 |
+
$url = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);
|
| 46 |
+
$format_url = explode("://", $url);
|
| 47 |
+
$format_domain = str_replace(".", "_", $format_url[1]);
|
| 48 |
+
$temp = explode("/", $format_domain);
|
| 49 |
+
$domain = $temp[0];
|
| 50 |
+
|
| 51 |
+
return $domain;
|
| 52 |
+
}
|
| 53 |
+
public function createProductFeed($storeId,$dump) {
|
| 54 |
+
$domain = $this->getDomain();
|
| 55 |
+
$products = array();
|
| 56 |
+
$total = $this->getTotal($storeId,$dump);
|
| 57 |
+
$type = $dump ? "dump" : "updates";
|
| 58 |
+
$status = $this->isProductFeedProceesed($type);
|
| 59 |
+
$exist_feed = $this->getFeedFile($storeId,$type);
|
| 60 |
+
if(isset($exist_feed)) {
|
| 61 |
+
return false;
|
| 62 |
+
}
|
| 63 |
+
if(!$status) {
|
| 64 |
+
return array( "status" => false,"message"=> "Already some feed creation process in queue. Please try again later.");
|
| 65 |
+
}
|
| 66 |
+
$this->checkAndCreateFolder($this->default_location);
|
| 67 |
+
if(isset($total)) {
|
| 68 |
+
$name = md5(microtime());
|
| 69 |
+
if($dump == true){
|
| 70 |
+
$name = 'dump'.'-'.$name;
|
| 71 |
+
$file = $this->file_path . $domain . '-'. $name . '-'.$storeId.'-'.$total.'.jsonl';
|
| 72 |
+
} else {
|
| 73 |
+
$name = 'updates'.'-'.$name;
|
| 74 |
+
$file = $this->file_path . $domain . '-'. $name . '-'.$storeId.'-'.$total.'.jsonl';
|
| 75 |
}
|
| 76 |
+
$this->setAllowCreateFolders(true);
|
| 77 |
+
$this->open(array('path' => $this->file_path));
|
| 78 |
+
$this->streamOpen($file, 'w+');
|
| 79 |
+
$this->streamClose();
|
| 80 |
}
|
| 81 |
+
return array("status" => true,
|
| 82 |
+
"message" => $name.'.jsonl');
|
| 83 |
+
}
|
| 84 |
/**
|
| 85 |
* Retuns finished product feed details
|
| 86 |
*
|
| 93 |
if (!is_dir($this->file_path . $value) ) {
|
| 94 |
if(!preg_match("/^\./", $value)) {
|
| 95 |
$file_status = explode( '-', $value );
|
| 96 |
+
if(count($file_status) == 3) {
|
| 97 |
array_push($finishd_files, $value);
|
| 98 |
}
|
| 99 |
}
|
| 125 |
} else {
|
| 126 |
$files = $feed;
|
| 127 |
$file_status = explode( '-', $files );
|
| 128 |
+
if(count($file_status) == 3) {
|
| 129 |
return true;
|
| 130 |
}
|
| 131 |
}
|
| 133 |
if (!is_dir($this->file_path . $value) ) {
|
| 134 |
if(!preg_match("/^\./", $value)) {
|
| 135 |
$file_status = explode( '-', $value );
|
| 136 |
+
if(count($file_status) > 4) {
|
| 137 |
+
$meta_temp = explode( '.', $file_status[4]);
|
| 138 |
$total = $meta_temp[0]; //explode('.', $file_status[1]);
|
| 139 |
$file_meta->name = $value;
|
| 140 |
+
$file_meta->store = $file_status[3];
|
| 141 |
+
$file_meta->uniq_name =$file_status[2];
|
| 142 |
+
$file_meta->type = $file_status[1];
|
| 143 |
+
$file_meta->domain = $file_status[0];
|
| 144 |
$file_meta->total = (int) $total;
|
| 145 |
if(preg_match("/^[0-9]+$/",$total)) {
|
| 146 |
$file_meta->total = (int) $total;
|
| 161 |
*/
|
| 162 |
public function updateProductFeed() {
|
| 163 |
try {
|
| 164 |
+
$current_domain = $this->getDomain();
|
| 165 |
+
|
| 166 |
$pages = 0;
|
| 167 |
$page_done = 0;
|
| 168 |
$products_done = 0;
|
| 173 |
return false;
|
| 174 |
}
|
| 175 |
$helper = Mage::helper("sync/service");
|
| 176 |
+
$file_domain = $file_meta->domain;
|
| 177 |
+
|
| 178 |
+
if ($current_domain != $file_domain) {
|
| 179 |
+
return false;
|
| 180 |
+
}
|
| 181 |
if($file_meta->type == "dump") {
|
| 182 |
$total = $this->getTotal($file_meta->store, true);
|
| 183 |
|
|
|
|
| 184 |
} else {
|
| 185 |
$total = Mage::getModel('sync/queue')->getCollection()->count();
|
| 186 |
}
|
| 187 |
$pages = $total/self::PAGE_LIMIT;
|
| 188 |
$feed_file = $this->getFeedFile($file_meta->store, "dump");
|
| 189 |
+
|
| 190 |
if (!empty($file_meta->type)) {
|
| 191 |
+
$fp = file((String)$this->file_path.$file_meta->domain.'-'.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 192 |
$line_count = count($fp);
|
| 193 |
$page_no = $pages - (($total - $line_count)/self::PAGE_LIMIT);
|
| 194 |
if (is_float($page_no)) {
|
| 198 |
|
| 199 |
if($file_meta->status != "processing" && $file_meta->type == "dump" ) {
|
| 200 |
|
| 201 |
+
rename($this->file_path . $file_meta->name, $this->file_path . $file_meta->domain.'-'.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl');
|
| 202 |
+
|
| 203 |
+
$file = $this->file_path.$file_meta->domain.'-' . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 204 |
|
| 205 |
} else {
|
| 206 |
if ($file_meta->type == "dump")
|
| 207 |
+
$file = $this->file_path .$file_meta->domain.'-'. $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 208 |
if(file_exists($file)){
|
| 209 |
|
| 210 |
if($file_meta->type == "dump") {
|
| 235 |
}
|
| 236 |
if($page_done == $pages && $file_meta->type == "dump") {
|
| 237 |
|
| 238 |
+
$fp = file((String)$this->file_path.$file_meta->domain.'-'.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 239 |
$line_count = count($fp);
|
| 240 |
+
$finished_file_name = $file_meta->domain.'-'.$file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl';
|
| 241 |
+
rename($file, $this->file_path.$file_meta->domain.'-' . $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl');
|
| 242 |
|
| 243 |
if($line_count > 0) {
|
| 244 |
$this->notify_tagalys($finished_file_name, $line_count, $file_meta->store, $file_meta->type);
|
| 257 |
$products_done = 0;
|
| 258 |
$file_meta = Mage::helper("sync/tagalysFeedFactory")->getProductFeedMetaDetails(array($key =>$value));
|
| 259 |
if($file_meta->status != "processing" ) {
|
| 260 |
+
rename(Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->name, Mage::getBaseDir('media'). DS .'tagalys'. DS .$file_meta->domain.'-'. $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl');
|
| 261 |
+
$file = Mage::getBaseDir('media'). DS .'tagalys'. DS .$file_meta->domain.'-'. $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 262 |
} else {
|
| 263 |
$file = Mage::getBaseDir('media'). DS .'tagalys'. DS . $file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl';
|
| 264 |
}
|
| 273 |
}
|
| 274 |
$this->streamClose();
|
| 275 |
if($products_done == $total) {
|
| 276 |
+
$fp = file((String)$this->file_path.$file_meta->domain.'-'.$file_meta->type.'-'.$file_meta->uniq_name.'-'.$file_meta->store.'-processing.jsonl', FILE_SKIP_EMPTY_LINES);
|
| 277 |
$line_count = count($fp);
|
| 278 |
+
$finished_file_name = $file_meta->domain.'-'.$file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl';
|
| 279 |
+
rename($file, $this->file_path .$file_meta->domain.'-'. $file_meta->type.'-'. $file_meta->uniq_name.'-'.$file_meta->store.'.jsonl');
|
| 280 |
|
| 281 |
if($line_count > 0) {
|
| 282 |
$this->notify_tagalys($finished_file_name, $line_count, $file_meta->store, $file_meta->type);
|
| 301 |
public function notify_tagalys($filename, $count, $storeId, $type) {
|
| 302 |
$service = Mage::getSingleton("sync/client");
|
| 303 |
$params["store_id"] = $storeId;
|
| 304 |
+
|
| 305 |
+
$baseUrl = "";
|
| 306 |
+
$webUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_WEB);
|
| 307 |
+
$mediaUrl = Mage::getBaseUrl(Mage_Core_Model_Store::URL_TYPE_MEDIA);
|
| 308 |
+
|
| 309 |
+
if (strpos($mediaUrl, $webUrl) === false) {
|
| 310 |
+
$baseUrl = $webUrl . 'media/';
|
| 311 |
+
} else {
|
| 312 |
+
$baseUrl = $mediaUrl;
|
| 313 |
+
}
|
| 314 |
+
|
| 315 |
+
$tagalys_feed_response = $service->notify_tagalys(array("link" => $baseUrl."tagalys/".$filename, "updates_count" => $count, "store" => $storeId, "callback_url" => Mage::getUrl('tagalys/feed/indexStatus/')), $type); //to-do
|
| 316 |
+
|
| 317 |
+
$this->setInitSyncDone($storeId);
|
| 318 |
Mage::dispatchEvent('tagalys_event'); //to-check to-do blank
|
| 319 |
return true;
|
| 320 |
}
|
| 391 |
if (!is_dir($this->file_path . $value) ) {
|
| 392 |
if(!preg_match("/^\./", $value)) {
|
| 393 |
$file_status = explode( '-', $value );
|
| 394 |
+
if($file_status[1] == "dump" || $file_status[1] == "updates")
|
| 395 |
$feed_files[] = $value;
|
| 396 |
}
|
| 397 |
}
|
| 401 |
if (!is_dir($this->file_path . $value) ) {
|
| 402 |
if(!preg_match("/^\./", $value)) {
|
| 403 |
$file_status = explode( '-', $value );
|
| 404 |
+
if($file_status[1] == $type ) {
|
| 405 |
$feed_files[] = $value;
|
| 406 |
}
|
| 407 |
}
|
| 423 |
if (!is_dir($this->file_path . $value) ) {
|
| 424 |
if(!preg_match("/^\./", $value)) {
|
| 425 |
$file_status = explode( '-', $value );
|
| 426 |
+
if(count($file_status) > 4) {
|
| 427 |
$feed_count++;
|
| 428 |
}
|
| 429 |
}
|
| 443 |
foreach ($files as $key => $value) {
|
| 444 |
if (!is_dir($this->file_path . $value) ) {
|
| 445 |
$file_status = explode( '-', $value );
|
| 446 |
+
if($file_status[1] == $type && (int)$file_status[3] == $storeId) {
|
| 447 |
return $value;
|
| 448 |
}
|
| 449 |
}
|
app/code/local/Tagalys/Sync/Model/ProductDetails.php
CHANGED
|
@@ -114,7 +114,7 @@ class Tagalys_Sync_Model_ProductDetails extends Mage_Core_Model_Abstract {
|
|
| 114 |
}
|
| 115 |
$values['label'] = $attriute_option_value;
|
| 116 |
$values['id'] = $attribute_options_id;
|
| 117 |
-
if(!is_null($attribute_options_id) && $values['label'] != "N/A"){
|
| 118 |
$attributeObj[] = array("tag_set" => array("id" => $attribute->getAttributeCode(), "label" => $attribute->getFrontend()->getLabel($product) ),"items" => array($values));
|
| 119 |
}
|
| 120 |
}
|
| 114 |
}
|
| 115 |
$values['label'] = $attriute_option_value;
|
| 116 |
$values['id'] = $attribute_options_id;
|
| 117 |
+
if($values && !is_null($attribute_options_id) && $values['label'] != "N/A"){
|
| 118 |
$attributeObj[] = array("tag_set" => array("id" => $attribute->getAttributeCode(), "label" => $attribute->getFrontend()->getLabel($product) ),"items" => array($values));
|
| 119 |
}
|
| 120 |
}
|
app/code/local/Tagalys/Sync/etc/config.xml
CHANGED
|
@@ -9,7 +9,7 @@
|
|
| 9 |
<sync_feed_progress>/v1/products/sync_feed_progress</sync_feed_progress>
|
| 10 |
<api_auth>/v1/identification/check</api_auth>
|
| 11 |
<installed_plugin>Search</installed_plugin>
|
| 12 |
-
<plugin_to_be_activated>tsearchsuggestion
|
| 13 |
</endpoint>
|
| 14 |
</tagalys_endpoint>
|
| 15 |
</default>
|
|
@@ -203,4 +203,4 @@
|
|
| 203 |
</tagalys_resync_cron>
|
| 204 |
</jobs>
|
| 205 |
</crontab>
|
| 206 |
-
</config>
|
| 9 |
<sync_feed_progress>/v1/products/sync_feed_progress</sync_feed_progress>
|
| 10 |
<api_auth>/v1/identification/check</api_auth>
|
| 11 |
<installed_plugin>Search</installed_plugin>
|
| 12 |
+
<plugin_to_be_activated>tsearch,tsearchsuggestion</plugin_to_be_activated>
|
| 13 |
</endpoint>
|
| 14 |
</tagalys_endpoint>
|
| 15 |
</default>
|
| 203 |
</tagalys_resync_cron>
|
| 204 |
</jobs>
|
| 205 |
</crontab>
|
| 206 |
+
</config>
|
app/code/local/Tagalys/Tsearch/Model/Engine.php
CHANGED
|
@@ -58,14 +58,9 @@ class Tagalys_Tsearch_Model_Engine extends Mage_Core_Model_Abstract {
|
|
| 58 |
$payload['q'] = $query;
|
| 59 |
$session_limit = $request["limit"]; //Mage::getSingleton('catalog/session')->getLimitPage();
|
| 60 |
|
|
|
|
|
|
|
| 61 |
|
| 62 |
-
$payload['page'] = (!empty($request['p'])) ? $request['p'] : 1;
|
| 63 |
-
if($payload['page'] == 1) {
|
| 64 |
-
$payload['per_page'] = (!empty($session_limit) ? $session_limit : $defaultLimit) * 2;
|
| 65 |
-
} else {
|
| 66 |
-
$payload['per_page'] = (!empty($session_limit) ? $session_limit : $defaultLimit) ;
|
| 67 |
-
}
|
| 68 |
-
//$payload['per_page'] = (!empty($session_limit) ? $session_limit : $defaultLimit) ;
|
| 69 |
|
| 70 |
//by aaditya
|
| 71 |
if(isset($request['order'])) {
|
| 58 |
$payload['q'] = $query;
|
| 59 |
$session_limit = $request["limit"]; //Mage::getSingleton('catalog/session')->getLimitPage();
|
| 60 |
|
| 61 |
+
$payload['per_page'] = (!empty($session_limit) ? $session_limit : $defaultLimit);
|
| 62 |
+
$payload['page'] = 1;
|
| 63 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 64 |
|
| 65 |
//by aaditya
|
| 66 |
if(isset($request['order'])) {
|
package.xml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Personalized-localized-and-Intelligent-Site-Search</name>
|
| 4 |
-
<version>1.0.
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Tagalys</license>
|
| 7 |
<channel>community</channel>
|
|
@@ -10,9 +10,9 @@
|
|
| 10 |
<description>The extension powers search suggestions and resulting search results. Upon clicking the search bar, show visitors the most popular or trending searches in your ecommerce store. When a visitor starts typing, we auto complete the query into suggestions from the active product-tag-attribute database. </description>
|
| 11 |
<notes>Any questions or concerns, please email cs@tagalys.com and we will get back to you in less than 24 hours. </notes>
|
| 12 |
<authors><author><name>Aaditya</name><user>Aaditya</user><email>antony@tagalys.com</email></author></authors>
|
| 13 |
-
<date>2017-02-
|
| 14 |
-
<time>
|
| 15 |
-
<contents><target name="magelocal"><dir><dir name="Tagalys"><dir name="SearchSuggestions"><dir name="Block"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="4a1d6c59a119e36f06a9227b4a648f77"/><file name="Category.php" hash="322d606ca40b6c7a976ec09f5080281a"/></dir></dir><file name="Layer.php" hash="4e72f2b2b8788ba0dce51aa38575e313"/></dir></dir><dir name="Helper"><file name="Data.php" hash="fa1f09a28bb0d3772a4aeb29af8c575b"/></dir><dir name="Model"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="897b2f76ab974edea9e4dffa176662f7"/><file name="Category.php" hash="c2c91bcd957559e5b4cb0c0ad9268a7f"/></dir></dir></dir></dir><dir name="controllers"><file name="AutoSuggestController.php" hash="8ef45554e5cc780b7e9f020cd19e28c5"/></dir><dir name="etc"><file name="config.xml" hash="854e13ce3dad489f9da4ae63cadf7512"/></dir></dir><dir name="Core"><dir name="Block"><dir name="Adminhtml"><dir name="Tagalys"><dir name="Edit"><file name="Form.php" hash="f03082a193308464a70ddb12929f6445"/><dir name="Tab"><file name="Credentials.php" hash="ed600b42a2fe12222ef352a9a6b0dbd7"/><file name="Debug.php" hash="300e99069b08e1c7f4ec3d3a7c056ae2"/><file name="Setup.php" hash="8a5b190544b9e26e7d29716b8e3946dd"/><file name="Signup.php" hash="db50f6b1f8fe7c10eba8996adaab5b46"/><file name="Sync.php" hash="df41344ec4ec924ccc34ad3e8b93c8f2"/><file name="Tsearch.php" hash="0f8d06abb0058aa63bb7619d96b54986"/><file name="Tsearchsuggestion.php" hash="66ba155f8119a448ee2c2fdb6e5777d5"/></dir><file name="Tabs.php" hash="
|
| 16 |
<compatible/>
|
| 17 |
-
<dependencies><required><php><min>5.3.0</min><max>
|
| 18 |
</package>
|
| 1 |
<?xml version="1.0"?>
|
| 2 |
<package>
|
| 3 |
<name>Personalized-localized-and-Intelligent-Site-Search</name>
|
| 4 |
+
<version>1.0.10</version>
|
| 5 |
<stability>stable</stability>
|
| 6 |
<license>Tagalys</license>
|
| 7 |
<channel>community</channel>
|
| 10 |
<description>The extension powers search suggestions and resulting search results. Upon clicking the search bar, show visitors the most popular or trending searches in your ecommerce store. When a visitor starts typing, we auto complete the query into suggestions from the active product-tag-attribute database. </description>
|
| 11 |
<notes>Any questions or concerns, please email cs@tagalys.com and we will get back to you in less than 24 hours. </notes>
|
| 12 |
<authors><author><name>Aaditya</name><user>Aaditya</user><email>antony@tagalys.com</email></author></authors>
|
| 13 |
+
<date>2017-02-15</date>
|
| 14 |
+
<time>13:32:37</time>
|
| 15 |
+
<contents><target name="magelocal"><dir><dir name="Tagalys"><dir name="SearchSuggestions"><dir name="Block"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="4a1d6c59a119e36f06a9227b4a648f77"/><file name="Category.php" hash="322d606ca40b6c7a976ec09f5080281a"/></dir></dir><file name="Layer.php" hash="4e72f2b2b8788ba0dce51aa38575e313"/></dir></dir><dir name="Helper"><file name="Data.php" hash="fa1f09a28bb0d3772a4aeb29af8c575b"/></dir><dir name="Model"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="897b2f76ab974edea9e4dffa176662f7"/><file name="Category.php" hash="c2c91bcd957559e5b4cb0c0ad9268a7f"/></dir></dir></dir></dir><dir name="controllers"><file name="AutoSuggestController.php" hash="8ef45554e5cc780b7e9f020cd19e28c5"/></dir><dir name="etc"><file name="config.xml" hash="854e13ce3dad489f9da4ae63cadf7512"/></dir></dir><dir name="Core"><dir name="Block"><dir name="Adminhtml"><dir name="Tagalys"><dir name="Edit"><file name="Form.php" hash="f03082a193308464a70ddb12929f6445"/><dir name="Tab"><file name="Credentials.php" hash="ed600b42a2fe12222ef352a9a6b0dbd7"/><file name="Debug.php" hash="300e99069b08e1c7f4ec3d3a7c056ae2"/><file name="Merchandisingpage.php" hash="2fad4e4db56eb1999e421770bbdd70c9"/><file name="Setup.php" hash="8a5b190544b9e26e7d29716b8e3946dd"/><file name="Signup.php" hash="db50f6b1f8fe7c10eba8996adaab5b46"/><file name="Similarproducts.php" hash="336f1e8c7a86babf681ee6b2ff643406"/><file name="Sync.php" hash="df41344ec4ec924ccc34ad3e8b93c8f2"/><file name="Tsearch.php" hash="0f8d06abb0058aa63bb7619d96b54986"/><file name="Tsearchsuggestion.php" hash="66ba155f8119a448ee2c2fdb6e5777d5"/></dir><file name="Tabs.php" hash="334a9a7af439df186e3bf7e73fe92ca6"/></dir><file name="Edit.php" hash="b6ed0a6d60ed8437013316ea2bf4ae8c"/><file name="Notifications.php" hash="a8a462e420cffb43dcc9a3501114e01b"/><file name="Progress.php" hash="9de974b3672b91e25f5062d6d76c350d"/><file name="SearchReady.php" hash="9e58736e1eb8cba32ee0b84b19ee7b6c"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="0a045aa8949d1f1d6b4c299cf2f5579e"/></dir><dir name="Model"><file name="Config.php" hash="6b1fc527b6ee9b6386669d91ada6c0cb"/><dir name="Mysql4"><dir name="Config"><file name="Collection.php" hash="ea729baf00ac3f73ea70eb36cf182699"/></dir><file name="Config.php" hash="f96196b73e2e9bd2ceaf4b6ba8befb1a"/></dir><file name="Observer.php" hash="c3619b4cd7264290bc7f1a34e293ac18"/></dir><dir name="etc"><file name="adminhtml.xml" hash="7be928fd40cff7dda724457e84736624"/><file name="config.xml" hash="7b26e95fe97248975edd7f2c1c75cb80"/></dir><dir name="sql"><dir name="tagalys_core_setup"><file name="mysql4-install-0.2.0.php" hash="50451682b52f41e0e5a2b656b4ed222f"/></dir></dir></dir><dir name="Sync"><dir name="Helper"><file name="Data.php" hash="f6dbd08edafe1f615818e8ea73d412fd"/><file name="Inventory.php" hash="61a553020607ff202ddb6ea32593cc36"/><file name="Service.php" hash="c41a4a75c764e233f7a3b75c1854f93d"/><file name="TagalysFeedFactory.php" hash="8678b161a51e495d82cacad978052847"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Tagalys"><file name="Cron.php" hash="497ea5cee9239e97275b87743a4341a8"/></dir></dir></dir></dir></dir><file name="Client.php" hash="8040286126ba95b02b6fe52f98668657"/><dir name="Dataflow"><dir name="Convert"><dir name="Adapter"><file name="Io.php" hash="e1796293468adb1340d6336fd37e4a43"/></dir></dir></dir><dir name="Mysql4"><dir name="Queue"><file name="Collection.php" hash="d0228354a318338e31d85e25960b9f5c"/></dir><file name="Queue.php" hash="8c192d482dbbaa48c703f00ef5cf1a73"/></dir><file name="Observer.php" hash="2642389de90e5d5092a12bd9f1f58a20"/><file name="ProductDetails.php" hash="340acb5c3aea7928b71c8d33ff735f11"/><file name="Queue.php" hash="c48db47089e3ca175017c409768aefe5"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="ImportController.php" hash="3e0e0d36cb252768a7ccbb823d404752"/><dir name="System"><dir name="Convert"><file name="GuiController.php" hash="0a7755e0004a1db8c3fbfdfee717cdcc"/></dir></dir><file name="TagalysController.php" hash="75b22f6cf00e1d0c55af420d0ea430ce"/></dir><file name="FeedController.php" hash="056d76af4b612dc94e235df80a79c58d"/></dir><dir name="etc"><file name="config.xml" hash="c3aab7b4bc00cb917a6fb4803087ec36"/><file name="wsdl.xml" hash="1479803fedcad805ae6420f0eff141ad"/></dir><dir name="sql"><dir name="sync_setup"><file name="mysql4-install-0.1.0.php" hash="756c821858436db88487a3b121531d0e"/><file name="mysql4-install-0.2.0.php" hash="756c821858436db88487a3b121531d0e"/><file name="mysql4-upgrade-0.1.0-0.2.0.php" hash="1e1fdc5770389a9123a3079e354ad822"/></dir></dir></dir><dir name="PopularSearches"><dir name="Model"><file name="Observer.php" hash="3c4a9c3cb5d23ce28f856620f9f7b0ca"/></dir><dir name="etc"><file name="config.xml" hash="4089d29d49ff24d49446c8fed7c153b5"/></dir></dir><dir name="Tsearch"><dir name="Block"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="8d0f3d1786e1350dd3b050dac907f382"/><file name="Category.php" hash="084bd8b9a22699c867902f774eeb7f72"/><file name="Price.php" hash="2db28591e437f65cd52506906ee96663"/></dir><file name="State.php" hash="8dadc65a747943cb9973747495d3a090"/><file name="View.php" hash="28966b74d8cf4d2dd79155c546d4aa51"/></dir><dir name="Product"><dir name="List"><file name="Toolbar.php" hash="00a3f570914bc92fc738a8a2b63168f9"/></dir><file name="List.php" hash="360faadf31bc8a3606f789f634ea101b"/></dir></dir><dir name="Catalogsearch"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="3a858ada3f75cf0aa8c327d27daa616b"/></dir><file name="View.php" hash="28c09e321dc22fdbb03b48f057e8ae1b"/></dir><file name="Layer.php" hash="576c376ec352ce14e7f10c7e77fb8b59"/><file name="Result.php" hash="382a1f850d62de8e86617f149244db93"/></dir></dir><dir name="Helper"><file name="Data.php" hash="ae9d36b28b1eb921153d4207be3304a9"/></dir><dir name="Model"><dir name="Catalog"><dir name="Layer"><dir name="Filter"><file name="Attribute.php" hash="1d239626f555c4215a07edea9e3322de"/><file name="Category.php" hash="0dfb591ee8a64759177aa93bc2ffbed7"/><file name="Price.php" hash="f7d04011027bd796736a1238d76c56c1"/></dir></dir><file name="Layer.php" hash="5d005f705e43fc61ce548da82b22a3df"/><dir name="Product"><file name="List.php" hash="8bd460c476e4630149c7e11cb8f50a9c"/></dir></dir><dir name="Catalogsearch"><file name="Layer.php" hash="b32c1e8c132ba771bd0e0490ed97c853"/></dir><dir name="Client"><file name="Connector.php" hash="96107c6d1925cf6391d90a0c81b89f67"/></dir><file name="Engine.php" hash="feb88f896e2a290c8692c8463b87abb2"/><file name="Observer.php" hash="eb77033417011509be021fba2028d018"/><dir name="Resource"><dir name="Catalog"><dir name="Product"><file name="Collection.php" hash="a0bcbb601025bc0af84ee3c11ef6e531"/><file name="testCollection.php" hash="a0bcbb601025bc0af84ee3c11ef6e531"/></dir></dir></dir></dir><dir name="etc"><file name="config.xml" hash="b5dc2fe2c23975efad00a1aeb15f0888"/></dir></dir></dir></dir></target><target name="magedesign"><dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="tagalys"><file name="ss.xml" hash="9d62ce5a9ae20f67f8f6b5baa8c5a2b6"/></dir></dir><dir name="template"><dir name="tagalys"><file name="tagalys_ss.phtml" hash="522f06677f0188c9a425a2401eb1ec11"/></dir></dir></dir></dir></dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="Tagalys_core.xml" hash="6385afae91af7bada73792120c378e65"/></dir><dir name="template"><dir name="tagalys"><file name="progressbar.phtml" hash="a54e328030c9f430a6022697f1431388"/></dir></dir></dir></dir></dir></dir></target><target name="mageskin"><dir><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="css"><file name="tagalys-core.css" hash="8d9ea54b6b1602cda702b4c55b4943a1"/></dir><dir name="images"><file name="logo-tagalys.png" hash="6b9eeda985cf02bfa23eeddcc64e422b"/></dir></dir></dir></dir></dir></target><target name="mage"><dir><dir name="js"><dir name="tagalys"><file name="tagalys-core.js" hash="09bba056df414ead8c8aea26a1fb8ed8"/></dir></dir></dir></target><target name="mageetc"><dir><dir name="modules"><file name="Tagalys_SearchSuggestions.xml" hash="0b256e54d7f0344f70c4c4efd0473b61"/><file name="Tagalys_Tsearch.xml" hash="8986598b80306698d18983ef9a2926f9"/></dir></dir></target></contents>
|
| 16 |
<compatible/>
|
| 17 |
+
<dependencies><required><php><min>5.3.0</min><max>7.0.10</max></php></required></dependencies>
|
| 18 |
</package>
|
