Springbot - Version 1.4.2.0

Version Notes

Schedule based checkin
Fix remote store id on product delete
Add content type headers for registration post
Fix harvest logging

Download this release

Release Info

Developer Springbot Integrations Team
Extension Springbot
Version 1.4.2.0
Comparing to
See all releases


Code changes from version 1.4.1.1 to 1.4.2.0

app/code/community/Springbot/Bmbleb/Block/Adminhtml/Bmbleb/Login/Form.php CHANGED
@@ -75,6 +75,7 @@ class Springbot_Bmbleb_Block_Adminhtml_Bmbleb_Login_Form extends Mage_Adminhtml_
75
  try {
76
  $client = new Varien_Http_Client($url);
77
  $client->setRawData($rawJSON);
 
78
  $req = $client->request('POST');
79
  } catch (Exception $e) {
80
  Springbot_Log::error($e);
75
  try {
76
  $client = new Varien_Http_Client($url);
77
  $client->setRawData($rawJSON);
78
+ $client->setHeaders('Content-type: application/json');
79
  $req = $client->request('POST');
80
  } catch (Exception $e) {
81
  Springbot_Log::error($e);
app/code/community/Springbot/Bmbleb/Block/Adminhtml/Notifications.php CHANGED
@@ -17,14 +17,6 @@ class Springbot_Bmbleb_Block_Adminhtml_Notifications extends Mage_Adminhtml_Bloc
17
  ;
18
  return array('message' => $message, 'type' => 'success');
19
  }
20
- else if ($problems = Mage::helper('bmbleb/PluginStatus')->tooLongSinceCheckin()) {
21
- $message = 'Springbot has not synced in a while. ' .
22
- '<a href="' . $this->getUrl('bmbleb/adminhtml_problems/index') . '">Click here to get more details</a>. ' .
23
- 'You can turn off Springbot notifications in ' .
24
- '<a href="' . $this->getUrl('adminhtml/system_config/edit/section/springbot') . '">Springbot configuration.</a>'
25
- ;
26
- return array('message' => $message, 'type' => 'error');
27
- }
28
  }
29
  }
30
  catch (Exception $e) {
17
  ;
18
  return array('message' => $message, 'type' => 'success');
19
  }
 
 
 
 
 
 
 
 
20
  }
21
  }
22
  catch (Exception $e) {
app/code/community/Springbot/Bmbleb/Helper/PluginStatus.php CHANGED
@@ -5,32 +5,6 @@ class Springbot_Bmbleb_Helper_PluginStatus extends Mage_Core_Helper_Abstract
5
  const REPORT_PROBLEMS_INTERVAL_SECONDS = 604800; // Seven days in seconds
6
  const TOO_MANY_HOURS = 3; // Minimum number of hours since harvest to display warning
7
 
8
- /**
9
- * Check to see if its been a long time since the last checkin
10
- */
11
- public function tooLongSinceCheckin()
12
- {
13
- $currentTime = time();
14
- $secondsSinceLastCheckin = null;
15
- $mostRecentCheckin = null;
16
-
17
- foreach (Mage::app()->getStores() as $store) {
18
- $checkinTimestap = Springbot_Util_Timer::lastRun('healthcheck', $store->getId());
19
- $secondsSinceLastCheckin = $currentTime - $checkinTimestap;
20
- if (!$mostRecentCheckin || ($secondsSinceLastCheckin < $mostRecentCheckin)) {
21
- $mostRecentCheckin = $secondsSinceLastCheckin;
22
- }
23
- }
24
-
25
- if (($mostRecentCheckin === null) || ($mostRecentCheckin > (self::TOO_MANY_HOURS * 60 * 60))) {
26
- return $mostRecentCheckin;
27
- }
28
- else {
29
- return false;
30
- }
31
- }
32
-
33
-
34
 
35
  /**
36
  * Get a list of all potential plugin problems to display on the problems page
5
  const REPORT_PROBLEMS_INTERVAL_SECONDS = 604800; // Seven days in seconds
6
  const TOO_MANY_HOURS = 3; // Minimum number of hours since harvest to display warning
7
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
8
 
9
  /**
10
  * Get a list of all potential plugin problems to display on the problems page
app/code/community/Springbot/Bmbleb/controllers/LoginController.php CHANGED
@@ -43,8 +43,9 @@ class Springbot_Bmbleb_LoginController extends Mage_Adminhtml_Controller_Action
43
  try {
44
  $client = new Varien_Http_Client($url);
45
  $client->setRawData('{"user_id":"'.$email.'", "password":"'.$pass.'"}');
46
- $response = $client->request('POST');
47
- $result = json_decode($response->getBody(),true);
 
48
  }
49
  catch (Exception $e) {
50
  Springbot_Log::error($e);
43
  try {
44
  $client = new Varien_Http_Client($url);
45
  $client->setRawData('{"user_id":"'.$email.'", "password":"'.$pass.'"}');
46
+ $client->setHeaders('Content-type: application/json');
47
+ $response = $client->request('POST');
48
+ $result = json_decode($response->getBody(),true);
49
  }
50
  catch (Exception $e) {
51
  Springbot_Log::error($e);
app/code/community/Springbot/BoneCollector/Model/HarvestCart/Observer.php CHANGED
@@ -76,7 +76,6 @@ class Springbot_BoneCollector_Model_HarvestCart_Observer extends Springbot_BoneC
76
  'store_id' => $storeId,
77
  'quantity' => $qtyAdded,
78
  ));
79
- Springbot_Cli::runHealthcheck($storeId);
80
  }
81
  catch (Exception $e) {
82
  Springbot_Log::error($e);
@@ -125,7 +124,6 @@ class Springbot_BoneCollector_Model_HarvestCart_Observer extends Springbot_BoneC
125
  }
126
  }
127
  }
128
- Springbot_Cli::runHealthcheck($storeId);
129
  }
130
  catch (Exception $e) {
131
  Springbot_Log::error($e);
76
  'store_id' => $storeId,
77
  'quantity' => $qtyAdded,
78
  ));
 
79
  }
80
  catch (Exception $e) {
81
  Springbot_Log::error($e);
124
  }
125
  }
126
  }
 
127
  }
128
  catch (Exception $e) {
129
  Springbot_Log::error($e);
app/code/community/Springbot/BoneCollector/Model/HarvestProduct/Observer.php CHANGED
@@ -43,11 +43,13 @@ class Springbot_BoneCollector_Model_HarvestProduct_Observer extends Springbot_Bo
43
  $this->_initObserver($observer);
44
  try{
45
  $this->_product = $observer->getEvent()->getProduct();
46
- $entity_id = $this->_product->getId();
47
- foreach(Mage::helper('combine/harvest')->mapStoreIds($this->_product) as $mapped) {
 
 
48
  $post[] = array(
49
- 'store_id' => $mapped->getStoreId(),
50
- 'entity_id' => $entity_id,
51
  'sku' => $this->_getSkuFailsafe($this->_product),
52
  'is_deleted' => true,
53
  );
43
  $this->_initObserver($observer);
44
  try{
45
  $this->_product = $observer->getEvent()->getProduct();
46
+ $entityId = $this->_product->getId();
47
+ $helper = Mage::helper('combine/harvest');
48
+ foreach($helper->mapStoreIds($this->_product) as $mapped) {
49
+ $sbId = $helper->getSpringbotStoreId($mapped->getStoreId());
50
  $post[] = array(
51
+ 'store_id' => $sbId,
52
+ 'entity_id' => $entityId,
53
  'sku' => $this->_getSkuFailsafe($this->_product),
54
  'is_deleted' => true,
55
  );
app/code/community/Springbot/BoneCollector/Model/HarvestPurchase/Observer.php CHANGED
@@ -60,7 +60,6 @@ class Springbot_BoneCollector_Model_HarvestPurchase_Observer extends Springbot_B
60
  'quantity' => $qty,
61
  ));
62
  }
63
- Springbot_Cli::runHealthcheck($storeId);
64
  }
65
  catch (Exception $e) {
66
  Springbot_Log::error($e);
60
  'quantity' => $qty,
61
  ));
62
  }
 
63
  }
64
  catch (Exception $e) {
65
  Springbot_Log::error($e);
app/code/community/Springbot/Boss.php CHANGED
@@ -26,11 +26,19 @@ class Springbot_Boss
26
  * @param int $priority
27
  * @param string $queue
28
  * @param int $storeId
29
- * @param bool $requiresAuth
30
  */
31
- public static function scheduleJob($method, array $args, $priority, $queue = 'default', $storeId = null, $requiresAuth = true)
32
  {
33
  if(self::active() && !empty($method)) {
 
 
 
 
 
 
 
 
34
  $cronModel = Mage::getModel('combine/cron_queue');
35
  $cronModel->setData(array(
36
  'method' => $method,
@@ -38,22 +46,21 @@ class Springbot_Boss
38
  'priority' => $priority,
39
  'command_hash' => sha1($method . json_encode($args)),
40
  'queue' => $queue,
41
- 'store_id' => $storeId
 
42
  ));
 
43
  $cronModel->insertIgnore();
44
  self::startWorkManager();
45
- Springbot_Cli::runHealthcheck($storeId);
46
  }
47
  }
48
 
49
- public static function insertEvent($data, $runHealthcheck = false)
50
  {
51
  if(self::active()) {
52
  if(!isset($data['type']) || !isset($data['store_id'])) {
53
  Springbot_Log::error(new Exception("Invalid action attempted to log"));
54
  return;
55
- } else {
56
- $storeId = $data['store_id'];
57
  }
58
  $event = Mage::getModel('combine/action');
59
  $event->setData($data);
@@ -61,10 +68,6 @@ class Springbot_Boss
61
  $event->save();
62
 
63
  Springbot_Log::debug($event->getData());
64
-
65
- if($runHealthcheck) {
66
- Springbot_Cli::runHealthcheck($storeId);
67
- }
68
  }
69
  }
70
 
@@ -111,6 +114,27 @@ class Springbot_Boss
111
  }
112
  }
113
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
114
  /**
115
  * Removes all harvest jobs from the queue
116
  *
26
  * @param int $priority
27
  * @param string $queue
28
  * @param int $storeId
29
+ * @param int $minutesInFuture
30
  */
31
+ public static function scheduleJob($method, array $args, $priority, $queue = 'default', $storeId = null, $minutesInFuture = 0)
32
  {
33
  if(self::active() && !empty($method)) {
34
+
35
+ if (is_int($minutesInFuture) && ($minutesInFuture > 0)) {
36
+ $nextRunAt = date("Y-m-d H:i:s", strtotime("+{$minutesInFuture} minutes"));
37
+ }
38
+ else {
39
+ $nextRunAt = date("Y-m-d H:i:s");
40
+ }
41
+
42
  $cronModel = Mage::getModel('combine/cron_queue');
43
  $cronModel->setData(array(
44
  'method' => $method,
46
  'priority' => $priority,
47
  'command_hash' => sha1($method . json_encode($args)),
48
  'queue' => $queue,
49
+ 'store_id' => $storeId,
50
+ 'next_run_at' => $nextRunAt
51
  ));
52
+
53
  $cronModel->insertIgnore();
54
  self::startWorkManager();
 
55
  }
56
  }
57
 
58
+ public static function insertEvent($data)
59
  {
60
  if(self::active()) {
61
  if(!isset($data['type']) || !isset($data['store_id'])) {
62
  Springbot_Log::error(new Exception("Invalid action attempted to log"));
63
  return;
 
 
64
  }
65
  $event = Mage::getModel('combine/action');
66
  $event->setData($data);
68
  $event->save();
69
 
70
  Springbot_Log::debug($event->getData());
 
 
 
 
71
  }
72
  }
73
 
114
  }
115
  }
116
 
117
+ /**
118
+ * Schedule all jobs intended to run in the future
119
+ *
120
+ * @param integer $storeId
121
+ */
122
+ public static function scheduleFutureJobs($storeId = null)
123
+ {
124
+ if (is_null($storeId)) {
125
+ $storeId = Mage::app()->getStore()->getStoreId();
126
+ }
127
+
128
+ // Healthcheck uses default query interval
129
+ Springbot_Boss::scheduleJob('cmd:healthcheck', array('s' => $storeId), 5, 'listener', $storeId, 5);
130
+
131
+ // Send event log every minute
132
+ Springbot_Boss::scheduleJob('tasks:deliverEventLog', array('s' => $storeId), 5, 'listener', $storeId, 1);
133
+
134
+ // Run this in real time, but only every 30 min
135
+ Springbot_Boss::scheduleJob('work:cleanup', array('s' => $storeId), 5, 'listener', $storeId, 30);
136
+ }
137
+
138
  /**
139
  * Removes all harvest jobs from the queue
140
  *
app/code/community/Springbot/Cli.php CHANGED
@@ -115,34 +115,6 @@ class Springbot_Cli
115
  $harvest->run();
116
  }
117
 
118
- public static function runHealthcheck($storeId = null, $force = false)
119
- {
120
- if(is_null($storeId)) {
121
- $storeId = Mage::app()->getStore()->getStoreId();
122
- }
123
-
124
- // Healthcheck uses default query interval
125
- if(Springbot_Util_Timer::fire('healthcheck', $storeId) || $force) {
126
- self::async('cmd:healthcheck', array('s' => $storeId));
127
- }
128
-
129
- // Send event log every minute
130
- if(Springbot_Util_Timer::fire('event_log', $storeId, 1)) {
131
- Springbot_Boss::scheduleJob(
132
- 'tasks:deliverEventLog',
133
- array('s' => $storeId),
134
- 5,
135
- 'listener',
136
- $storeId
137
- );
138
- }
139
-
140
- // Run this in real time, but only every 30 min
141
- if(Springbot_Util_Timer::fire('cleanup', $storeId, 30)) {
142
- $cleanup = new Springbot_Services_Work_Cleanup();
143
- $cleanup->run();
144
- }
145
- }
146
 
147
  public static function startWorkManager()
148
  {
115
  $harvest->run();
116
  }
117
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
118
 
119
  public static function startWorkManager()
120
  {
app/code/community/Springbot/Combine/Model/Cron/Queue.php CHANGED
@@ -66,6 +66,19 @@ class Springbot_Combine_Model_Cron_Queue extends Springbot_Combine_Model_Cron
66
  }
67
  }
68
  $this->_post();
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  return $return;
70
  }
71
 
@@ -90,6 +103,7 @@ class Springbot_Combine_Model_Cron_Queue extends Springbot_Combine_Model_Cron
90
  'locked_by' => null,
91
  ))->save();
92
  }
 
93
  }
94
 
95
  public function getInstance()
66
  }
67
  }
68
  $this->_post();
69
+
70
+ try {
71
+ Springbot_Log::debug("Scheduling future jobs");
72
+ Springbot_Boss::scheduleFutureJobs($class->getStoreId());
73
+
74
+ if (is_object($class)) {
75
+ $class->doFinally();
76
+ }
77
+ }
78
+ catch (Exception $e) {
79
+ Springbot_Log::error($e);
80
+ }
81
+
82
  return $return;
83
  }
84
 
103
  'locked_by' => null,
104
  ))->save();
105
  }
106
+
107
  }
108
 
109
  public function getInstance()
app/code/community/Springbot/Combine/Model/Resource/Abstract.php CHANGED
@@ -7,6 +7,7 @@ abstract class Springbot_Combine_Model_Resource_Abstract extends Mage_Core_Model
7
  try {
8
  $table = $this->getMainTable();
9
  $bind = $this->_prepareDataForSave($object);
 
10
  $this->_insertIgnore($table, $bind);
11
  } catch (Exception $e) {
12
  Springbot_Log::error($e);
@@ -32,6 +33,7 @@ abstract class Springbot_Combine_Model_Resource_Abstract extends Mage_Core_Model
32
  . 'VALUES (' . implode(', ', $vals) . ')';
33
 
34
  Springbot_Log::debug($sql);
 
35
  Springbot_Log::debug('BIND : '.implode(', ', $bind));
36
 
37
  // execute the statement and return the number of affected rows
@@ -39,6 +41,16 @@ abstract class Springbot_Combine_Model_Resource_Abstract extends Mage_Core_Model
39
  return $stmt->rowCount();
40
  }
41
 
 
 
 
 
 
 
 
 
 
 
42
  protected function _getHelper()
43
  {
44
  return Mage::helper('combine/redirect');
7
  try {
8
  $table = $this->getMainTable();
9
  $bind = $this->_prepareDataForSave($object);
10
+ $bind = $this->_convertDatetimesToString($bind);
11
  $this->_insertIgnore($table, $bind);
12
  } catch (Exception $e) {
13
  Springbot_Log::error($e);
33
  . 'VALUES (' . implode(', ', $vals) . ')';
34
 
35
  Springbot_Log::debug($sql);
36
+
37
  Springbot_Log::debug('BIND : '.implode(', ', $bind));
38
 
39
  // execute the statement and return the number of affected rows
41
  return $stmt->rowCount();
42
  }
43
 
44
+ // Fixes issue with Magento converting DateTimes to an object and inserting extra quotes
45
+ protected function _convertDatetimesToString($bind) {
46
+ foreach ($bind as $key => $value) {
47
+ if (is_object($value)) {
48
+ $bind[$key] = trim((string)$value, "'");
49
+ }
50
+ }
51
+ return $bind;
52
+ }
53
+
54
  protected function _getHelper()
55
  {
56
  return Mage::helper('combine/redirect');
app/code/community/Springbot/Combine/Model/Resource/Cron/Queue.php CHANGED
@@ -66,7 +66,6 @@ class Springbot_Combine_Model_Resource_Cron_Queue extends Springbot_Combine_Mode
66
  {
67
  $cronQueueTable = Mage::getSingleton('core/resource')->getTableName('springbot_cron_queue');
68
  $write = $this->_getWriter($cronQueueTable);
69
- Springbot_Log::debug($sql);
70
  $write->query("UPDATE `{$cronQueueTable}` SET `attempts` = 0 WHERE 1");
71
  }
72
 
66
  {
67
  $cronQueueTable = Mage::getSingleton('core/resource')->getTableName('springbot_cron_queue');
68
  $write = $this->_getWriter($cronQueueTable);
 
69
  $write->query("UPDATE `{$cronQueueTable}` SET `attempts` = 0 WHERE 1");
70
  }
71
 
app/code/community/Springbot/Combine/etc/config.xml CHANGED
@@ -2,7 +2,7 @@
2
  <config>
3
  <modules>
4
  <Springbot_Combine>
5
- <version>1.4.1.1</version>
6
  </Springbot_Combine>
7
  </modules>
8
  <global>
@@ -136,4 +136,4 @@
136
  </resources>
137
  </acl>
138
  </adminhtml>
139
- </config>
2
  <config>
3
  <modules>
4
  <Springbot_Combine>
5
+ <version>1.4.2.0</version>
6
  </Springbot_Combine>
7
  </modules>
8
  <global>
136
  </resources>
137
  </acl>
138
  </adminhtml>
139
+ </config>
app/code/community/Springbot/Services.php CHANGED
@@ -116,6 +116,10 @@ abstract class Springbot_Services extends Varien_Object
116
  return number_format(microtime(true) - $this->_startTime, 3, '.', '');
117
  }
118
 
 
 
 
 
119
  protected function _humanize($var)
120
  {
121
  return ucfirst(preg_replace('/\_/', ' ', $var));
116
  return number_format(microtime(true) - $this->_startTime, 3, '.', '');
117
  }
118
 
119
+ public function doFinally() {
120
+
121
+ }
122
+
123
  protected function _humanize($var)
124
  {
125
  return ucfirst(preg_replace('/\_/', ' ', $var));
app/code/community/Springbot/Services/Cmd/Harvest.php CHANGED
@@ -182,8 +182,6 @@ class Springbot_Services_Cmd_Harvest extends Springbot_Services
182
 
183
  $collection = $this->_getCollection($keyUpper, $storeId);
184
 
185
- $this->getHelper()->forecast($collection, $storeId, $keyUpper, $this->getHarvestId());
186
-
187
  $scheduler = Mage::getModel('combine/cron_queue_batch');
188
 
189
  foreach(Mage::helper('combine/harvest')->partitionCollection($collection) as $partition) {
@@ -217,6 +215,8 @@ class Springbot_Services_Cmd_Harvest extends Springbot_Services
217
 
218
  $this->_reportHarvestStartTime($this->getHarvestId(), $storeId, $key);
219
 
 
 
220
  $count = 0;
221
  foreach(Mage::helper('combine/harvest')->partitionCollection($collection, self::SEGMENT_SIZE) as $partition) {
222
  $count++;
182
 
183
  $collection = $this->_getCollection($keyUpper, $storeId);
184
 
 
 
185
  $scheduler = Mage::getModel('combine/cron_queue_batch');
186
 
187
  foreach(Mage::helper('combine/harvest')->partitionCollection($collection) as $partition) {
215
 
216
  $this->_reportHarvestStartTime($this->getHarvestId(), $storeId, $key);
217
 
218
+ $this->getHelper()->forecast($collection, $storeId, $keyUpper, $this->getHarvestId());
219
+
220
  $count = 0;
221
  foreach(Mage::helper('combine/harvest')->partitionCollection($collection, self::SEGMENT_SIZE) as $partition) {
222
  $count++;
app/code/community/Springbot/Services/Cmd/Healthcheck.php CHANGED
@@ -50,6 +50,12 @@ class Springbot_Services_Cmd_Healthcheck extends Springbot_Services
50
  }
51
  }
52
 
 
 
 
 
 
 
53
  private function _scrapeEntities()
54
  {
55
  $lastPostedCouponId = Mage::getStoreConfig('springbot/tmp/last_coupon_id');
50
  }
51
  }
52
 
53
+ public function doFinally()
54
+ {
55
+ Springbot_Log::debug("Scheduling future jobs from healthcheck job");
56
+ Springbot_Boss::scheduleFutureJobs($this->getStoreId());
57
+ }
58
+
59
  private function _scrapeEntities()
60
  {
61
  $lastPostedCouponId = Mage::getStoreConfig('springbot/tmp/last_coupon_id');
app/code/community/Springbot/Services/Store/Finalize.php CHANGED
@@ -12,7 +12,7 @@ class Springbot_Services_Store_Finalize extends Springbot_Services
12
  $helper = Mage::helper('combine/store')->setStore($store);
13
 
14
  Springbot_Log::printLine();
15
- Springbot_Log::harvest('Store level harvesting complete for Store->'. $storeId .'/'. $helper->getSpringbotStoreId(), true);
16
  Springbot_Log::printLine();
17
 
18
  $api = Mage::getModel('combine/api');
12
  $helper = Mage::helper('combine/store')->setStore($store);
13
 
14
  Springbot_Log::printLine();
15
+ Springbot_Log::harvest('Store level harvesting complete for Store->'. $storeId .'/'. $helper->getSpringbotStoreId(), true, $storeId);
16
  Springbot_Log::printLine();
17
 
18
  $api = Mage::getModel('combine/api');
app/code/community/Springbot/Services/Tasks/Healthcheck.php CHANGED
@@ -7,6 +7,10 @@ class Springbot_Services_Tasks_Healthcheck extends Springbot_Services
7
  $healthcheck = new Springbot_Services_Cmd_Healthcheck();
8
  $healthcheck->setStoreId($this->getStoreId());
9
  $healthcheck->run();
 
 
 
 
10
  return true;
11
  }
12
  }
7
  $healthcheck = new Springbot_Services_Cmd_Healthcheck();
8
  $healthcheck->setStoreId($this->getStoreId());
9
  $healthcheck->run();
10
+
11
+ Springbot_Log::debug("Scheduling future jobs via endpoint healthcheck");
12
+ Springbot_Boss::scheduleFutureJobs($this->getStoreId());
13
+
14
  return true;
15
  }
16
  }
app/code/community/Springbot/Services/Work/Report.php CHANGED
@@ -20,7 +20,7 @@ class Springbot_Services_Work_Report extends Springbot_Services
20
  );
21
 
22
  Mage::helper('combine/harvest')->reportHarvestCount($params, $this->getHarvestId());
23
- Springbot_Log::remote("Harvested '{$count} {$keyUpper} from store " . $this->getStoreId());
24
  }
25
 
26
  }
20
  );
21
 
22
  Mage::helper('combine/harvest')->reportHarvestCount($params, $this->getHarvestId());
23
+ Springbot_Log::remote("Harvested {$count} {$keyUpper} from store " . $this->getStoreId(), $this->getStoreId());
24
  }
25
 
26
  }
app/code/community/Springbot/Shadow/controllers/ActionController.php CHANGED
@@ -10,8 +10,6 @@ class Springbot_Shadow_ActionController extends Springbot_Shadow_Controller_Acti
10
 
11
  Springbot_Boss::insertEvent($params);
12
 
13
- Springbot_Cli::runHealthcheck();
14
-
15
  // return 1x1 pixel transparent gif
16
  $this->getResponse()->setHeader('Content-type', 'image/gif');
17
  // needed to avoid cache time on browser side
10
 
11
  Springbot_Boss::insertEvent($params);
12
 
 
 
13
  // return 1x1 pixel transparent gif
14
  $this->getResponse()->setHeader('Content-type', 'image/gif');
15
  // needed to avoid cache time on browser side
app/code/community/Springbot/Util/Cache.php DELETED
@@ -1,63 +0,0 @@
1
- <?php
2
-
3
- /**
4
- * Class: Springbot_Util_Cache
5
- *
6
- * @author Springbot Magento Integration Team <magento@springbot.com>
7
- * @version 1.4.0.0
8
- * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
9
- */
10
- class Springbot_Util_Cache
11
- {
12
- const CACHE_TAG = 'springbot_cache';
13
-
14
- public function __construct($appCache = null)
15
- {
16
- $this->_appCache = $appCache;
17
- }
18
-
19
- public static function set($key, $value)
20
- {
21
- $instance = new Springbot_Util_Cache();
22
- $instance->_save($key, $value);
23
- }
24
-
25
- public static function get($key)
26
- {
27
- $instance = new Springbot_Util_Cache();
28
- return $instance->_load($key);
29
- }
30
-
31
- public static function clean()
32
- {
33
- $instance = new Springbot_Util_Cache();
34
- $instance->_clean();
35
- }
36
-
37
- protected function _save($key, $value)
38
- {
39
- $this->_getAppCache()->save($value, $key, array(self::CACHE_TAG));
40
- }
41
-
42
- protected function _load($key)
43
- {
44
- return $this->_getAppCache()->load($key);
45
- }
46
-
47
- protected function _clean()
48
- {
49
- return $this->_getAppCache()->clean(
50
- Zend_Cache::CLEANING_MODE_MATCHING_TAG,
51
- array(self::CACHE_TAG)
52
- );
53
- }
54
-
55
- private function _getAppCache()
56
- {
57
- if(!isset($this->_appCache)) {
58
- $this->_appCache = Mage::app()->getCache();
59
- }
60
- return $this->_appCache;
61
- }
62
-
63
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
app/code/community/Springbot/Util/Timer.php DELETED
@@ -1,68 +0,0 @@
1
- <?php
2
-
3
- class Springbot_Util_Timer
4
- {
5
- const DEFAULT_POLLING_INTERVAL = 5; // minutes
6
-
7
- protected $_task;
8
- protected $_storeId;
9
- protected $_interval;
10
-
11
- public function __construct($task, $storeId, $interval = null)
12
- {
13
- $this->_task = $task;
14
- $this->_storeId = $storeId;
15
- $this->_interval = is_null($interval) ? $this->_getQueryInterval() : $interval;
16
- }
17
-
18
- public static function fire($task, $storeId, $interval = null)
19
- {
20
- $ins = new Springbot_Util_Timer($task, $storeId, $interval);
21
- if($ins->doRunTask()) {
22
- Springbot_Log::debug("Firing $task for store_id: $storeId");
23
- $ins->_setLastRunAt();
24
- return true;
25
- } else {
26
- return false;
27
- }
28
- }
29
-
30
- public static function lastRun($task, $storeId)
31
- {
32
- $ins = new Springbot_Util_Timer($task, $storeId);
33
- return $ins->_getLastRunAt();
34
- }
35
-
36
- public function doRunTask()
37
- {
38
- $intervalDiff = (time() - $this->_getLastRunAt()) / 60;
39
- return $intervalDiff > $this->_interval;
40
- }
41
-
42
- public function _getKey()
43
- {
44
- return $this->_task . '_' . $this->_storeId;
45
- }
46
-
47
- protected function _getLastRunAt()
48
- {
49
- Springbot_Log::debug('Getting: ' . $this->_getKey());
50
- return Springbot_Util_Cache::get($this->_getKey());
51
- }
52
-
53
- protected function _setLastRunAt()
54
- {
55
- $time = (string) time();
56
- Springbot_Log::debug('Setting: ' . $this->_getKey() . ' => ' . $time);
57
- Springbot_Util_Cache::set($this->_getKey(), $time);
58
- }
59
-
60
- protected function _getQueryInterval()
61
- {
62
- $interval = Mage::getStoreConfig('springbot/config/query_interval');
63
- if(empty($interval) || !isset($interval)) {
64
- $interval = self::DEFAULT_POLLING_INTERVAL;
65
- }
66
- return $interval;
67
- }
68
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Springbot</name>
4
- <version>1.4.1.1</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/OSL-3.0">Open Software License v3.0 (OSL-3.0)</license>
7
  <channel>community</channel>
@@ -47,11 +47,14 @@
47
  Proclivity to Buy Alerts example: Sally Avalon bought a house recently &#xD;
48
  &#xD;
49
  For support information, features and pricing and more details visit springbot.com </description>
50
- <notes>Inline harvest on login</notes>
 
 
 
51
  <authors><author><name>Springbot Integrations Team</name><user>Springbot</user><email>magento@springbot.com</email></author></authors>
52
- <date>2015-03-04</date>
53
- <time>22:03:14</time>
54
- <contents><target name="magecommunity"><dir name="Springbot"><dir name="Shadow"><dir name="Block"><dir name="Action"><file name="View.php" hash="f2fc0d66474305766335aa37a7bbcd72"/></dir><file name="Async.php" hash="0d203fe1a722f7045029613a0e97bfc2"/></dir><dir name="Controller"><file name="Action.php" hash="5dc41d4ddf12a468fb23fc757ef49a95"/></dir><dir name="Helper"><file name="Data.php" hash="82089d4cfecee69628ae9d627ad2de0c"/><file name="Prattler.php" hash="e2658c19a182bd5cc9948eccc024ad21"/></dir><dir name="Model"><dir name="Listeners"><file name="Observer.php" hash="e5b827a61c3b04fdb73e38a424d167eb"/></dir></dir><dir name="controllers"><file name="ActionController.php" hash="2532947b3368c5a4d64bf77cc7aa9316"/><file name="IndexController.php" hash="2a540da33a64c7307af981abca0d4558"/></dir><dir name="etc"><file name="config.xml" hash="b1717e37375197b449c0736adff99d87"/></dir></dir><dir name="Services"><dir name="Cmd"><file name="Forecast.php" hash="efaeb6ca5b2667b30929b223cddfb044"/><file name="Halt.php" hash="85c85ae257e9b86d0fb10fb46060fea3"/><file name="Harvest.php" hash="1f214f0fd7b41a6b5fc7c27218fb099a"/><file name="Healthcheck.php" hash="814af5d0d1865c7b610290b4cff2099d"/><file name="Update.php" hash="d8d1950c85930083009096a3849054a7"/></dir><dir name="Harvest"><file name="AttributeSets.php" hash="95610f6fd6323e0473589c01051781f2"/><file name="Carts.php" hash="ecaf8583962fc63e49cf069d73eb22bf"/><file name="Categories.php" hash="acfe9c8dc9a02992a058015e8aaf9311"/><file name="Coupons.php" hash="5190a1669b0b4ef10222843451e9dc36"/><file name="CustomerAttributeSets.php" hash="7c3a0bed9f841900f692f5a17e7c6e8f"/><file name="Customers.php" hash="3d57c8238976554081176e249f2e7f4b"/><file name="Guests.php" hash="e0f6d955ba9bc3f020cc95f3083913ad"/><file name="Products.php" hash="087d01eddc45b4a30c4aa7dba5cc5dce"/><file name="Purchases.php" hash="a3d76ae1a2ea514fcce5ca2607ddf5a4"/><file name="Rules.php" hash="355ecad7266987a391ceca9d2eb0244f"/><file name="Subscribers.php" hash="a8b0d7197580bd9f3de7b10f9c6dc7ca"/></dir><file name="Harvest.php" hash="af3b9604c7b9d7da76cffe846dc34d70"/><dir name="Log"><file name="Installer.php" hash="342706712eb2731ea27aeec993fd2d7f"/></dir><dir name="Post"><file name="Attribute.php" hash="e0a283984de84bc16d5f89a893a8dc83"/><file name="AttributeSet.php" hash="c8f66b5a189125a63e834196402b709a"/><file name="Cart.php" hash="26d33fb887417e46d3ba3e46badc04a3"/><file name="Category.php" hash="0645d5eb9bb790f25e29666bc3a703e0"/><file name="Coupon.php" hash="6b8b49327874ce431f6100b6917ba21f"/><file name="Customer.php" hash="d2f018919afdb7d49617e6b9ac7d2760"/><file name="Guest.php" hash="3b7ee9f0e274340713d8c4302d01b361"/><file name="Json.php" hash="86a5f26aa5367d8c4c66d278e4c02546"/><file name="Jsonstring.php" hash="9dfb5761d1a7835bf35040a073fa8fc4"/><file name="Product.php" hash="5ec9cbf29df156da09d17e1b6526f53d"/><file name="Purchase.php" hash="0b924c8e5d8f7018eb335ba9fb6d63dd"/><file name="Rule.php" hash="fa038fa414a176d960ed6470c7b7b4cd"/><file name="Subscriber.php" hash="88c5dbcaae805866595217eedbbf5f34"/></dir><file name="Post.php" hash="df9bf80bee670259f3a54e3308d0dbd3"/><file name="Registry.php" hash="d54afde887b72e79ae36ab11766ec5c9"/><dir name="Store"><file name="Finalize.php" hash="e3636b532bc8f55ba0e618a973e2faa0"/><file name="Register.php" hash="72ae8d75c11dc1c0635c799e284ecb2d"/></dir><dir name="Tasks"><file name="ClearCache.php" hash="17ee105f79d9a71c13ecdd6de2787cdc"/><file name="ClearJobs.php" hash="380740a54aa4d79a89d2c67f06724a31"/><file name="ClearStores.php" hash="33e216186c56bde7e558cd828e90dda0"/><file name="Debug.php" hash="41a522394c2b9375393d81bb3ab206cc"/><file name="DeleteJob.php" hash="be2a2be88290cc3e9bc54c59e22254b5"/><file name="DeliverEventLog.php" hash="18ffe64d10e90819b5e141fc471c0951"/><file name="Forecast.php" hash="caaf18be7fe387a4eba5a77eb0db2c12"/><file name="GetLog.php" hash="d850bba9f90b134f884d8d7a36730a26"/><file name="Harvest.php" hash="f71f97f078a081425c8848ba435d3b16"/><file name="Healthcheck.php" hash="50c68e798295602d733dc2a0f7cdec0a"/><file name="Jobs.php" hash="9df9611445f9ab4a7a6d4b4e79f6b681"/><file name="KillHarvest.php" hash="a757f35956e4565b597522168109071c"/><file name="LaunchFullHarvest.php" hash="e5271dbfa422a90f4c4dda7362cb68f3"/><file name="LaunchPartialHarvest.php" hash="9c5aa7792fe9a3b98f9de9f4b59e3866"/><file name="PackageUpdate.php" hash="cb88473eea4e15760a4fa7c0aba83ddb"/><file name="PostItem.php" hash="54b4bac0b26b8b0e06df1d6da1ea7a91"/><file name="RegisterStores.php" hash="c054ef31b9c28efc5a18ee2ddf31c512"/><file name="ResetRetries.php" hash="bf00fe101b69a78955dc9a6d054e7ba7"/><file name="ResumeHarvest.php" hash="c9ba7b36e2b16dd1d1d947fc83a0ce5e"/><file name="Run.php" hash="c6892d3f812d5085b284d3501211bd5d"/><file name="SetVar.php" hash="93a0afb5e5c32536f430fc3b58b72995"/><file name="UnlockJobs.php" hash="9bf4b725445897ab2842bcb97e344e0c"/><file name="ViewConfig.php" hash="cc60cbc3d2212576301b13b0b286c618"/></dir><file name="Tasks.php" hash="173bdc5c586a0f5d41528cdbd2fff70b"/><dir name="Update"><file name="Abstract.php" hash="7b9a1d36b4486e250587820731b7fb7c"/><file name="Connect.php" hash="3e4366a42e563ec3406a0fcb9a5f77bf"/><file name="Downloader.php" hash="934ef5788acb45ce94e0a32c1d705df1"/><file name="Installer.php" hash="a09ec2e9f7bbf12c117c8950e46072b0"/><file name="Package.php" hash="60ec01b28a2ded244bf6d4a971918bd5"/></dir><dir name="Work"><file name="Cleanup.php" hash="100fef130220e91dc255b5e0f30c37f1"/><file name="Manager.php" hash="9dbdfb717865b7724f4ffd38b3ec866e"/><file name="Report.php" hash="a6482e618e657688ab85221576d1898f"/><file name="Restart.php" hash="d55e811fbba86348890b4047fa5a579f"/><file name="Runner.php" hash="c0ced9ce83e5e51b4ba5f10bb46760af"/><file name="Stop.php" hash="db97407b43396f0adf44a2354a23a0a5"/></dir></dir><dir name="Util"><file name="Cache.php" hash="2c6eb2ee4ee723758fc92989e9220f6e"/><file name="Caller.php" hash="4fcc265eb1a58fed5c3b404ec864514b"/><file name="Categories.php" hash="1292843306c38d9593902616e04320a6"/><dir name="Log"><file name="Rollover.php" hash="6ad4bd93adb7e906c1de5a05a2871ea8"/></dir><file name="Logger.php" hash="59abca8cb07ef933ca8ef2ac824591b5"/><file name="Partition.php" hash="b9296b086003ba58ba12f8b8b0373c50"/><file name="Timer.php" hash="68323a4faeb388627556137f0d7679d9"/></dir><file name="Services.php" hash="fc7893e2bcda2ab6765c760189effb8a"/><dir name="Bmbleb"><dir name="Block"><dir name="Adminhtml"><file name="Auth.php" hash="7dc661bbe9ec85f700a22b319981114d"/><dir name="Bmbleb"><dir name="Login"><file name="Form.php" hash="6d54c1272c7e0a37f3dfe7a23b97a451"/></dir><file name="Login.php" hash="7232e8225f5b21de5675c0d84cb452bd"/></dir><file name="Connected.php" hash="833cef8e351f5efa7a4d104b1c51ca7f"/><file name="Help.php" hash="b280b3292ed778140b751b6426ef56fb"/><dir name="Index"><file name="Messages.php" hash="1e247e31194447de32e54f49dafc3ccc"/><file name="Terms.php" hash="739e5a9ebe204f1f9ac433557c994ae6"/></dir><file name="Index.php" hash="eb7bbef5fa26a53748596e145c3677c4"/><dir name="Jobs"><file name="Grid.php" hash="67255d982ac3d50b38d7a2a525c2b922"/><file name="Status.php" hash="f1b197bf6fdc392bed93ff0734a54ad6"/></dir><file name="Jobs.php" hash="84801c6008802496e168e763a7e6d71f"/><file name="Login.php" hash="2e4d8baead482d404ed40f7d5f3d902c"/><file name="Logout.php" hash="b75af51891b751b9d070e1e784dd6914"/><file name="Logs.php" hash="686e958b553c1e3fcf74841eab30fffb"/><file name="Notifications.php" hash="b9e103d6c255078274c2f3047d944d0e"/><file name="Problems.php" hash="c2fd654e2c4c3a6dd9fbb083d0995e5e"/><file name="Status.php" hash="9b67a20f0ee00608029d24850cefda4d"/><file name="Tabs.php" hash="6f93d5c6bd5208a99637c06118c6c630"/></dir></dir><dir name="Helper"><file name="Account.php" hash="c41f40e6f58abd3b8486e0e92cc079d8"/><file name="Data.php" hash="dca14b137de1e2734a377ca645eeddbe"/><file name="PluginStatus.php" hash="10fccc3c622adf7e865ebdcc11d65932"/></dir><dir name="Model"><file name="Bmbleb.php" hash="700d11c3006f2dcd2e80cd8bbbab15f9"/><file name="Status.php" hash="9409d26c7884be6b8075ba97dbf71f78"/><file name="Sync.php" hash="a800b6064a88f37957392cd967f2b3cb"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="HelpController.php" hash="087e7868dafe9dd2df89a642d405424a"/><file name="IndexController.php" hash="61a95eed027fcb7a7179485288f1b05f"/><file name="JobsController.php" hash="4e912a8fafd2f58235cb2299a83a128b"/><file name="LogsController.php" hash="20a0ce2f584f08480399b7a5ecbd9207"/><file name="ProblemsController.php" hash="9753f4b2d3e7d4873e4bd92b5b2b6aaf"/><file name="SettingsController.php" hash="f75a7a8ef28a296cbd46b04ae9dd5539"/></dir><file name="HelpController.php" hash="2df4608a957f151bf1d01dbde2113680"/><file name="IndexController.php" hash="ea5fa5e2b305f46b222cb2fc2a44f6a5"/><file name="LoginController.php" hash="41a0c13dce233a613f89b614cffa0eb1"/><file name="LogoutController.php" hash="140c9d32f5557aa1169fd1b85cd5cc9f"/></dir><dir name="etc"><file name="config.xml" hash="45f7218274a3eed0086761942a95f27b"/></dir></dir><file name="Boss.php" hash="17ca50432a774d40a024a804997dfa25"/><file name="Cli.php" hash="8257463014f2bc07fd2c98c84749cc9e"/><file name="Log.php" hash="5ab61d7cf21805adb8f826f83b9bf7b1"/><dir name="Combine"><dir name="Helper"><file name="Attributes.php" hash="5fb06e7cc89bb710039a79fb16e2a998"/><file name="Cart.php" hash="07ce5f461ecded3b9b00ed5c30faa266"/><file name="Data.php" hash="bba3915380a71aaacacc306f10396ef1"/><file name="Harvest.php" hash="08fd1b330802731bf82358fd05789173"/><file name="Parser.php" hash="59b987ae48baffd9d656bb78c9a17379"/><file name="Redirect.php" hash="92053fb1b356fdd6b3131be0b6a8017c"/><file name="Store.php" hash="8db94d157d7e497e7612844da43a6c11"/><file name="Trackable.php" hash="a042cb0d176730ec87353b1c5c6d21f7"/></dir><dir name="Model"><file name="Action.php" hash="6375461263bdf7fe26e71235d2449c21"/><file name="Api.php" hash="978590ad36b4d6ad6b3a14742f8bb31c"/><dir name="Cron"><file name="Count.php" hash="57552740b6ffdd9a4e879191a51043b0"/><dir name="Manager"><file name="Status.php" hash="aeb4445bc2d4b1b7e0e19c09172f0483"/></dir><dir name="Queue"><dir name="Batch"><file name="Row.php" hash="25f4ed809a9190f5d41c6c210cd8a537"/></dir><file name="Batch.php" hash="fa905d2781aab5881e881e3b12d25e0c"/></dir><file name="Queue.php" hash="7057aea4c3c103e164ed380b351c5bd1"/><file name="Worker.php" hash="8b5040f1c5c5b3221542e739dc951de7"/></dir><file name="Cron.php" hash="40f2bc9634610f4ed5464de48630ce16"/><dir name="File"><file name="Io.php" hash="6d1f79eaf45897bf0525b0f3f3ac69d2"/><file name="Path.php" hash="24900b670c07fcdc4e54bae585f20002"/></dir><dir name="Harvest"><file name="AttributeSets.php" hash="479dfb30912b74183b396fa4e62323b2"/><file name="Carts.php" hash="0b303b2b7d4458a9a0cbf0653b9d660f"/><file name="Categories.php" hash="fd5f13ad449a320616569f64c82327ff"/><file name="Coupons.php" hash="14112f9063bbf20cea7ff3649f238524"/><file name="CustomerAttributeSets.php" hash="044f426226165ee86b0f822c00ec7712"/><file name="Customers.php" hash="c7850418a39abf09c10fbfafcb96f8e1"/><file name="Guests.php" hash="3685b3220b724e518dc83daad015577f"/><file name="Products.php" hash="da471abcc04837391b5270464164aefd"/><file name="Purchases.php" hash="427d38d1f6579f63730aa6bdf6b7bba4"/><file name="Rules.php" hash="fd1789174225c4ed6ad1e1137fe2aee5"/><file name="Subscribers.php" hash="e499e299612a6e2ce07ee19228cf43c5"/></dir><file name="Harvest.php" hash="8104fb4584411f90706f2fd9c8d8ce9b"/><dir name="Mysql4"><dir name="Action"><file name="Collection.php" hash="830a7db2ea307d594fe945701654d883"/></dir><file name="Action.php" hash="5b18cc8842c83d981575b7b2de496f66"/><dir name="Cron"><file name="Count.php" hash="acbbb7ec28afbbe98101f5d114cb30b3"/><dir name="Queue"><file name="Collection.php" hash="b26806c9e7cefd052bb784f5a6ce814c"/></dir><file name="Queue.php" hash="4add10644bfc94b88ef5042b23c82ae7"/></dir><dir name="Redirect"><file name="Collection.php" hash="3bbe4f8729c603f8d8131154a0a117c1"/><dir name="Order"><file name="Collection.php" hash="88c0cfcce31b0eed8c035dee4e7e86df"/></dir><file name="Order.php" hash="852bea330edac3372ec5c168111301a8"/></dir><file name="Redirect.php" hash="842e4ba35c6b049c8eaa64704588ca76"/><file name="Setup.php" hash="3fdec335980846a4c3adbc6f4e3478eb"/><dir name="Trackable"><file name="Collection.php" hash="8799c5bf630d267b551cf9dba986cbb0"/></dir><file name="Trackable.php" hash="b38749697b641874b42dceae38ab4a30"/></dir><dir name="Parser"><file name="AttributeSet.php" hash="9ae4013d42da5de0e9c8492fb29cd8d6"/><file name="Category.php" hash="0c3c71ff784307b9120d7cf781005069"/><file name="Coupon.php" hash="a66b3d4c8397610863cd74e35cbd5b62"/><file name="Customer.php" hash="99233c3da1eb28f1ec15e20e837d764a"/><file name="CustomerAttributeSet.php" hash="1b51f9300a9ee102872ff9d7f9bbccbc"/><file name="Guest.php" hash="002c900d3722f761e3e3ac63be84014f"/><file name="Product.php" hash="7e0fa4a55ca45fc876e588442cce72eb"/><dir name="Purchase"><file name="Item.php" hash="ca7facc8c81504ea990fdb1feeba64dd"/></dir><file name="Purchase.php" hash="ec3929b9e1a0df0e5816c1558391dcdc"/><dir name="Quote"><file name="Item.php" hash="37cbc74a49a16e67e02f421978e1741f"/></dir><file name="Quote.php" hash="df651461575cb44bd08f7eb8466782eb"/><file name="Rule.php" hash="0a0f70172aeff0e5157f2f1652c3ae09"/><file name="Subscriber.php" hash="57ab5db177d4a37f30865cb127912631"/></dir><file name="Parser.php" hash="3bd033d5d892f0f1673aa81ce51a70e2"/><dir name="Redirect"><file name="Order.php" hash="5ca85ca596ef6e45468c8a12cee72614"/></dir><file name="Redirect.php" hash="05dddaa1e9c17c4c79d70d63b56ed454"/><dir name="Resource"><file name="Abstract.php" hash="5e58e98d53c3d49e454d6b0bd2f308c2"/><dir name="Action"><file name="Collection.php" hash="22e278b8cbc5d18d4faa48c4f224d145"/></dir><file name="Action.php" hash="83b00531db5ec3a51ea7c0fc65a1d083"/><dir name="Cron"><dir name="Count"><file name="Collection.php" hash="c5cb4ab406c1d008c1bc22bb95b3ba28"/></dir><file name="Count.php" hash="6a356b5d92b509945c4567f479b9bfdd"/><dir name="Queue"><file name="Collection.php" hash="2e7ba35d1a14da641a098078e4db7432"/></dir><file name="Queue.php" hash="5b5273a55a562f93f273b92cb9ffcd5e"/></dir><file name="Debug.php" hash="976156dc1ff783a26174bdac79decde2"/><dir name="Redirect"><file name="Collection.php" hash="0f9db83ade4c50c2f7bbe40deae1c065"/><dir name="Order"><file name="Collection.php" hash="162359ed9499b6f976f5c341fd0585c3"/></dir><file name="Order.php" hash="7ea4477380a5215dc0efe561ede359d9"/></dir><file name="Redirect.php" hash="d239af442388bb9fa80db81a7fc43711"/><file name="Setup.php" hash="0405c44c124f19619ccc9f429d781d44"/><dir name="Trackable"><file name="Collection.php" hash="6f060c3537b49710302e38e881885a69"/></dir><file name="Trackable.php" hash="764b0d21c492dd69b9f85ae3c647666e"/></dir><dir name="System"><dir name="Config"><dir name="Source"><file name="Harvestertype.php" hash="4d9f7ffa7f49ecaa2e99df86f62e646c"/><file name="LogFormat.php" hash="828680dafe5a7042221900cb6d9dfa17"/><file name="LogLevel.php" hash="b86c793ca04205f045efd9ea42d02a10"/><file name="Stability.php" hash="830e5bc4e8ce9657221224dbaf99cee6"/><file name="UrlType.php" hash="28f9a5bc024afe5526685d429a751ad8"/></dir></dir></dir><file name="Trackable.php" hash="0af2cd1e6e1eb948157918df2570bf10"/></dir><dir name="etc"><file name="adminhtml.xml" hash="794fc8a1d67ac3e6b5d71c707a0c7cad"/><file name="config.xml" hash="0f58e1af703a18740393509a096b6079"/><file name="system.xml" hash="25135db9871a1975d67c9a16848656ee"/></dir><dir name="sql"><dir name="combine_setup"><file name="mysql4-install-1.0.0.70.php" hash="425be4a54012cd64753ee1a216255d67"/><file name="mysql4-upgrade-1.0.0.70-1.0.0.84.php" hash="e51deaff9e65f43483ab00573605329d"/><file name="mysql4-upgrade-1.0.0.84-1.0.0.88.php" hash="89bd8a585c0d351aae6838ace48f608d"/><file name="mysql4-upgrade-1.0.0.88-1.2.0.0.php" hash="4779a5072d23ebdb27177de0dfd19f5d"/><file name="mysql4-upgrade-1.2.0.0-1.2.0.1.php" hash="01a7ef2466b9f676884db4d7a7c562a9"/><file name="mysql4-upgrade-1.2.0.1-1.2.1.0.php" hash="dbba441ac757db26289f21443a948f6b"/><file name="mysql4-upgrade-1.3.9.9-1.4.0.0.php" hash="5b5e0602bdcd48263bdf4e25b17d95b5"/></dir></dir></dir><dir name="BoneCollector"><dir name="Model"><file name="HarvestAbstract.php" hash="fecaefad7d4fc279e3a54b4c8cac54ae"/><dir name="HarvestAttribute"><file name="Observer.php" hash="26d016ab4fae05872aa46b6abdc3e562"/></dir><dir name="HarvestCart"><file name="Observer.php" hash="7364d7b70e2b3fb65c7effac8cc2ade6"/></dir><dir name="HarvestCategory"><file name="Observer.php" hash="7ddb0b58b301863c1e46dd2db3628db8"/></dir><dir name="HarvestCustomer"><file name="Observer.php" hash="a20e21f1033dc35025ab9b402d6574bc"/></dir><dir name="HarvestProduct"><file name="Observer.php" hash="60af24cee3ad4105822ff4bfb73a5b62"/></dir><dir name="HarvestPurchase"><file name="Observer.php" hash="45b457d55548283c29c0d6105db52df7"/></dir><dir name="HarvestRule"><file name="Observer.php" hash="49f369f960101ec66458f8dbe7972e40"/></dir><dir name="HarvestSubscriber"><file name="Observer.php" hash="5b64106296e9d0045610c69ed0c9be4b"/></dir></dir><dir name="etc"><file name="config.xml" hash="908a3b69f97bf5578f661de5b8341a80"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Springbot.xml" hash="69a4e2c056502cd8539b4f66a2c8b1bc"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="bmbleb.xml" hash="aa390e236576f79375b407262961043e"/></dir><dir name="template"><dir name="bmbleb"><file name="auth.phtml" hash="bf509b53c49cd69ec3ea60e3effe69c3"/><file name="dashboard_loggedout.phtml" hash="19281143b19a544d4e3072dc754ada2d"/><dir name="help"><file name="index.phtml" hash="e9d3f11c623c735c3e699e406ff9e0e7"/></dir><dir name="index"><file name="messages.phtml" hash="fcbbb47d2cc30c493ed2316a8b888f5d"/><file name="terms.phtml" hash="dfff1182d2fe7d8eee69b9b302c4cbc7"/></dir><file name="index.phtml" hash="acbe2c052259293901fea4635b7a66bf"/><dir name="jobs"><file name="status.phtml" hash="77f0b0ae7c3c6c42031675cfc959e270"/></dir><file name="jobs.phtml" hash="961ac83f56bf8703dbc433894da4933e"/><file name="login.phtml" hash="0a1a20dfaffe8646bb56323ab811d46a"/><file name="logout.phtml" hash="09b92790c5e124a01086d6929ed7e8de"/><dir name="logs"><file name="index.phtml" hash="17e773a761a24e292b09fe7da1bd7662"/></dir><file name="notifications.phtml" hash="45f8767a090a4f7a7e177151bbc43f4f"/><dir name="problems"><file name="index.phtml" hash="2027d07eed8848a4ed8e801d67072796"/></dir><file name="status.phtml" hash="1acc630a6549b234bc1fa5923e04b8ce"/><file name="tabs.phtml" hash="778b686fb073a8aeb973db3bfb0302aa"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="shadow.xml" hash="3f29bebbcf7e42c57dcac9150c6b7d68"/></dir><dir name="template"><dir name="shadow"><file name="async.phtml" hash="af147801ed74d45bb0580b0bb69ce0fd"/><file name="conversion.phtml" hash="3d46a8930d9658a24a77ff34d52e40eb"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="bmbleb"><file name="bmbleb.css" hash="d929b5f42085c25b86101379f286f55f"/><dir name="images"><file name="arrows_up-down-large.png" hash="72c27995e1ab1d182891dad0a4d1dae2"/><file name="bmb-ctl.png" hash="de59a694a82b8699560df5146b2e315f"/><file name="check.png" hash="126f33ed483549e79a16186b7499c190"/><file name="grn-bg.png" hash="f681a524e2b4561dbe94152a2d24d60b"/><file name="h3-bg.png" hash="b93df0b0bdba8e8f6e0a07cc31fcc180"/><file name="icon-alert.png" hash="ac2e70efdcebc3813222d0d3ee62a6d9"/><file name="icon-bmbleb.png" hash="fb5574b5e63ee33b84eee26b3d8ef8e3"/><file name="icon-insights.png" hash="725fd29fe1b705e358c9080408693d3d"/><file name="icon-status.png" hash="bd13429f23166a6d431739010ea1b2cd"/><file name="left-ico1.png" hash="7d188f5e6021569750756f58067f0a3b"/><file name="left-ico2.png" hash="d2f6379a73290a8ffa4cb3e19a809d25"/><file name="left-ico3.png" hash="73bc75f7a746e54a75f14eda7a28a6b9"/><file name="left-ico4.png" hash="1da2c26187fed26b6c61599682b2dc4b"/><file name="left-ico5.png" hash="ada61cb32805f2cb8e8dace46361613e"/><file name="left-ico6.png" hash="1e62822267f72589ffa0771352a002da"/><file name="left-ico7.png" hash="16118412d581f0c83ce45c44f62f25a1"/><file name="left-ico8.png" hash="c7de2fe523c892b432b575648cc05631"/><file name="left-ico_demographics.png" hash="3fe23a2dea68f6c65114f248a8bdaa5e"/><file name="login-icn-b.png" hash="64e72070f595e215ece79736ac77ee2f"/><file name="login-icn.png" hash="6142cc2fc8ee2d1c40bf3c8f9ac1fa85"/><file name="logo.png" hash="8fb783f7d68fca3914123f56b8c066a4"/><file name="orng-bg.png" hash="074a6912ca2a139df537e3d15b6bc9b2"/><file name="plugin_dashboard_syncing.jpg" hash="8511648541f6f1b96ff1c53dda3a439b"/><file name="register.png" hash="f73fe51cf7df27ab11089385fa50714e"/><file name="registration-bg-25.png" hash="9d2cf77619cc8fce3ae4d44b0aae30c1"/><file name="registration-bg-50.png" hash="99942fdc8c3f88b0d4b09f87c9e39045"/><file name="registration-bg.png" hash="96365b39495e56ffe491dd9930fe221d"/><file name="spinner.gif" hash="add667817f25bce331a213ab3cc9621f"/><file name="springbot-ctl.png" hash="de59a694a82b8699560df5146b2e315f"/><file name="submit-btn-bg.png" hash="d98aa287b7b73dad9f780b22cb53fbdb"/><file name="sync_icon.png" hash="cb12f2e8943c8e324e3456375f953c86"/><file name="white-check.png" hash="126f33ed483549e79a16186b7499c190"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="shell"><file name="springbot.php" hash="40a39e4b3400ba8724621898c3d562a2"/></dir></target></contents>
55
  <compatible/>
56
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
57
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>Springbot</name>
4
+ <version>1.4.2.0</version>
5
  <stability>stable</stability>
6
  <license uri="http://opensource.org/licenses/OSL-3.0">Open Software License v3.0 (OSL-3.0)</license>
7
  <channel>community</channel>
47
  Proclivity to Buy Alerts example: Sally Avalon bought a house recently &#xD;
48
  &#xD;
49
  For support information, features and pricing and more details visit springbot.com </description>
50
+ <notes>Schedule based checkin&#xD;
51
+ Fix remote store id on product delete&#xD;
52
+ Add content type headers for registration post&#xD;
53
+ Fix harvest logging</notes>
54
  <authors><author><name>Springbot Integrations Team</name><user>Springbot</user><email>magento@springbot.com</email></author></authors>
55
+ <date>2015-03-10</date>
56
+ <time>21:09:14</time>
57
+ <contents><target name="magecommunity"><dir name="Springbot"><dir name="Shadow"><dir name="Block"><dir name="Action"><file name="View.php" hash="f2fc0d66474305766335aa37a7bbcd72"/></dir><file name="Async.php" hash="0d203fe1a722f7045029613a0e97bfc2"/></dir><dir name="Controller"><file name="Action.php" hash="5dc41d4ddf12a468fb23fc757ef49a95"/></dir><dir name="Helper"><file name="Data.php" hash="82089d4cfecee69628ae9d627ad2de0c"/><file name="Prattler.php" hash="e2658c19a182bd5cc9948eccc024ad21"/></dir><dir name="Model"><dir name="Listeners"><file name="Observer.php" hash="e5b827a61c3b04fdb73e38a424d167eb"/></dir></dir><dir name="controllers"><file name="ActionController.php" hash="008ffa5ad753c092650b5686ea24fffe"/><file name="IndexController.php" hash="2a540da33a64c7307af981abca0d4558"/></dir><dir name="etc"><file name="config.xml" hash="b1717e37375197b449c0736adff99d87"/></dir></dir><dir name="Services"><dir name="Cmd"><file name="Forecast.php" hash="efaeb6ca5b2667b30929b223cddfb044"/><file name="Halt.php" hash="85c85ae257e9b86d0fb10fb46060fea3"/><file name="Harvest.php" hash="1848d1c6e5d25b426b41b52cf28f8ff8"/><file name="Healthcheck.php" hash="b1c26cd3e54c303c7c6d73e5accf2e18"/><file name="Update.php" hash="d8d1950c85930083009096a3849054a7"/></dir><dir name="Harvest"><file name="AttributeSets.php" hash="95610f6fd6323e0473589c01051781f2"/><file name="Carts.php" hash="ecaf8583962fc63e49cf069d73eb22bf"/><file name="Categories.php" hash="acfe9c8dc9a02992a058015e8aaf9311"/><file name="Coupons.php" hash="5190a1669b0b4ef10222843451e9dc36"/><file name="CustomerAttributeSets.php" hash="7c3a0bed9f841900f692f5a17e7c6e8f"/><file name="Customers.php" hash="3d57c8238976554081176e249f2e7f4b"/><file name="Guests.php" hash="e0f6d955ba9bc3f020cc95f3083913ad"/><file name="Products.php" hash="087d01eddc45b4a30c4aa7dba5cc5dce"/><file name="Purchases.php" hash="a3d76ae1a2ea514fcce5ca2607ddf5a4"/><file name="Rules.php" hash="355ecad7266987a391ceca9d2eb0244f"/><file name="Subscribers.php" hash="a8b0d7197580bd9f3de7b10f9c6dc7ca"/></dir><file name="Harvest.php" hash="af3b9604c7b9d7da76cffe846dc34d70"/><dir name="Log"><file name="Installer.php" hash="342706712eb2731ea27aeec993fd2d7f"/></dir><dir name="Post"><file name="Attribute.php" hash="e0a283984de84bc16d5f89a893a8dc83"/><file name="AttributeSet.php" hash="c8f66b5a189125a63e834196402b709a"/><file name="Cart.php" hash="26d33fb887417e46d3ba3e46badc04a3"/><file name="Category.php" hash="0645d5eb9bb790f25e29666bc3a703e0"/><file name="Coupon.php" hash="6b8b49327874ce431f6100b6917ba21f"/><file name="Customer.php" hash="d2f018919afdb7d49617e6b9ac7d2760"/><file name="Guest.php" hash="3b7ee9f0e274340713d8c4302d01b361"/><file name="Json.php" hash="86a5f26aa5367d8c4c66d278e4c02546"/><file name="Jsonstring.php" hash="9dfb5761d1a7835bf35040a073fa8fc4"/><file name="Product.php" hash="5ec9cbf29df156da09d17e1b6526f53d"/><file name="Purchase.php" hash="0b924c8e5d8f7018eb335ba9fb6d63dd"/><file name="Rule.php" hash="fa038fa414a176d960ed6470c7b7b4cd"/><file name="Subscriber.php" hash="88c5dbcaae805866595217eedbbf5f34"/></dir><file name="Post.php" hash="df9bf80bee670259f3a54e3308d0dbd3"/><file name="Registry.php" hash="d54afde887b72e79ae36ab11766ec5c9"/><dir name="Store"><file name="Finalize.php" hash="e840d2c2dbe813f259b92feba8173b52"/><file name="Register.php" hash="72ae8d75c11dc1c0635c799e284ecb2d"/></dir><dir name="Tasks"><file name="ClearCache.php" hash="17ee105f79d9a71c13ecdd6de2787cdc"/><file name="ClearJobs.php" hash="380740a54aa4d79a89d2c67f06724a31"/><file name="ClearStores.php" hash="33e216186c56bde7e558cd828e90dda0"/><file name="Debug.php" hash="41a522394c2b9375393d81bb3ab206cc"/><file name="DeleteJob.php" hash="be2a2be88290cc3e9bc54c59e22254b5"/><file name="DeliverEventLog.php" hash="18ffe64d10e90819b5e141fc471c0951"/><file name="Forecast.php" hash="caaf18be7fe387a4eba5a77eb0db2c12"/><file name="GetLog.php" hash="d850bba9f90b134f884d8d7a36730a26"/><file name="Harvest.php" hash="f71f97f078a081425c8848ba435d3b16"/><file name="Healthcheck.php" hash="63fdc080533ab8dff8d0949dd6ef4a3b"/><file name="Jobs.php" hash="9df9611445f9ab4a7a6d4b4e79f6b681"/><file name="KillHarvest.php" hash="a757f35956e4565b597522168109071c"/><file name="LaunchFullHarvest.php" hash="e5271dbfa422a90f4c4dda7362cb68f3"/><file name="LaunchPartialHarvest.php" hash="9c5aa7792fe9a3b98f9de9f4b59e3866"/><file name="PackageUpdate.php" hash="cb88473eea4e15760a4fa7c0aba83ddb"/><file name="PostItem.php" hash="54b4bac0b26b8b0e06df1d6da1ea7a91"/><file name="RegisterStores.php" hash="c054ef31b9c28efc5a18ee2ddf31c512"/><file name="ResetRetries.php" hash="bf00fe101b69a78955dc9a6d054e7ba7"/><file name="ResumeHarvest.php" hash="c9ba7b36e2b16dd1d1d947fc83a0ce5e"/><file name="Run.php" hash="c6892d3f812d5085b284d3501211bd5d"/><file name="SetVar.php" hash="93a0afb5e5c32536f430fc3b58b72995"/><file name="UnlockJobs.php" hash="9bf4b725445897ab2842bcb97e344e0c"/><file name="ViewConfig.php" hash="cc60cbc3d2212576301b13b0b286c618"/></dir><file name="Tasks.php" hash="173bdc5c586a0f5d41528cdbd2fff70b"/><dir name="Update"><file name="Abstract.php" hash="7b9a1d36b4486e250587820731b7fb7c"/><file name="Connect.php" hash="3e4366a42e563ec3406a0fcb9a5f77bf"/><file name="Downloader.php" hash="934ef5788acb45ce94e0a32c1d705df1"/><file name="Installer.php" hash="a09ec2e9f7bbf12c117c8950e46072b0"/><file name="Package.php" hash="60ec01b28a2ded244bf6d4a971918bd5"/></dir><dir name="Work"><file name="Cleanup.php" hash="100fef130220e91dc255b5e0f30c37f1"/><file name="Manager.php" hash="9dbdfb717865b7724f4ffd38b3ec866e"/><file name="Report.php" hash="8a3eec618fe3b04a3514dc302c4c5a0f"/><file name="Restart.php" hash="d55e811fbba86348890b4047fa5a579f"/><file name="Runner.php" hash="c0ced9ce83e5e51b4ba5f10bb46760af"/><file name="Stop.php" hash="db97407b43396f0adf44a2354a23a0a5"/></dir></dir><dir name="Util"><file name="Caller.php" hash="4fcc265eb1a58fed5c3b404ec864514b"/><file name="Categories.php" hash="1292843306c38d9593902616e04320a6"/><dir name="Log"><file name="Rollover.php" hash="6ad4bd93adb7e906c1de5a05a2871ea8"/></dir><file name="Logger.php" hash="59abca8cb07ef933ca8ef2ac824591b5"/><file name="Partition.php" hash="b9296b086003ba58ba12f8b8b0373c50"/></dir><file name="Services.php" hash="b9f0a869c089aa0ce4e111813827e0b0"/><dir name="Bmbleb"><dir name="Block"><dir name="Adminhtml"><file name="Auth.php" hash="7dc661bbe9ec85f700a22b319981114d"/><dir name="Bmbleb"><dir name="Login"><file name="Form.php" hash="0af1ff701cb657eea5ea8f874e3affc1"/></dir><file name="Login.php" hash="7232e8225f5b21de5675c0d84cb452bd"/></dir><file name="Connected.php" hash="833cef8e351f5efa7a4d104b1c51ca7f"/><file name="Help.php" hash="b280b3292ed778140b751b6426ef56fb"/><dir name="Index"><file name="Messages.php" hash="1e247e31194447de32e54f49dafc3ccc"/><file name="Terms.php" hash="739e5a9ebe204f1f9ac433557c994ae6"/></dir><file name="Index.php" hash="eb7bbef5fa26a53748596e145c3677c4"/><dir name="Jobs"><file name="Grid.php" hash="67255d982ac3d50b38d7a2a525c2b922"/><file name="Status.php" hash="f1b197bf6fdc392bed93ff0734a54ad6"/></dir><file name="Jobs.php" hash="84801c6008802496e168e763a7e6d71f"/><file name="Login.php" hash="2e4d8baead482d404ed40f7d5f3d902c"/><file name="Logout.php" hash="b75af51891b751b9d070e1e784dd6914"/><file name="Logs.php" hash="686e958b553c1e3fcf74841eab30fffb"/><file name="Notifications.php" hash="7d078ddf2a7cf1291f04912576560d3e"/><file name="Problems.php" hash="c2fd654e2c4c3a6dd9fbb083d0995e5e"/><file name="Status.php" hash="9b67a20f0ee00608029d24850cefda4d"/><file name="Tabs.php" hash="6f93d5c6bd5208a99637c06118c6c630"/></dir></dir><dir name="Helper"><file name="Account.php" hash="c41f40e6f58abd3b8486e0e92cc079d8"/><file name="Data.php" hash="dca14b137de1e2734a377ca645eeddbe"/><file name="PluginStatus.php" hash="bd8bbc0578826490d0dc1ff4c6354aa1"/></dir><dir name="Model"><file name="Bmbleb.php" hash="700d11c3006f2dcd2e80cd8bbbab15f9"/><file name="Status.php" hash="9409d26c7884be6b8075ba97dbf71f78"/><file name="Sync.php" hash="a800b6064a88f37957392cd967f2b3cb"/></dir><dir name="controllers"><dir name="Adminhtml"><file name="HelpController.php" hash="087e7868dafe9dd2df89a642d405424a"/><file name="IndexController.php" hash="61a95eed027fcb7a7179485288f1b05f"/><file name="JobsController.php" hash="4e912a8fafd2f58235cb2299a83a128b"/><file name="LogsController.php" hash="20a0ce2f584f08480399b7a5ecbd9207"/><file name="ProblemsController.php" hash="9753f4b2d3e7d4873e4bd92b5b2b6aaf"/><file name="SettingsController.php" hash="f75a7a8ef28a296cbd46b04ae9dd5539"/></dir><file name="HelpController.php" hash="2df4608a957f151bf1d01dbde2113680"/><file name="IndexController.php" hash="ea5fa5e2b305f46b222cb2fc2a44f6a5"/><file name="LoginController.php" hash="152dcd56ce27b58ea5e003fe34830767"/><file name="LogoutController.php" hash="140c9d32f5557aa1169fd1b85cd5cc9f"/></dir><dir name="etc"><file name="config.xml" hash="45f7218274a3eed0086761942a95f27b"/></dir></dir><file name="Boss.php" hash="f0b1b9be52eea88e2c101fb9d0aea8e1"/><file name="Cli.php" hash="6aef5d4fd8fbda6351338ab313d930ce"/><file name="Log.php" hash="5ab61d7cf21805adb8f826f83b9bf7b1"/><dir name="Combine"><dir name="Helper"><file name="Attributes.php" hash="5fb06e7cc89bb710039a79fb16e2a998"/><file name="Cart.php" hash="07ce5f461ecded3b9b00ed5c30faa266"/><file name="Data.php" hash="bba3915380a71aaacacc306f10396ef1"/><file name="Harvest.php" hash="08fd1b330802731bf82358fd05789173"/><file name="Parser.php" hash="59b987ae48baffd9d656bb78c9a17379"/><file name="Redirect.php" hash="92053fb1b356fdd6b3131be0b6a8017c"/><file name="Store.php" hash="8db94d157d7e497e7612844da43a6c11"/><file name="Trackable.php" hash="a042cb0d176730ec87353b1c5c6d21f7"/></dir><dir name="Model"><file name="Action.php" hash="6375461263bdf7fe26e71235d2449c21"/><file name="Api.php" hash="978590ad36b4d6ad6b3a14742f8bb31c"/><dir name="Cron"><file name="Count.php" hash="57552740b6ffdd9a4e879191a51043b0"/><dir name="Manager"><file name="Status.php" hash="aeb4445bc2d4b1b7e0e19c09172f0483"/></dir><dir name="Queue"><dir name="Batch"><file name="Row.php" hash="25f4ed809a9190f5d41c6c210cd8a537"/></dir><file name="Batch.php" hash="fa905d2781aab5881e881e3b12d25e0c"/></dir><file name="Queue.php" hash="40f24524d556868be137ccf9f7f8e810"/><file name="Worker.php" hash="8b5040f1c5c5b3221542e739dc951de7"/></dir><file name="Cron.php" hash="40f2bc9634610f4ed5464de48630ce16"/><dir name="File"><file name="Io.php" hash="6d1f79eaf45897bf0525b0f3f3ac69d2"/><file name="Path.php" hash="24900b670c07fcdc4e54bae585f20002"/></dir><dir name="Harvest"><file name="AttributeSets.php" hash="479dfb30912b74183b396fa4e62323b2"/><file name="Carts.php" hash="0b303b2b7d4458a9a0cbf0653b9d660f"/><file name="Categories.php" hash="fd5f13ad449a320616569f64c82327ff"/><file name="Coupons.php" hash="14112f9063bbf20cea7ff3649f238524"/><file name="CustomerAttributeSets.php" hash="044f426226165ee86b0f822c00ec7712"/><file name="Customers.php" hash="c7850418a39abf09c10fbfafcb96f8e1"/><file name="Guests.php" hash="3685b3220b724e518dc83daad015577f"/><file name="Products.php" hash="da471abcc04837391b5270464164aefd"/><file name="Purchases.php" hash="427d38d1f6579f63730aa6bdf6b7bba4"/><file name="Rules.php" hash="fd1789174225c4ed6ad1e1137fe2aee5"/><file name="Subscribers.php" hash="e499e299612a6e2ce07ee19228cf43c5"/></dir><file name="Harvest.php" hash="8104fb4584411f90706f2fd9c8d8ce9b"/><dir name="Mysql4"><dir name="Action"><file name="Collection.php" hash="830a7db2ea307d594fe945701654d883"/></dir><file name="Action.php" hash="5b18cc8842c83d981575b7b2de496f66"/><dir name="Cron"><file name="Count.php" hash="acbbb7ec28afbbe98101f5d114cb30b3"/><dir name="Queue"><file name="Collection.php" hash="b26806c9e7cefd052bb784f5a6ce814c"/></dir><file name="Queue.php" hash="4add10644bfc94b88ef5042b23c82ae7"/></dir><dir name="Redirect"><file name="Collection.php" hash="3bbe4f8729c603f8d8131154a0a117c1"/><dir name="Order"><file name="Collection.php" hash="88c0cfcce31b0eed8c035dee4e7e86df"/></dir><file name="Order.php" hash="852bea330edac3372ec5c168111301a8"/></dir><file name="Redirect.php" hash="842e4ba35c6b049c8eaa64704588ca76"/><file name="Setup.php" hash="3fdec335980846a4c3adbc6f4e3478eb"/><dir name="Trackable"><file name="Collection.php" hash="8799c5bf630d267b551cf9dba986cbb0"/></dir><file name="Trackable.php" hash="b38749697b641874b42dceae38ab4a30"/></dir><dir name="Parser"><file name="AttributeSet.php" hash="9ae4013d42da5de0e9c8492fb29cd8d6"/><file name="Category.php" hash="0c3c71ff784307b9120d7cf781005069"/><file name="Coupon.php" hash="a66b3d4c8397610863cd74e35cbd5b62"/><file name="Customer.php" hash="99233c3da1eb28f1ec15e20e837d764a"/><file name="CustomerAttributeSet.php" hash="1b51f9300a9ee102872ff9d7f9bbccbc"/><file name="Guest.php" hash="002c900d3722f761e3e3ac63be84014f"/><file name="Product.php" hash="7e0fa4a55ca45fc876e588442cce72eb"/><dir name="Purchase"><file name="Item.php" hash="ca7facc8c81504ea990fdb1feeba64dd"/></dir><file name="Purchase.php" hash="ec3929b9e1a0df0e5816c1558391dcdc"/><dir name="Quote"><file name="Item.php" hash="37cbc74a49a16e67e02f421978e1741f"/></dir><file name="Quote.php" hash="df651461575cb44bd08f7eb8466782eb"/><file name="Rule.php" hash="0a0f70172aeff0e5157f2f1652c3ae09"/><file name="Subscriber.php" hash="57ab5db177d4a37f30865cb127912631"/></dir><file name="Parser.php" hash="3bd033d5d892f0f1673aa81ce51a70e2"/><dir name="Redirect"><file name="Order.php" hash="5ca85ca596ef6e45468c8a12cee72614"/></dir><file name="Redirect.php" hash="05dddaa1e9c17c4c79d70d63b56ed454"/><dir name="Resource"><file name="Abstract.php" hash="61dfb714347611c6cf934b1d2360bfe3"/><dir name="Action"><file name="Collection.php" hash="22e278b8cbc5d18d4faa48c4f224d145"/></dir><file name="Action.php" hash="83b00531db5ec3a51ea7c0fc65a1d083"/><dir name="Cron"><dir name="Count"><file name="Collection.php" hash="c5cb4ab406c1d008c1bc22bb95b3ba28"/></dir><file name="Count.php" hash="6a356b5d92b509945c4567f479b9bfdd"/><dir name="Queue"><file name="Collection.php" hash="2e7ba35d1a14da641a098078e4db7432"/></dir><file name="Queue.php" hash="f9eae90970e4d935b5e5335c8e57e71b"/></dir><file name="Debug.php" hash="976156dc1ff783a26174bdac79decde2"/><dir name="Redirect"><file name="Collection.php" hash="0f9db83ade4c50c2f7bbe40deae1c065"/><dir name="Order"><file name="Collection.php" hash="162359ed9499b6f976f5c341fd0585c3"/></dir><file name="Order.php" hash="7ea4477380a5215dc0efe561ede359d9"/></dir><file name="Redirect.php" hash="d239af442388bb9fa80db81a7fc43711"/><file name="Setup.php" hash="0405c44c124f19619ccc9f429d781d44"/><dir name="Trackable"><file name="Collection.php" hash="6f060c3537b49710302e38e881885a69"/></dir><file name="Trackable.php" hash="764b0d21c492dd69b9f85ae3c647666e"/></dir><dir name="System"><dir name="Config"><dir name="Source"><file name="Harvestertype.php" hash="4d9f7ffa7f49ecaa2e99df86f62e646c"/><file name="LogFormat.php" hash="828680dafe5a7042221900cb6d9dfa17"/><file name="LogLevel.php" hash="b86c793ca04205f045efd9ea42d02a10"/><file name="Stability.php" hash="830e5bc4e8ce9657221224dbaf99cee6"/><file name="UrlType.php" hash="28f9a5bc024afe5526685d429a751ad8"/></dir></dir></dir><file name="Trackable.php" hash="0af2cd1e6e1eb948157918df2570bf10"/></dir><dir name="etc"><file name="adminhtml.xml" hash="794fc8a1d67ac3e6b5d71c707a0c7cad"/><file name="config.xml" hash="6b78b870064fadbe3866f1ec5223d609"/><file name="system.xml" hash="25135db9871a1975d67c9a16848656ee"/></dir><dir name="sql"><dir name="combine_setup"><file name="mysql4-install-1.0.0.70.php" hash="425be4a54012cd64753ee1a216255d67"/><file name="mysql4-upgrade-1.0.0.70-1.0.0.84.php" hash="e51deaff9e65f43483ab00573605329d"/><file name="mysql4-upgrade-1.0.0.84-1.0.0.88.php" hash="89bd8a585c0d351aae6838ace48f608d"/><file name="mysql4-upgrade-1.0.0.88-1.2.0.0.php" hash="4779a5072d23ebdb27177de0dfd19f5d"/><file name="mysql4-upgrade-1.2.0.0-1.2.0.1.php" hash="01a7ef2466b9f676884db4d7a7c562a9"/><file name="mysql4-upgrade-1.2.0.1-1.2.1.0.php" hash="dbba441ac757db26289f21443a948f6b"/><file name="mysql4-upgrade-1.3.9.9-1.4.0.0.php" hash="5b5e0602bdcd48263bdf4e25b17d95b5"/></dir></dir></dir><dir name="BoneCollector"><dir name="Model"><file name="HarvestAbstract.php" hash="fecaefad7d4fc279e3a54b4c8cac54ae"/><dir name="HarvestAttribute"><file name="Observer.php" hash="26d016ab4fae05872aa46b6abdc3e562"/></dir><dir name="HarvestCart"><file name="Observer.php" hash="89985f650ab25d889e8e9e12631c39e9"/></dir><dir name="HarvestCategory"><file name="Observer.php" hash="7ddb0b58b301863c1e46dd2db3628db8"/></dir><dir name="HarvestCustomer"><file name="Observer.php" hash="a20e21f1033dc35025ab9b402d6574bc"/></dir><dir name="HarvestProduct"><file name="Observer.php" hash="73eac87240083709cb5c746b81afe44f"/></dir><dir name="HarvestPurchase"><file name="Observer.php" hash="969f81c5e7b111115a639fd90cf70e20"/></dir><dir name="HarvestRule"><file name="Observer.php" hash="49f369f960101ec66458f8dbe7972e40"/></dir><dir name="HarvestSubscriber"><file name="Observer.php" hash="5b64106296e9d0045610c69ed0c9be4b"/></dir></dir><dir name="etc"><file name="config.xml" hash="908a3b69f97bf5578f661de5b8341a80"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Springbot.xml" hash="69a4e2c056502cd8539b4f66a2c8b1bc"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><file name="bmbleb.xml" hash="aa390e236576f79375b407262961043e"/></dir><dir name="template"><dir name="bmbleb"><file name="auth.phtml" hash="bf509b53c49cd69ec3ea60e3effe69c3"/><file name="dashboard_loggedout.phtml" hash="19281143b19a544d4e3072dc754ada2d"/><dir name="help"><file name="index.phtml" hash="e9d3f11c623c735c3e699e406ff9e0e7"/></dir><dir name="index"><file name="messages.phtml" hash="fcbbb47d2cc30c493ed2316a8b888f5d"/><file name="terms.phtml" hash="dfff1182d2fe7d8eee69b9b302c4cbc7"/></dir><file name="index.phtml" hash="acbe2c052259293901fea4635b7a66bf"/><dir name="jobs"><file name="status.phtml" hash="77f0b0ae7c3c6c42031675cfc959e270"/></dir><file name="jobs.phtml" hash="961ac83f56bf8703dbc433894da4933e"/><file name="login.phtml" hash="0a1a20dfaffe8646bb56323ab811d46a"/><file name="logout.phtml" hash="09b92790c5e124a01086d6929ed7e8de"/><dir name="logs"><file name="index.phtml" hash="17e773a761a24e292b09fe7da1bd7662"/></dir><file name="notifications.phtml" hash="45f8767a090a4f7a7e177151bbc43f4f"/><dir name="problems"><file name="index.phtml" hash="2027d07eed8848a4ed8e801d67072796"/></dir><file name="status.phtml" hash="1acc630a6549b234bc1fa5923e04b8ce"/><file name="tabs.phtml" hash="778b686fb073a8aeb973db3bfb0302aa"/></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><file name="shadow.xml" hash="3f29bebbcf7e42c57dcac9150c6b7d68"/></dir><dir name="template"><dir name="shadow"><file name="async.phtml" hash="af147801ed74d45bb0580b0bb69ce0fd"/><file name="conversion.phtml" hash="3d46a8930d9658a24a77ff34d52e40eb"/></dir></dir></dir></dir></dir></target><target name="mageskin"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="bmbleb"><file name="bmbleb.css" hash="d929b5f42085c25b86101379f286f55f"/><dir name="images"><file name="arrows_up-down-large.png" hash="72c27995e1ab1d182891dad0a4d1dae2"/><file name="bmb-ctl.png" hash="de59a694a82b8699560df5146b2e315f"/><file name="check.png" hash="126f33ed483549e79a16186b7499c190"/><file name="grn-bg.png" hash="f681a524e2b4561dbe94152a2d24d60b"/><file name="h3-bg.png" hash="b93df0b0bdba8e8f6e0a07cc31fcc180"/><file name="icon-alert.png" hash="ac2e70efdcebc3813222d0d3ee62a6d9"/><file name="icon-bmbleb.png" hash="fb5574b5e63ee33b84eee26b3d8ef8e3"/><file name="icon-insights.png" hash="725fd29fe1b705e358c9080408693d3d"/><file name="icon-status.png" hash="bd13429f23166a6d431739010ea1b2cd"/><file name="left-ico1.png" hash="7d188f5e6021569750756f58067f0a3b"/><file name="left-ico2.png" hash="d2f6379a73290a8ffa4cb3e19a809d25"/><file name="left-ico3.png" hash="73bc75f7a746e54a75f14eda7a28a6b9"/><file name="left-ico4.png" hash="1da2c26187fed26b6c61599682b2dc4b"/><file name="left-ico5.png" hash="ada61cb32805f2cb8e8dace46361613e"/><file name="left-ico6.png" hash="1e62822267f72589ffa0771352a002da"/><file name="left-ico7.png" hash="16118412d581f0c83ce45c44f62f25a1"/><file name="left-ico8.png" hash="c7de2fe523c892b432b575648cc05631"/><file name="left-ico_demographics.png" hash="3fe23a2dea68f6c65114f248a8bdaa5e"/><file name="login-icn-b.png" hash="64e72070f595e215ece79736ac77ee2f"/><file name="login-icn.png" hash="6142cc2fc8ee2d1c40bf3c8f9ac1fa85"/><file name="logo.png" hash="8fb783f7d68fca3914123f56b8c066a4"/><file name="orng-bg.png" hash="074a6912ca2a139df537e3d15b6bc9b2"/><file name="plugin_dashboard_syncing.jpg" hash="8511648541f6f1b96ff1c53dda3a439b"/><file name="register.png" hash="f73fe51cf7df27ab11089385fa50714e"/><file name="registration-bg-25.png" hash="9d2cf77619cc8fce3ae4d44b0aae30c1"/><file name="registration-bg-50.png" hash="99942fdc8c3f88b0d4b09f87c9e39045"/><file name="registration-bg.png" hash="96365b39495e56ffe491dd9930fe221d"/><file name="spinner.gif" hash="add667817f25bce331a213ab3cc9621f"/><file name="springbot-ctl.png" hash="de59a694a82b8699560df5146b2e315f"/><file name="submit-btn-bg.png" hash="d98aa287b7b73dad9f780b22cb53fbdb"/><file name="sync_icon.png" hash="cb12f2e8943c8e324e3456375f953c86"/><file name="white-check.png" hash="126f33ed483549e79a16186b7499c190"/></dir></dir></dir></dir></dir></target><target name="mageweb"><dir name="shell"><file name="springbot.php" hash="40a39e4b3400ba8724621898c3d562a2"/></dir></target></contents>
58
  <compatible/>
59
  <dependencies><required><php><min>5.2.0</min><max>6.0.0</max></php></required></dependencies>
60
  </package>