<?php
/**
- * @file src/Worker/Cron.php
+ * @copyright Copyright (C) 2020, Friendica
+ *
+ * @license GNU AGPL version 3 or any later version
+ *
+ * This program is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License as
+ * published by the Free Software Foundation, either version 3 of the
+ * License, or (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see <https://www.gnu.org/licenses/>.
+ *
*/
+
namespace Friendica\Worker;
use Friendica\Core\Addon;
-use Friendica\Core\Config;
use Friendica\Core\Hook;
use Friendica\Core\Logger;
use Friendica\Core\Protocol;
{
$a = DI::app();
- $last = Config::get('system', 'last_cron');
+ $last = DI::config()->get('system', 'last_cron');
- $poll_interval = intval(Config::get('system', 'cron_interval'));
+ $poll_interval = intval(DI::config()->get('system', 'cron_interval'));
if ($last) {
$next = $last + ($poll_interval * 60);
// Clear cache entries
Worker::add(PRIORITY_LOW, "CronJobs", "clear_cache");
- // Repair missing Diaspora values in contacts
- Worker::add(PRIORITY_LOW, "CronJobs", "repair_diaspora");
-
// Repair entries in the database
Worker::add(PRIORITY_LOW, "CronJobs", "repair_database");
// once daily run birthday_updates and then expire in background
- $d1 = Config::get('system', 'last_expire_day');
+ $d1 = DI::config()->get('system', 'last_expire_day');
$d2 = intval(DateTimeFormat::utcNow('d'));
// Daily cron calls
self::checkdeletedContacts();
- Config::set('system', 'last_expire_day', $d2);
+ DI::config()->set('system', 'last_expire_day', $d2);
}
// Hourly cron calls
- if (Config::get('system', 'last_cron_hourly', 0) + 3600 < time()) {
+ if (DI::config()->get('system', 'last_cron_hourly', 0) + 3600 < time()) {
// Delete all done workerqueue entries
DBA::delete('workerqueue', ['`done` AND `executed` < UTC_TIMESTAMP() - INTERVAL 1 HOUR']);
// Optimizing this table only last seconds
- if (Config::get('system', 'optimize_workerqueue', false)) {
+ if (DI::config()->get('system', 'optimize_workerqueue', false)) {
DBA::e("OPTIMIZE TABLE `workerqueue`");
}
- Config::set('system', 'last_cron_hourly', time());
+ DI::config()->set('system', 'last_cron_hourly', time());
}
// Ensure to have a .htaccess file.
Logger::log('cron: end');
- Config::set('system', 'last_cron', time());
+ DI::config()->set('system', 'last_cron', time());
return;
}
* @throws \Friendica\Network\HTTPException\InternalServerErrorException
*/
private static function pollContacts() {
- $min_poll_interval = Config::get('system', 'min_poll_interval', 1);
+ $min_poll_interval = DI::config()->get('system', 'min_poll_interval', 1);
Addon::reload();
// Only poll from those with suitable relationships,
// and which have a polling address and ignore Diaspora since
// we are unable to match those posts with a Diaspora GUID and prevent duplicates.
- $abandon_days = intval(Config::get('system', 'account_abandon_days'));
+ $abandon_days = intval(DI::config()->get('system', 'account_abandon_days'));
if ($abandon_days < 1) {
$abandon_days = 0;
}
}
}
- if (($contact['network'] == Protocol::FEED) && ($contact['priority'] <= 3)) {
+ if ((($contact['network'] == Protocol::FEED) && ($contact['priority'] <= 3)) || ($contact['network'] == Protocol::MAIL)) {
$priority = PRIORITY_MEDIUM;
} elseif ($contact['archive']) {
$priority = PRIORITY_NEGLIGIBLE;