X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FCron.php;h=055a9b4354ed66556ac450bee8e19c4b391e58c4;hb=b227d65dfc086c4d61e471360c09a34abf21a301;hp=21d2f8a20560fcb95804a5e7a45cdfdba477257a;hpb=018858934b0423efb7dd07e660f621f1e8eb75cd;p=friendica.git diff --git a/src/Worker/Cron.php b/src/Worker/Cron.php index 21d2f8a205..055a9b4354 100644 --- a/src/Worker/Cron.php +++ b/src/Worker/Cron.php @@ -29,6 +29,7 @@ use Friendica\DI; use Friendica\Model\Tag; use Friendica\Protocol\ActivityPub\Queue; use Friendica\Protocol\Relay; +use Friendica\Util\DateTimeFormat; class Cron { @@ -36,7 +37,7 @@ class Cron { $a = DI::app(); - $last = DI::config()->get('system', 'last_cron'); + $last = DI::keyValue()->get('last_cron'); $poll_interval = intval(DI::config()->get('system', 'cron_interval')); @@ -83,7 +84,8 @@ class Cron Worker::add(Worker::PRIORITY_LOW, 'PostUpdate'); // Hourly cron calls - if (DI::config()->get('system', 'last_cron_hourly', 0) + 3600 < time()) { + if ((DI::keyValue()->get('last_cron_hourly') ?? 0) + 3600 < time()) { + // Update trending tags cache for the community page Tag::setLocalTrendingHashtags(24, 20); @@ -103,7 +105,7 @@ class Cron // Clear cache entries Worker::add(Worker::PRIORITY_LOW, 'ClearCache'); - DI::config()->set('system', 'last_cron_hourly', time()); + DI::keyValue()->set('last_cron_hourly', time()); } // Daily maintenance cron calls @@ -128,19 +130,27 @@ class Cron Worker::add(Worker::PRIORITY_LOW, 'CheckDeletedContacts'); + Worker::add(Worker::PRIORITY_LOW, 'UpdateAllSuggestions'); + if (DI::config()->get('system', 'optimize_tables')) { Worker::add(Worker::PRIORITY_LOW, 'OptimizeTables'); } + $users = DBA::select('owner-view', ['uid'], ["`homepage_verified` OR (`last-activity` > ? AND `homepage` != ?)", DateTimeFormat::utc('now - 7 days', 'Y-m-d'), '']); + while ($user = DBA::fetch($users)) { + Worker::add(Worker::PRIORITY_LOW, 'CheckRelMeProfileLink', $user['uid']); + } + DBA::close($users); + // Resubscribe to relay servers Relay::reSubscribe(); - DI::config()->set('system', 'last_cron_daily', time()); + DI::keyValue()->set('last_cron_daily', time()); } Logger::notice('end'); - DI::config()->set('system', 'last_cron', time()); + DI::keyValue()->set('last_cron', time()); } /**