Version Notes
Better error handling. Better feed status.
Download this release
Release Info
Developer | Carlos Escribano Rey |
Extension | Doofinder_Feed |
Version | 1.8.9 |
Comparing to | |
See all releases |
Code changes from version 1.8.8 to 1.8.9
- app/code/community/Doofinder/Feed/Block/Adminhtml/Log/View.php +1 -1
- app/code/community/Doofinder/Feed/Block/Adminhtml/Map/Additional.php +1 -1
- app/code/community/Doofinder/Feed/Block/Integration.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Buttons/Generate.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Buttons/ViewLog.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Locks.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Panel/AtomicUpdates.php +50 -0
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Cron.php +0 -52
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Crondescription.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Datetime.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Description.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Panel/DynamicFeedUrl.php +44 -0
- app/code/community/Doofinder/Feed/Block/Settings/Panel/File.php +71 -18
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Layerdescription.php +1 -1
- app/code/community/Doofinder/Feed/Block/Settings/Panel/Message.php +1 -1
- app/code/community/Doofinder/Feed/Helper/Data.php +2 -2
- app/code/community/Doofinder/Feed/Helper/Log.php +2 -2
- app/code/community/Doofinder/Feed/Helper/Search.php +16 -6
- app/code/community/Doofinder/Feed/Helper/Tax.php +1 -1
- app/code/community/Doofinder/Feed/Model/Adminhtml/System/Config/Backend/Cron.php +1 -1
- app/code/community/Doofinder/Feed/Model/Config.php +2 -2
- app/code/community/Doofinder/Feed/Model/Cron.php +1 -1
- app/code/community/Doofinder/Feed/Model/Generator.php +2 -2
- app/code/community/Doofinder/Feed/Model/Log.php +1 -1
- app/code/community/Doofinder/Feed/Model/Map/Product/Abstract.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Associated.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Bundle.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Configurable.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Downloadable.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Grouped.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Simple.php +2 -2
- app/code/community/Doofinder/Feed/Model/Map/Product/Virtual.php +2 -2
- app/code/community/Doofinder/Feed/Model/Mysql4/Cron.php +1 -1
- app/code/community/Doofinder/Feed/Model/Mysql4/Cron/Collection.php +1 -1
- app/code/community/Doofinder/Feed/Model/Mysql4/Log.php +1 -1
- app/code/community/Doofinder/Feed/Model/Mysql4/Log/Collection.php +1 -1
- app/code/community/Doofinder/Feed/Model/Observers/Feed.php +85 -69
- app/code/community/Doofinder/Feed/Model/Observers/Logs.php +1 -1
- app/code/community/Doofinder/Feed/Model/Observers/Schedule.php +1 -1
- app/code/community/Doofinder/Feed/Model/Resource/Mysql4/Setup.php +1 -1
- app/code/community/Doofinder/Feed/Model/System/Config/Backend/Map/Additional.php +1 -1
- app/code/community/Doofinder/Feed/Model/System/Config/Reset.php +1 -1
- app/code/community/Doofinder/Feed/Model/System/Config/Source/Feed/Pricetaxmode.php +1 -1
- app/code/community/Doofinder/Feed/Model/System/Config/Source/Product/Attributes.php +1 -1
- app/code/community/Doofinder/Feed/Model/Tools.php +2 -2
- app/code/community/Doofinder/Feed/controllers/DoofinderFeedFeedController.php +1 -1
- app/code/community/Doofinder/Feed/controllers/DoofinderFeedLogController.php +1 -1
- app/code/community/Doofinder/Feed/controllers/FeedController.php +2 -2
- app/code/community/Doofinder/Feed/controllers/IndexController.php +2 -2
- app/code/community/Doofinder/Feed/etc/config.xml +1 -1
- app/code/community/Doofinder/Feed/etc/system.xml +15 -7
- package.xml +5 -5
app/code/community/Doofinder/Feed/Block/Adminhtml/Log/View.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Adminhtml_Log_View extends Mage_Adminhtml_Block_Widget_Grid
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Adminhtml_Log_View extends Mage_Adminhtml_Block_Widget_Grid
|
app/code/community/Doofinder/Feed/Block/Adminhtml/Map/Additional.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Adminhtml_Map_Additional extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Adminhtml_Map_Additional extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Integration.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Integration extends Mage_Core_Block_Abstract
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Integration extends Mage_Core_Block_Abstract
|
app/code/community/Doofinder/Feed/Block/Settings/Buttons/Generate.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Buttons_Generate extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Buttons_Generate extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Settings/Buttons/ViewLog.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Buttons_ViewLog extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Buttons_ViewLog extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Settings/Locks.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Locks extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Locks extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/AtomicUpdates.php
ADDED
@@ -0,0 +1,50 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file is part of Doofinder_Feed.
|
4 |
+
*/
|
5 |
+
|
6 |
+
/**
|
7 |
+
* @category blocks
|
8 |
+
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
+
*/
|
11 |
+
|
12 |
+
class Doofinder_Feed_Block_Settings_Panel_AtomicUpdates extends Mage_Adminhtml_Block_System_Config_Form_Field
|
13 |
+
{
|
14 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
15 |
+
{
|
16 |
+
$helper = Mage::helper('doofinder_feed');
|
17 |
+
|
18 |
+
$this->setElement($element);
|
19 |
+
$name = $element->getName();
|
20 |
+
$element->setScopeLabel('');
|
21 |
+
|
22 |
+
$messages = array();
|
23 |
+
foreach (Mage::app()->getStores() as $store) {
|
24 |
+
if ($store->getIsActive()) {
|
25 |
+
$engineEnabled = Mage::getStoreConfig('doofinder_search/internal_settings/enable', $store->getCode());
|
26 |
+
$atomicUpdatesEnabled = Mage::getStoreConfig('doofinder_cron/feed_settings/atomic_updates_enabled', $store->getCode());
|
27 |
+
|
28 |
+
if (!$engineEnabled || !$atomicUpdatesEnabled) {
|
29 |
+
$message = $helper->__('Atomic updates are <strong>disabled</strong>.');
|
30 |
+
} else {
|
31 |
+
$message = $helper->__('Atomic updates are <strong>enabled</strong>. Your products will be automatically indexed when they are created, updated or deleted.');
|
32 |
+
}
|
33 |
+
|
34 |
+
$messages[$store->getName()] = $message;
|
35 |
+
}
|
36 |
+
}
|
37 |
+
|
38 |
+
if (count(array_unique($messages)) == 1) {
|
39 |
+
return reset($messages);
|
40 |
+
}
|
41 |
+
|
42 |
+
$html = '<ul>';
|
43 |
+
foreach ($messages as $name => $message) {
|
44 |
+
$html .= '<li><strong>' . $name . ':</strong><p>' . $message . '</p></li>';
|
45 |
+
}
|
46 |
+
$html .= '</ul>';
|
47 |
+
|
48 |
+
return $html;
|
49 |
+
}
|
50 |
+
}
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Cron.php
DELETED
@@ -1,52 +0,0 @@
|
|
1 |
-
<?php
|
2 |
-
class Doofinder_Feed_Block_Settings_Panel_Cron extends Mage_Adminhtml_Block_System_Config_Form_Field
|
3 |
-
{
|
4 |
-
// 12 Hours in seconds
|
5 |
-
const ALLOWED_TIME = 43200;
|
6 |
-
|
7 |
-
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
8 |
-
{
|
9 |
-
$lastSchedule = Mage::getModel('cron/schedule')->getCollection()
|
10 |
-
->setOrder('finished_at', 'desc')
|
11 |
-
->getFirstItem();
|
12 |
-
|
13 |
-
$message = '';
|
14 |
-
if ($lastSchedule && count($lastSchedule->getData()) > 0) {
|
15 |
-
$scheduleTime = strtotime($lastSchedule->getFinishedAt());
|
16 |
-
$currentTime = time();
|
17 |
-
|
18 |
-
// Difference in seconds
|
19 |
-
$dif = ($currentTime - $scheduleTime);
|
20 |
-
|
21 |
-
// If difference is bigger than allowed, display message
|
22 |
-
if ($dif > self::ALLOWED_TIME) {
|
23 |
-
|
24 |
-
$message = sprintf('Cron was run for the last time at %s. Taking into account the settings of the step delay option, there might be problems with the cron\'s configuration.', $lastSchedule->getFinishedAt());
|
25 |
-
Mage::helper('doofinder_feed')->__($message);
|
26 |
-
}
|
27 |
-
} else {
|
28 |
-
$message = Mage::helper('doofinder_feed')->__('There are no registered cron tasks. Please, check your system\'s crontab configuration.');
|
29 |
-
}
|
30 |
-
|
31 |
-
return '<p class="error">' . $message . '</p>';
|
32 |
-
}
|
33 |
-
|
34 |
-
public function render(Varien_Data_Form_Element_Abstract $element)
|
35 |
-
{
|
36 |
-
$html = '<td class="label"></td>' .
|
37 |
-
'<td class="value" colspan="3">' . $this->_getElementHtml($element) . '</td>';
|
38 |
-
return $this->_decorateRowHtml($element, $html);
|
39 |
-
}
|
40 |
-
|
41 |
-
/**
|
42 |
-
* Decorate field row html
|
43 |
-
*
|
44 |
-
* @param Varien_Data_Form_Element_Abstract $element
|
45 |
-
* @param string $html
|
46 |
-
* @return string
|
47 |
-
*/
|
48 |
-
protected function _decorateRowHtml($element, $html)
|
49 |
-
{
|
50 |
-
return '<tr id="row_' . $element->getHtmlId() . '">' . $html . '</tr>';
|
51 |
-
}
|
52 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Crondescription.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_CronDescription extends Doofinder_Feed_Block_Settings_Panel_Description
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_CronDescription extends Doofinder_Feed_Block_Settings_Panel_Description
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Datetime.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Datetime extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Datetime extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Description.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Description extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Description extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/DynamicFeedUrl.php
ADDED
@@ -0,0 +1,44 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* This file is part of Doofinder_Feed.
|
4 |
+
*/
|
5 |
+
|
6 |
+
/**
|
7 |
+
* @category blocks
|
8 |
+
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
+
*/
|
11 |
+
|
12 |
+
class Doofinder_Feed_Block_Settings_Panel_DynamicFeedUrl extends Mage_Adminhtml_Block_System_Config_Form_Field
|
13 |
+
{
|
14 |
+
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
15 |
+
{
|
16 |
+
$helper = Mage::helper('doofinder_feed');
|
17 |
+
|
18 |
+
$this->setElement($element);
|
19 |
+
$name = $element->getName();
|
20 |
+
$element->setScopeLabel('');
|
21 |
+
|
22 |
+
$html = '<ul>';
|
23 |
+
foreach (Mage::app()->getStores() as $store) {
|
24 |
+
if ($store->getIsActive()) {
|
25 |
+
$password = $store->getConfig('doofinder_cron/feed_settings/password');
|
26 |
+
$params = array('language' => $store->getCode());
|
27 |
+
|
28 |
+
if ($password) {
|
29 |
+
$params['password'] = $password;
|
30 |
+
}
|
31 |
+
|
32 |
+
$url = Mage::getUrl('doofinder/feed', array('_store' => $store->getCode(), '_nosid' => true) + $params);
|
33 |
+
$anchor = '<a href="' . $url . '">' . $url . '</a>';
|
34 |
+
$html .= '<li><strong>' . $store->getName() . ':</strong><p>' . $anchor . '</p></li>';
|
35 |
+
}
|
36 |
+
}
|
37 |
+
$html .= '</ul>';
|
38 |
+
$html .= '<p>';
|
39 |
+
$html .= $helper->__('If cron feed doesn\'t work for you, use these URLs to dynamically index your content from Doofinder. Contact support if you need help.');
|
40 |
+
$html .= '</p>';
|
41 |
+
|
42 |
+
return $html;
|
43 |
+
}
|
44 |
+
}
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/File.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_System_Config_Form_Field
|
@@ -17,8 +17,40 @@ class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_Syst
|
|
17 |
*/
|
18 |
const ERROR_PREFIX = "#error#";
|
19 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
20 |
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
21 |
{
|
|
|
|
|
22 |
$this->setElement($element);
|
23 |
$name = $element->getName();
|
24 |
$element->setScopeLabel('');
|
@@ -36,32 +68,53 @@ class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_Syst
|
|
36 |
}
|
37 |
}
|
38 |
|
39 |
-
$
|
|
|
40 |
|
41 |
foreach ($stores as $store) {
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
$fileUrl = Mage::getBaseUrl('media').'doofinder'.DS.$lastGeneratedName;
|
46 |
-
$fileDir = Mage::getBaseDir('media').DS.'doofinder'.DS.$lastGeneratedName;
|
47 |
-
if ($lastGeneratedName && file_exists($fileDir)) {
|
48 |
-
$files[$store->getCode()] = "<a href='{$fileUrl}' target='_blank'>" . (count($stores) > 1 ? $fileUrl : "Get {$lastGeneratedName}") . "</a>";
|
49 |
} else {
|
50 |
-
$
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
51 |
}
|
|
|
|
|
52 |
}
|
53 |
|
54 |
$html = '';
|
55 |
|
56 |
-
if (
|
57 |
-
$html .=
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
$html
|
62 |
-
}
|
63 |
-
|
|
|
|
|
|
|
64 |
}
|
|
|
65 |
|
66 |
return $html;
|
67 |
}
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_File extends Mage_Adminhtml_Block_System_Config_Form_Field
|
17 |
*/
|
18 |
const ERROR_PREFIX = "#error#";
|
19 |
|
20 |
+
// 12 Hours in seconds
|
21 |
+
const ALLOWED_TIME = 43200;
|
22 |
+
|
23 |
+
protected function getCronMessage()
|
24 |
+
{
|
25 |
+
$lastSchedule = Mage::getModel('cron/schedule')->getCollection()
|
26 |
+
->setOrder('finished_at', 'desc')
|
27 |
+
->getFirstItem();
|
28 |
+
|
29 |
+
$message = '';
|
30 |
+
if ($lastSchedule && count($lastSchedule->getData()) > 0) {
|
31 |
+
$scheduleTime = strtotime($lastSchedule->getFinishedAt());
|
32 |
+
$currentTime = time();
|
33 |
+
|
34 |
+
// Difference in seconds
|
35 |
+
$dif = ($currentTime - $scheduleTime);
|
36 |
+
|
37 |
+
// If difference is bigger than allowed, display message
|
38 |
+
if ($dif > self::ALLOWED_TIME) {
|
39 |
+
|
40 |
+
$message = sprintf('Cron was run for the last time at %s. Taking into account the settings of the step delay option, there might be problems with the cron\'s configuration.', $lastSchedule->getFinishedAt());
|
41 |
+
Mage::helper('doofinder_feed')->__($message);
|
42 |
+
}
|
43 |
+
} else {
|
44 |
+
$message = Mage::helper('doofinder_feed')->__('There are no registered cron tasks. Please, check your system\'s crontab configuration.');
|
45 |
+
}
|
46 |
+
|
47 |
+
return '<p class="error">' . $message . '</p>';
|
48 |
+
}
|
49 |
+
|
50 |
protected function _getElementHtml(Varien_Data_Form_Element_Abstract $element)
|
51 |
{
|
52 |
+
$helper = Mage::helper('doofinder_feed');
|
53 |
+
|
54 |
$this->setElement($element);
|
55 |
$name = $element->getName();
|
56 |
$element->setScopeLabel('');
|
68 |
}
|
69 |
}
|
70 |
|
71 |
+
$enabled = false;
|
72 |
+
$messages = array();
|
73 |
|
74 |
foreach ($stores as $store) {
|
75 |
+
if (!$store->getConfig('doofinder_cron/schedule_settings/enabled')) {
|
76 |
+
$message = $helper->__('Cron-based feed generation is <strong>disabled</strong>.');
|
|
|
|
|
|
|
|
|
|
|
77 |
} else {
|
78 |
+
$enabled = true;
|
79 |
+
$process = Mage::getModel('doofinder_feed/cron')->load($store->getCode(), 'store_code');
|
80 |
+
$lastGeneratedName = $process->getLastFeedName();
|
81 |
+
|
82 |
+
$fileUrl = Mage::getBaseUrl('media').'doofinder'.DS.$lastGeneratedName;
|
83 |
+
$fileDir = Mage::getBaseDir('media').DS.'doofinder'.DS.$lastGeneratedName;
|
84 |
+
|
85 |
+
if ($lastGeneratedName && file_exists($fileDir)) {
|
86 |
+
$message = '<p><a href=' . $fileUrl . ' target="_blank">';
|
87 |
+
$message .= count($stores) > 1 ? $fileUrl : $helper->__('Get %s', $lastGeneratedName);
|
88 |
+
$message .= '</a></p>';
|
89 |
+
} else {
|
90 |
+
$message = '<p>' . $helper->__('Currently there is no file to preview.') . '</p>';
|
91 |
+
}
|
92 |
+
|
93 |
+
$time = explode(',', Mage::getStoreConfig('doofinder_cron/schedule_settings/time', $store->getCode()));
|
94 |
+
$frequency = Mage::getStoreConfig('doofinder_cron/schedule_settings/frequency', $store->getCode());
|
95 |
+
$message .= '<p>';
|
96 |
+
$message .= $helper->__('Cron-based feed generation is <strong>enabled</strong>. Feed generation is being scheduled at %s:%s.', $time[0], $time[1]);
|
97 |
+
$message .= '</p>';
|
98 |
}
|
99 |
+
|
100 |
+
$messages[$store->getName()] = $message;
|
101 |
}
|
102 |
|
103 |
$html = '';
|
104 |
|
105 |
+
if ($enabled) {
|
106 |
+
$html .= $this->getCronMessage();
|
107 |
+
}
|
108 |
+
|
109 |
+
if (count(array_unique($messages)) == 1) {
|
110 |
+
return $html . reset($messages);
|
111 |
+
}
|
112 |
+
|
113 |
+
$html .= '<ul>';
|
114 |
+
foreach ($messages as $name => $message) {
|
115 |
+
$html .= '<li><strong>' . $name . ':</strong><p>' . $message . '</p></li>';
|
116 |
}
|
117 |
+
$html .= '</ul>';
|
118 |
|
119 |
return $html;
|
120 |
}
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Layerdescription.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_LayerDescription extends Doofinder_Feed_Block_Settings_Panel_Description
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_LayerDescription extends Doofinder_Feed_Block_Settings_Panel_Description
|
app/code/community/Doofinder/Feed/Block/Settings/Panel/Message.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Message extends Mage_Adminhtml_Block_System_Config_Form_Field
|
6 |
/**
|
7 |
* @category blocks
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Block_Settings_Panel_Message extends Mage_Adminhtml_Block_System_Config_Form_Field
|
app/code/community/Doofinder/Feed/Helper/Data.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Data helper for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Helper_Data extends Mage_Core_Helper_Abstract
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Data helper for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Helper_Data extends Mage_Core_Helper_Abstract
|
app/code/community/Doofinder/Feed/Helper/Log.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Log helper for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Helper_Log extends Mage_Core_Helper_Abstract
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Log helper for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Helper_Log extends Mage_Core_Helper_Abstract
|
app/code/community/Doofinder/Feed/Helper/Search.php
CHANGED
@@ -62,13 +62,19 @@ class Doofinder_Feed_Helper_Search extends Mage_Core_Helper_Abstract
|
|
62 |
|
63 |
$this->loadDoofinderLibrary();
|
64 |
$client = new \Doofinder\Api\Search\Client($hashId, $apiKey);
|
65 |
-
$results = $client->query($queryText, null, ['rpp' => $limit, 'transformer' => 'onlyid', 'filter' => []]);
|
66 |
|
67 |
-
|
68 |
-
|
69 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
70 |
|
71 |
-
return $this->retrieveIds($results);
|
72 |
}
|
73 |
|
74 |
/**
|
@@ -94,6 +100,10 @@ class Doofinder_Feed_Helper_Search extends Mage_Core_Helper_Abstract
|
|
94 |
*/
|
95 |
public function getAllResults()
|
96 |
{
|
|
|
|
|
|
|
|
|
97 |
$limit = Mage::getStoreConfig('doofinder_search/internal_settings/total_limit', Mage::app()->getStore());
|
98 |
$ids = $this->retrieveIds($this->_lastResults);
|
99 |
|
@@ -111,7 +121,7 @@ class Doofinder_Feed_Helper_Search extends Mage_Core_Helper_Abstract
|
|
111 |
*/
|
112 |
public function getResultsCount()
|
113 |
{
|
114 |
-
return $this->_lastResults->getProperty('total');
|
115 |
}
|
116 |
|
117 |
/**
|
62 |
|
63 |
$this->loadDoofinderLibrary();
|
64 |
$client = new \Doofinder\Api\Search\Client($hashId, $apiKey);
|
|
|
65 |
|
66 |
+
try {
|
67 |
+
$results = $client->query($queryText, null, ['rpp' => $limit, 'transformer' => 'onlyid', 'filter' => []]);
|
68 |
+
} catch (\Doofinder\Api\Search\Error $e) {
|
69 |
+
$results = null;
|
70 |
+
Mage::logException($e);
|
71 |
+
} finally {
|
72 |
+
// Store objects
|
73 |
+
$this->_lastSearch = $client;
|
74 |
+
$this->_lastResults = $results;
|
75 |
+
}
|
76 |
|
77 |
+
return $results ? $this->retrieveIds($results) : array();
|
78 |
}
|
79 |
|
80 |
/**
|
100 |
*/
|
101 |
public function getAllResults()
|
102 |
{
|
103 |
+
if (!$this->_lastResults) {
|
104 |
+
return array();
|
105 |
+
}
|
106 |
+
|
107 |
$limit = Mage::getStoreConfig('doofinder_search/internal_settings/total_limit', Mage::app()->getStore());
|
108 |
$ids = $this->retrieveIds($this->_lastResults);
|
109 |
|
121 |
*/
|
122 |
public function getResultsCount()
|
123 |
{
|
124 |
+
return $this->_lastResults ? $this->_lastResults->getProperty('total') : 0;
|
125 |
}
|
126 |
|
127 |
/**
|
app/code/community/Doofinder/Feed/Helper/Tax.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Helper_Tax extends Mage_Tax_Helper_Data
|
6 |
/**
|
7 |
* @category Helpers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Helper_Tax extends Mage_Tax_Helper_Data
|
app/code/community/Doofinder/Feed/Model/Adminhtml/System/Config/Backend/Cron.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Adminhtml_System_Config_Backend_Cron extends Mage_Core_Model_Config_Data {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Adminhtml_System_Config_Backend_Cron extends Mage_Core_Model_Config_Data {
|
app/code/community/Doofinder/Feed/Model/Config.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Config model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Config extends Mage_Core_Model_Config_Data
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Config model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Config extends Mage_Core_Model_Config_Data
|
app/code/community/Doofinder/Feed/Model/Cron.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Cron extends Mage_Core_Model_Abstract {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Cron extends Mage_Core_Model_Abstract {
|
app/code/community/Doofinder/Feed/Model/Generator.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Generator model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
if (!defined('DS'))
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Generator model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
if (!defined('DS'))
|
app/code/community/Doofinder/Feed/Model/Log.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Log extends Mage_Core_Model_Abstract {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Log extends Mage_Core_Model_Abstract {
|
app/code/community/Doofinder/Feed/Model/Map/Product/Abstract.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Abstract Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Abstract Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Abstract extends Varien_Object
|
app/code/community/Doofinder/Feed/Model/Map/Product/Associated.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Associated Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Associated
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Associated Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Associated
|
app/code/community/Doofinder/Feed/Model/Map/Product/Bundle.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Bundle Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Bundle
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Bundle Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Bundle
|
app/code/community/Doofinder/Feed/Model/Map/Product/Configurable.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Configurable Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Configurable
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Configurable Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Configurable
|
app/code/community/Doofinder/Feed/Model/Map/Product/Downloadable.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Downloadable Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Downloadable
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Downloadable Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Downloadable
|
app/code/community/Doofinder/Feed/Model/Map/Product/Grouped.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Grouped Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Grouped
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Grouped Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Grouped
|
app/code/community/Doofinder/Feed/Model/Map/Product/Simple.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Simple Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Simple
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Simple Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Simple
|
app/code/community/Doofinder/Feed/Model/Map/Product/Virtual.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Virtual Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Virtual
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Virtual Product Map Model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Map_Product_Virtual
|
app/code/community/Doofinder/Feed/Model/Mysql4/Cron.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Cron extends Mage_Core_Model_Mysql4_Abstract {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Cron extends Mage_Core_Model_Mysql4_Abstract {
|
app/code/community/Doofinder/Feed/Model/Mysql4/Cron/Collection.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Cron_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Cron_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract {
|
app/code/community/Doofinder/Feed/Model/Mysql4/Log.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Log extends Mage_Core_Model_Mysql4_Abstract {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Log extends Mage_Core_Model_Mysql4_Abstract {
|
app/code/community/Doofinder/Feed/Model/Mysql4/Log/Collection.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Log_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Mysql4_Log_Collection extends Mage_Core_Model_Mysql4_Collection_Abstract
|
app/code/community/Doofinder/Feed/Model/Observers/Feed.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Feed
|
@@ -31,12 +31,89 @@ class Doofinder_Feed_Model_Observers_Feed
|
|
31 |
$this->_log = Mage::helper('doofinder_feed/log');
|
32 |
}
|
33 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
34 |
public function updateSearchEngineIndexes($observer) {
|
35 |
|
36 |
$helper = Mage::helper('doofinder_feed');
|
37 |
|
38 |
$product = $observer->getProduct();
|
39 |
-
$products[] = $product->getId();
|
40 |
|
41 |
$storeCodes = array();
|
42 |
$store = Mage::getModel('core/store')->load($product->getStoreId());
|
@@ -67,74 +144,13 @@ class Doofinder_Feed_Model_Observers_Feed
|
|
67 |
|
68 |
// Loop over all stores and update relevant search engines
|
69 |
foreach ($storeCodes as $storeCode) {
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
// Set options
|
79 |
-
$options = array(
|
80 |
-
'close_empty' => true, // close xml even if there are no items
|
81 |
-
'products' => $products, // list of products in feed
|
82 |
-
'store_code' => $this->config['storeCode'],
|
83 |
-
'grouped' => $this->_getBoolean($this->config['grouped']),
|
84 |
-
'display_price' => $this->_getBoolean($this->config['display_price']),
|
85 |
-
'minimal_price' => $this->_getBoolean('minimal_price', false),
|
86 |
-
'image_size' => $this->config['image_size'],
|
87 |
-
'customer_group_id' => 0,
|
88 |
-
);
|
89 |
-
|
90 |
-
$generator = Mage::getModel('doofinder_feed/generator', $options);
|
91 |
-
|
92 |
-
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Starting atomic update for product %d in store %s', $product->getId(), $storeCode));
|
93 |
-
|
94 |
-
$xmlData = $generator->run();
|
95 |
-
|
96 |
-
if ($xmlData) {
|
97 |
-
$rss = simplexml_load_string($xmlData);
|
98 |
-
|
99 |
-
$hashId = Mage::getStoreConfig('doofinder_search/internal_settings/hash_id', $this->storeCode);
|
100 |
-
if ($hashId === '') {
|
101 |
-
|
102 |
-
$warning = sprintf('HashID is not set for the \'%s\' store view, therefore, search indexes haven\'t been
|
103 |
-
updated for
|
104 |
-
this store view. To fix this problem set HashID for a given stor view or disable Internal Search in Doofinder
|
105 |
-
Search Configuration.', $this->storeCode);
|
106 |
-
$this->_log->debug($warning);
|
107 |
-
Mage::getSingleton('adminhtml/session')->addWarning($warning);
|
108 |
-
continue;
|
109 |
-
}
|
110 |
-
|
111 |
-
$searchEngine = Mage::helper('doofinder_feed/search')->getDoofinderSearchEngine($this->storeCode);
|
112 |
-
|
113 |
-
// Check if search engine exists and skip foreach iteration if not.
|
114 |
-
if (!$searchEngine) {
|
115 |
-
$error = sprintf('Search engine with HashID %s doesn\'t exists. Please, check your configuration.', $hashId);
|
116 |
-
$this->_log->debug($error);
|
117 |
-
Mage::getSingleton('adminhtml/session')->addError($error);
|
118 |
-
continue;
|
119 |
-
}
|
120 |
-
|
121 |
-
// Declare array of products to update
|
122 |
-
$products = array();
|
123 |
-
foreach ($rss->channel->item as $item) {
|
124 |
-
$_product = array();
|
125 |
-
foreach ($item as $key => $value) {
|
126 |
-
$_product[$key] = (string)$value;
|
127 |
-
}
|
128 |
-
$products[] = $_product;
|
129 |
-
}
|
130 |
-
if (count($products)) {
|
131 |
-
$searchEngine->updateItems('product', $products);
|
132 |
-
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Atomic update for product %d in store %s done with: %s', $product->getId(), $storeCode, json_encode($products)));
|
133 |
-
return;
|
134 |
-
}
|
135 |
}
|
136 |
-
|
137 |
-
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Atomic update for product %d in store %s failed with no data', $product->getId(), $storeCode));
|
138 |
}
|
139 |
}
|
140 |
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Feed
|
31 |
$this->_log = Mage::helper('doofinder_feed/log');
|
32 |
}
|
33 |
|
34 |
+
/**
|
35 |
+
* Update product index in given store context
|
36 |
+
*
|
37 |
+
* @param Mage_Catalog_Model_Product $product
|
38 |
+
* @param string $storeCode
|
39 |
+
*/
|
40 |
+
protected function updateProductIndex($product, $storeCode)
|
41 |
+
{
|
42 |
+
$helper = Mage::helper('doofinder_feed');
|
43 |
+
|
44 |
+
// Set store code
|
45 |
+
$this->storeCode = $storeCode;
|
46 |
+
|
47 |
+
// Get store config
|
48 |
+
$this->config = $helper->getStoreConfig($this->storeCode);
|
49 |
+
|
50 |
+
// Set options
|
51 |
+
$options = array(
|
52 |
+
'close_empty' => true, // close xml even if there are no items
|
53 |
+
'products' => array($product->getId()), // list of products in feed
|
54 |
+
'store_code' => $this->config['storeCode'],
|
55 |
+
'grouped' => $this->_getBoolean($this->config['grouped']),
|
56 |
+
'display_price' => $this->_getBoolean($this->config['display_price']),
|
57 |
+
'minimal_price' => $this->_getBoolean('minimal_price', false),
|
58 |
+
'image_size' => $this->config['image_size'],
|
59 |
+
'customer_group_id' => 0,
|
60 |
+
);
|
61 |
+
|
62 |
+
$generator = Mage::getModel('doofinder_feed/generator', $options);
|
63 |
+
|
64 |
+
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Starting atomic update for product %d in store %s', $product->getId(), $storeCode));
|
65 |
+
|
66 |
+
$xmlData = $generator->run();
|
67 |
+
|
68 |
+
if ($xmlData) {
|
69 |
+
$rss = simplexml_load_string($xmlData);
|
70 |
+
|
71 |
+
$hashId = Mage::getStoreConfig('doofinder_search/internal_settings/hash_id', $this->storeCode);
|
72 |
+
if ($hashId === '') {
|
73 |
+
|
74 |
+
$warning = sprintf('HashID is not set for the \'%s\' store view, therefore, search indexes haven\'t been
|
75 |
+
updated for
|
76 |
+
this store view. To fix this problem set HashID for a given stor view or disable Internal Search in Doofinder
|
77 |
+
Search Configuration.', $this->storeCode);
|
78 |
+
$this->_log->debug($warning);
|
79 |
+
Mage::getSingleton('adminhtml/session')->addWarning($warning);
|
80 |
+
return;
|
81 |
+
}
|
82 |
+
|
83 |
+
$searchEngine = Mage::helper('doofinder_feed/search')->getDoofinderSearchEngine($this->storeCode);
|
84 |
+
|
85 |
+
// Check if search engine exists and skip foreach iteration if not.
|
86 |
+
if (!$searchEngine) {
|
87 |
+
$warning = sprintf('Search engine with HashID %s doesn\'t exists. Please, check your configuration.', $hashId);
|
88 |
+
$this->_log->debug($warning);
|
89 |
+
Mage::getSingleton('adminhtml/session')->addWarning($warning);
|
90 |
+
return;
|
91 |
+
}
|
92 |
+
|
93 |
+
// Declare array of products to update
|
94 |
+
$products = array();
|
95 |
+
foreach ($rss->channel->item as $item) {
|
96 |
+
$_product = array();
|
97 |
+
foreach ($item as $key => $value) {
|
98 |
+
$_product[$key] = (string)$value;
|
99 |
+
}
|
100 |
+
$products[] = $_product;
|
101 |
+
}
|
102 |
+
if (count($products)) {
|
103 |
+
$searchEngine->updateItems('product', $products);
|
104 |
+
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Atomic update for product %d in store %s done with: %s', $product->getId(), $storeCode, json_encode($products)));
|
105 |
+
return;
|
106 |
+
}
|
107 |
+
|
108 |
+
$this->_log->_debugEnabled && $this->_log->debug(sprintf('Atomic update for product %d in store %s failed with no data', $product->getId(), $storeCode));
|
109 |
+
}
|
110 |
+
}
|
111 |
+
|
112 |
public function updateSearchEngineIndexes($observer) {
|
113 |
|
114 |
$helper = Mage::helper('doofinder_feed');
|
115 |
|
116 |
$product = $observer->getProduct();
|
|
|
117 |
|
118 |
$storeCodes = array();
|
119 |
$store = Mage::getModel('core/store')->load($product->getStoreId());
|
144 |
|
145 |
// Loop over all stores and update relevant search engines
|
146 |
foreach ($storeCodes as $storeCode) {
|
147 |
+
try {
|
148 |
+
$this->updateProductIndex($product, $storeCode);
|
149 |
+
} catch (Exception $e) {
|
150 |
+
$warning = $helper->__('There was an error during product %d indexing: %s', $product->getId(), $e->getMessage());
|
151 |
+
$this->_log->debug($warning);
|
152 |
+
Mage::getSingleton('adminhtml/session')->addWarning($warning);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
153 |
}
|
|
|
|
|
154 |
}
|
155 |
}
|
156 |
|
app/code/community/Doofinder/Feed/Model/Observers/Logs.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Logs
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Logs
|
app/code/community/Doofinder/Feed/Model/Observers/Schedule.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Schedule
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Observers_Schedule
|
app/code/community/Doofinder/Feed/Model/Resource/Mysql4/Setup.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Resource_Mysql4_Setup extends Mage_Core_Model_Resource_Setup {
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_Resource_Mysql4_Setup extends Mage_Core_Model_Resource_Setup {
|
app/code/community/Doofinder/Feed/Model/System/Config/Backend/Map/Additional.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Backend_Map_Additional extends Mage_Adminhtml_Model_System_Config_Backend_Serialized
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Backend_Map_Additional extends Mage_Adminhtml_Model_System_Config_Backend_Serialized
|
app/code/community/Doofinder/Feed/Model/System/Config/Reset.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Reset extends Mage_Core_Model_Config_Data
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Reset extends Mage_Core_Model_Config_Data
|
app/code/community/Doofinder/Feed/Model/System/Config/Source/Feed/Pricetaxmode.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Source_Feed_Pricetaxmode
|
app/code/community/Doofinder/Feed/Model/System/Config/Source/Product/Attributes.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Source_Product_Attributes
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_Model_System_Config_Source_Product_Attributes
|
app/code/community/Doofinder/Feed/Model/Tools.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Tools model for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Tools extends Varien_Object
|
6 |
/**
|
7 |
* @category Models
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Tools model for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_Model_Tools extends Varien_Object
|
app/code/community/Doofinder/Feed/controllers/DoofinderFeedFeedController.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_DoofinderFeedFeedController extends Mage_Adminhtml_Controller_Action
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_DoofinderFeedFeedController extends Mage_Adminhtml_Controller_Action
|
app/code/community/Doofinder/Feed/controllers/DoofinderFeedLogController.php
CHANGED
@@ -6,7 +6,7 @@
|
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_DoofinderFeedLogController extends Mage_Adminhtml_Controller_Action
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
class Doofinder_Feed_DoofinderFeedLogController extends Mage_Adminhtml_Controller_Action
|
app/code/community/Doofinder/Feed/controllers/FeedController.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Feed controller for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_FeedController extends Mage_Core_Controller_Front_Action
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Feed controller for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_FeedController extends Mage_Core_Controller_Front_Action
|
app/code/community/Doofinder/Feed/controllers/IndexController.php
CHANGED
@@ -6,13 +6,13 @@
|
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
-
* @version 1.8.
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Index controller for Doofinder Feed
|
14 |
*
|
15 |
-
* @version 1.8.
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_IndexController extends Mage_Core_Controller_Front_Action
|
6 |
/**
|
7 |
* @category controllers
|
8 |
* @package Doofinder_Feed
|
9 |
+
* @version 1.8.9
|
10 |
*/
|
11 |
|
12 |
/**
|
13 |
* Index controller for Doofinder Feed
|
14 |
*
|
15 |
+
* @version 1.8.9
|
16 |
* @package Doofinder_Feed
|
17 |
*/
|
18 |
class Doofinder_Feed_IndexController extends Mage_Core_Controller_Front_Action
|
app/code/community/Doofinder/Feed/etc/config.xml
CHANGED
@@ -3,7 +3,7 @@
|
|
3 |
|
4 |
<modules>
|
5 |
<Doofinder_Feed>
|
6 |
-
<version>1.8.
|
7 |
</Doofinder_Feed>
|
8 |
</modules>
|
9 |
<global>
|
3 |
|
4 |
<modules>
|
5 |
<Doofinder_Feed>
|
6 |
+
<version>1.8.9</version>
|
7 |
</Doofinder_Feed>
|
8 |
</modules>
|
9 |
<global>
|
app/code/community/Doofinder/Feed/etc/system.xml
CHANGED
@@ -351,14 +351,14 @@
|
|
351 |
<show_in_website>0</show_in_website>
|
352 |
<show_in_store>1</show_in_store>
|
353 |
<fields>
|
354 |
-
<
|
355 |
-
<label>
|
356 |
-
<frontend_model>doofinder_feed/
|
357 |
-
<sort_order>
|
358 |
<show_in_default>1</show_in_default>
|
359 |
-
<show_in_website>
|
360 |
-
<show_in_store>
|
361 |
-
</
|
362 |
<status>
|
363 |
<label>Status</label>
|
364 |
<frontend_model>doofinder_feed/settings_panel_message</frontend_model>
|
@@ -431,6 +431,14 @@
|
|
431 |
<show_in_website>0</show_in_website>
|
432 |
<show_in_store>1</show_in_store>
|
433 |
</view_log>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
434 |
</fields>
|
435 |
</panel>
|
436 |
<advanced translate="label">
|
351 |
<show_in_website>0</show_in_website>
|
352 |
<show_in_store>1</show_in_store>
|
353 |
<fields>
|
354 |
+
<dynamic_feed_url>
|
355 |
+
<label>Dynamic feed URL</label>
|
356 |
+
<frontend_model>doofinder_feed/settings_panel_dynamicFeedUrl</frontend_model>
|
357 |
+
<sort_order>0</sort_order>
|
358 |
<show_in_default>1</show_in_default>
|
359 |
+
<show_in_website>0</show_in_website>
|
360 |
+
<show_in_store>0</show_in_store>
|
361 |
+
</dynamic_feed_url>
|
362 |
<status>
|
363 |
<label>Status</label>
|
364 |
<frontend_model>doofinder_feed/settings_panel_message</frontend_model>
|
431 |
<show_in_website>0</show_in_website>
|
432 |
<show_in_store>1</show_in_store>
|
433 |
</view_log>
|
434 |
+
<atomic_updates>
|
435 |
+
<label>Atomic Updates</label>
|
436 |
+
<frontend_model>doofinder_feed/settings_panel_atomicUpdates</frontend_model>
|
437 |
+
<sort_order>0</sort_order>
|
438 |
+
<show_in_default>1</show_in_default>
|
439 |
+
<show_in_website>0</show_in_website>
|
440 |
+
<show_in_store>0</show_in_store>
|
441 |
+
</atomic_updates>
|
442 |
</fields>
|
443 |
</panel>
|
444 |
<advanced translate="label">
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Doofinder_Feed</name>
|
4 |
-
<version>1.8.
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
@@ -48,11 +48,11 @@ Doofinder is fast and innovative. With no doubt, it is the best search engine fo
|
|
48 |
You can get more info and create your account visiting the Doofinder site:
|
49 |

|
50 |
http://www.doofinder.com</description>
|
51 |
-
<notes>
|
52 |
<authors><author><name>Carlos Escribano Rey</name><user>doofinder</user><email>carlos@doofinder.com</email></author></authors>
|
53 |
-
<date>2017-06-
|
54 |
-
<time>
|
55 |
-
<contents><target name="magecommunity"><dir name="Doofinder"><dir name="Feed"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="View.php" hash="
|
56 |
<compatible/>
|
57 |
<dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
|
58 |
</package>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>Doofinder_Feed</name>
|
4 |
+
<version>1.8.9</version>
|
5 |
<stability>stable</stability>
|
6 |
<license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
48 |
You can get more info and create your account visiting the Doofinder site:
|
49 |

|
50 |
http://www.doofinder.com</description>
|
51 |
+
<notes>Better error handling. Better feed status.</notes>
|
52 |
<authors><author><name>Carlos Escribano Rey</name><user>doofinder</user><email>carlos@doofinder.com</email></author></authors>
|
53 |
+
<date>2017-06-23</date>
|
54 |
+
<time>13:25:41</time>
|
55 |
+
<contents><target name="magecommunity"><dir name="Doofinder"><dir name="Feed"><dir name="Block"><dir name="Adminhtml"><dir name="Log"><file name="View.php" hash="33cf84443f5e22fde5578b9e1d3b58e5"/></dir><dir name="Map"><file name="Additional.php" hash="ee5111fc38ee1ee70a1d801f85324767"/></dir></dir><file name="Integration.php" hash="2ce65aa3eb2ae770334ed900bdb4d8d3"/><dir name="Settings"><dir name="Buttons"><file name="Generate.php" hash="8bad88455d5c8b96182a41042be363ba"/><file name="ViewLog.php" hash="7e727ed612280cb9aba3cf2d0632eadc"/></dir><file name="Locks.php" hash="57f71f749f47b06064a8a4692a7c57ac"/><dir name="Panel"><file name="AtomicUpdates.php" hash="a5eaa468474adf2335344e38f967b17e"/><file name="Crondescription.php" hash="ced273b7fffea1054b3d78795ad5d54a"/><file name="Datetime.php" hash="5e6dd5e7d0a7b204dfab2704a8f0ccda"/><file name="Description.php" hash="61afd0652da246e96887bdf50d73da1a"/><file name="DynamicFeedUrl.php" hash="baf391a0e70815df5dbe062dbd25be5c"/><file name="File.php" hash="0bad47ea042b9918e8a58c3542921a92"/><file name="Hashdescription.php" hash="707aa2f0eff7a1e170e6355787e09e84"/><file name="Layerdescription.php" hash="c3fad2ad6cfb509d8a5fec75fe001574"/><file name="Message.php" hash="f308381254a261bf8449641eeb2fe146"/></dir></dir></dir><dir name="Helper"><file name="Data.php" hash="ecb1c7a5b21f87bae59afd5677475ec8"/><file name="Log.php" hash="411c47f93944944c2bfef9267c87a5aa"/><file name="Search.php" hash="db314d97fabaae7a2d99a411fb5d4d5e"/><file name="Tax.php" hash="0131884ee36f3208517cc9b52fa20391"/></dir><dir name="Model"><dir name="Adminhtml"><dir name="System"><dir name="Config"><dir name="Backend"><file name="Cron.php" hash="ed025abd779e50261133da4019610fdc"/></dir><dir name="Validation"><file name="Hashid.php" hash="5c84ddebe10442c48bc8bca05a9253d1"/></dir></dir></dir></dir><dir name="CatalogSearch"><dir name="Resource"><file name="Fulltext.php" hash="a3ece9fe463669dc6c16a232f7160aba"/></dir></dir><file name="Config.php" hash="c5752f6ed48496d30b5ffe6f97dde5db"/><file name="Cron.php" hash="56dce1b1e7fe35ea3fdf85421cf814e0"/><file name="Generator.php" hash="314165d23e2578c72e2b7cfb0189bf3c"/><file name="Log.php" hash="da02408077807f8b139ff6b54777febd"/><dir name="Map"><dir name="Product"><file name="Abstract.php" hash="fcb6bdd15868364456f4b68a57bbb41b"/><file name="Associated.php" hash="0ad8d8e7d87326512a571eea64b6fa95"/><file name="Bundle.php" hash="5b681e5f75eb348fed8132288ec27559"/><file name="Configurable.php" hash="6f80969ecd29a78b2280d164ae4b159b"/><file name="Downloadable.php" hash="4ff1ea49167bef5592e5bb95d25f7cef"/><file name="Grouped.php" hash="939620a20f9542631d63c8e64ea34db8"/><file name="Simple.php" hash="2054984a160049674b1c470606ee3ff8"/><file name="Virtual.php" hash="20f74746f2c1ff6dfbc22c95b21ad288"/></dir></dir><dir name="Mysql4"><dir name="Cron"><file name="Collection.php" hash="df3c985053687c3ae66ea47c7933159b"/></dir><file name="Cron.php" hash="40e5c42e6aaaa72bc5c395f65cb086e7"/><dir name="Log"><file name="Collection.php" hash="743051c2135b9b4cd7b7730eac0f28ba"/></dir><file name="Log.php" hash="1def959e95b434bddd4b674e4c7d0499"/></dir><dir name="Observers"><file name="Feed.php" hash="2b682e754ee4d6157add0889caa68d62"/><file name="Logs.php" hash="41d0aafe38298f41f6bc7e9ab7263c99"/><file name="Schedule.php" hash="9637d1230271440cacbfcfae7299ed4e"/></dir><dir name="Resource"><dir name="Mysql4"><file name="Setup.php" hash="c5fff6122ebd62c74f032467a1479df9"/></dir></dir><dir name="System"><dir name="Config"><dir name="Backend"><dir name="Map"><file name="Additional.php" hash="256240ad36e8f17830a300fca21043c4"/></dir><file name="Password.php" hash="b52b0e16c0ae02fd528bf5c567a7a8b5"/><dir name="Total"><file name="Limit.php" hash="a23092ea72cbe81e2779b086ad055bf6"/></dir></dir><file name="Reset.php" hash="fa8df74ed6a7e62cb2320d114df573e5"/><dir name="Source"><dir name="Feed"><file name="Pricetaxmode.php" hash="dd6f8e135d633a67958ff22488f1a95b"/></dir><dir name="Product"><file name="Attributes.php" hash="b5e17d7d24ed7f6a019d6b1fac82c0e8"/></dir></dir></dir></dir><file name="Tools.php" hash="c21fed1ab73df408b9a5a401d295e705"/></dir><dir name="Test"><dir name="Controller"><dir name="Index"><dir name="fixtures"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="694cf25a35a9a301a8ae678866937909"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir><dir name="providers"><file name="testConfig.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/><file name="testFeed.yaml" hash="1ea2f638be8fdcea22ef47767ed8d7db"/><file name="testIndex.yaml" hash="0a1f21a3417389e0c0a13392c79a7a89"/></dir></dir><file name="Index.php" hash="2771de706303653d039818bd0f6590ea"/></dir><dir name="Model"><dir name="Product"><dir name="expectations"><file name="testGenerator.yaml" hash="232dda1f4fd88b8ef081393f08044731"/></dir><dir name="fixtures"><file name="testGenerator.yaml" hash="df25e3ca67fd98ab1b933c4951c599ef"/></dir><dir name="providers"><file name="testGenerator.yaml" hash="84779d5dcd8d92abdecf0cd5ee65cfb0"/></dir></dir><file name="Product.php" hash="6c45ae2b36c6cc721ef634855ed6d596"/></dir></dir><dir name="controllers"><file name="DoofinderFeedFeedController.php" hash="d53f6a0d35ebf8a3db8007d348ae443d"/><file name="DoofinderFeedLogController.php" hash="42bc1a5a7cda8d66ae493f80edffe18d"/><file name="FeedController.php" hash="b00aadc047470fa822ec2479f9c6fb5e"/><file name="IndexController.php" hash="3500b73730665b1fd3f1ac9b757cbe61"/></dir><dir name="etc"><file name="config.xml" hash="4e29907b77850f1bdee4866d08148822"/><file name="system.xml" hash="4fba4adc1eaf2f1700757f981272d866"/></dir><dir name="sql"><dir name="doofinder_feed_setup"><file name="mysql4-install-1.5.4.php" hash="9dc5ed4e10febbe75ab1911259a1c9fe"/><file name="mysql4-install-1.5.7.php" hash="85baa03d9c4d76f6b744ba107c21f8da"/><file name="mysql4-upgrade-1.5.4-1.5.5.php" hash="df7158f6d6cdded9bdfc5cb72c1dc8e3"/><file name="mysql4-upgrade-1.5.5-1.5.6.php" hash="0f3ca5263356a0bc83d9352b463944dc"/><file name="mysql4-upgrade-1.5.6-1.5.7.php" hash="b0180770655f36d6723483aa3bd1541f"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Doofinder_Feed.xml" hash="9d3b6fbbbec12708461c33260715451c"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="a7b9105a4e613086340b042845793d9f"/></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="doofinder.xml" hash="48a8636096950914917461260416c355"/></dir></dir></dir></dir></target><target name="mage"><dir name="js"><dir name="doofinder"><file name="admin.js" hash="ca050b0527ae101c75532fbca1c4a274"/></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="doofinder"><file name="styles.css" hash="d6ec303c3199db3ab4dffa8d2491105e"/></dir></dir></dir></dir></target><target name="magelib"><dir name="php-doofinder"><file name="CHANGELOG.txt" hash="b4fc19b1cb37810d8faa6a1e784ab32b"/><file name="README.md" hash="f9eda30362e3356947f86a9248122c2f"/><file name="autoload.php" hash="1ab27f8a639e30c5a25a6100f1a3035d"/><file name="composer.json" hash="76f54c3a763a3ae683fa677106b41027"/><file name="phpunit.xml" hash="97d89bb72790578c7ca60aebe7e3b1dd"/><dir name="src"><dir name="Management"><file name="AggregatesIterator.php" hash="431618213beb8294f6cab35376c935c8"/><file name="Client.php" hash="3d4dc1dbabcb42c7b1e4835ff5056d21"/><dir name="Errors"><file name="BadRequest.php" hash="45113fccee9500f4ee2a20e845ef8ee2"/><file name="NotAllowed.php" hash="98169302570fcf34a49277c5afbbed20"/><file name="NotFound.php" hash="9b08d95a549cfaea5562ecfa74a28746"/><file name="NotProcessedResponse.php" hash="63984cfbe90b6912e8d53faa293e65d6"/><file name="QuotaExhausted.php" hash="75f95704e509d7b5a4c61ebdb76208f5"/><file name="ThrottledResponse.php" hash="d3cd9c6df62246b5c3e80de3e1ecfc9c"/><file name="Utils.php" hash="be1220fc529292e8cc723dc9f68ef81d"/><file name="WrongResponse.php" hash="3c0fd79d6c04ac2c8f93984912369333"/></dir><file name="ItemsResultSet.php" hash="67532bd88b478fb4e0ce9f05d2ffd94a"/><file name="ScrollIterator.php" hash="0d916403f85a791af8e4e2240ad9e1be"/><file name="SearchEngine.php" hash="417e44ce9f11be52d3a6679161014eb8"/><file name="TopTermsIterator.php" hash="9ef2a784ce1d2cae81e577ce8c13ed08"/></dir><dir name="Search"><file name="Client.php" hash="857ed6a6594776f3060d87c2c9b86aca"/><file name="Error.php" hash="38a4283a860ed443f43a8452cc931c99"/><file name="Results.php" hash="87417657ec8a4908d6fd35868b782d7e"/></dir><dir name="Test"><dir name="Management"><file name="AggregatesIteratorTest.php" hash="eb9abdc3de26ac6396efc007373906ca"/><file name="ClientTest.php" hash="9958013403856eab97a44a14b8c32569"/><file name="ScrollIteratorTest.php" hash="34ef0111f1bb3633e6950151efd5e3ec"/><file name="SearchEngineTest.php" hash="a354a2e690851ab8d2b9a41495fcd979"/><file name="TopTermsIteratorTest.php" hash="9804ca4b89dce16d1e89b6614c11c2c0"/></dir><dir name="Search"><file name="ClientTest.php" hash="6aeac0a72fc4a4798233dfde15014543"/><file name="ResultsTests.php" hash="64503776af865c5d23e261b71d36a6bc"/></dir></dir></dir></dir></target></contents>
|
56 |
<compatible/>
|
57 |
<dependencies><required><php><min>5.4.0</min><max>6.0.0</max></php></required></dependencies>
|
58 |
</package>
|