X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FDirectory.php;h=bb8041a2251e0e919b231ff623d6c9d2afa948cd;hb=38cf0666bd7a6537a5a6af19b5bd6073ef12e82f;hp=b29978cea731e666751485aa3239a6ba0a15cd21;hpb=39ff6e9ce9251fe69b56ba05ea7bdc1896f34de2;p=friendica.git diff --git a/src/Worker/Directory.php b/src/Worker/Directory.php index b29978cea7..bb8041a225 100644 --- a/src/Worker/Directory.php +++ b/src/Worker/Directory.php @@ -1,18 +1,42 @@ . + * */ namespace Friendica\Worker; -use Friendica\Core\Config; +use Friendica\Core\Hook; +use Friendica\Core\Logger; +use Friendica\Core\Search; use Friendica\Core\Worker; -use Friendica\Database\DBM; +use Friendica\Database\DBA; +use Friendica\DI; +use Friendica\Network\HTTPClient\Client\HttpClientAccept; -class Directory { - public static function execute($url = '') { - $dir = Config::get('system', 'directory'); +/** + * Sends updated profile data to the directory + */ +class Directory +{ + public static function execute(string $url = '') + { + $dir = Search::getGlobalDirectory(); if (!strlen($dir)) { return; @@ -27,27 +51,21 @@ class Directory { $arr = ['url' => $url]; - call_hooks('globaldir_update', $arr); + Hook::callAll('globaldir_update', $arr); - logger('Updating directory: ' . $arr['url'], LOGGER_DEBUG); + Logger::info('Updating directory: ' . $arr['url']); if (strlen($arr['url'])) { - fetch_url($dir . '?url=' . bin2hex($arr['url'])); + DI::httpClient()->fetch($dir . '?url=' . bin2hex($arr['url']), HttpClientAccept::HTML); } return; } private static function updateAll() { - $r = q("SELECT `url` FROM `contact` - INNER JOIN `profile` ON `profile`.`uid` = `contact`.`uid` - INNER JOIN `user` ON `user`.`uid` = `contact`.`uid` - WHERE `contact`.`self` AND `profile`.`net-publish` AND `profile`.`is-default` AND - NOT `user`.`account_expired` AND `user`.`verified`"); - - if (DBM::is_result($r)) { - foreach ($r AS $user) { - Worker::add(PRIORITY_LOW, 'Directory', $user['url']); - } + $users = DBA::select('owner-view', ['url'], ['net-publish' => true, 'account_expired' => false, 'verified' => true]); + while ($user = DBA::fetch($users)) { + Worker::add(PRIORITY_LOW, 'Directory', $user['url']); } + DBA::close($users); } }