X-Git-Url: https://git.mxchange.org/?a=blobdiff_plain;f=src%2FWorker%2FDiscoverPoCo.php;h=d495b4c2a6a8db94c6a7e070eb09f94afad25931;hb=4c5b97834b26745fab2f23040cc3ca87686c6e87;hp=72df3420e804fe9555aa8286af89ef0cc483eff5;hpb=2f28c2ebbfd8f66093d7081d40b1d48f65fcff20;p=friendica.git diff --git a/src/Worker/DiscoverPoCo.php b/src/Worker/DiscoverPoCo.php index 72df3420e8..d495b4c2a6 100644 --- a/src/Worker/DiscoverPoCo.php +++ b/src/Worker/DiscoverPoCo.php @@ -11,10 +11,13 @@ use Friendica\Core\Protocol; use Friendica\Core\Worker; use Friendica\Database\DBA; use Friendica\Model\GContact; +use Friendica\Model\Contact; +use Friendica\Model\GServer; use Friendica\Network\Probe; use Friendica\Protocol\PortableContact; use Friendica\Util\DateTimeFormat; use Friendica\Util\Network; +use Friendica\Util\Strings; class DiscoverPoCo { @@ -61,7 +64,7 @@ class DiscoverPoCo if ($mode == 8) { if ($param1 != "") { - PortableContact::lastUpdated($param1, true); + GContact::updateFromProbe($param1, true); } } elseif ($mode == 7) { if (!empty($param4)) { @@ -80,11 +83,11 @@ class DiscoverPoCo return; } $server_url = filter_var($server_url, FILTER_SANITIZE_URL); - if (substr(normalise_link($server_url), 0, 7) != "http://") { + if (substr(Strings::normaliseLink($server_url), 0, 7) != "http://") { return; } $result = "Checking server ".$server_url." - "; - $ret = PortableContact::checkServer($server_url); + $ret = GServer::check($server_url); if ($ret) { $result .= "success"; } else { @@ -98,7 +101,7 @@ class DiscoverPoCo } elseif (($mode == 1) && ($search != "") && Config::get('system', 'poco_local_search')) { self::discoverDirectory($search); self::gsSearchUser($search); - } elseif (($mode == 0) && ($search == "") && (Config::get('system', 'poco_discovery') > 0)) { + } elseif (($mode == 0) && ($search == "") && (Config::get('system', 'poco_discovery') != PortableContact::DISABLED)) { // Query Friendica and Hubzilla servers for their users PortableContact::discover(); @@ -162,7 +165,7 @@ class DiscoverPoCo $urlparts = parse_url($user["url"]); if (!isset($urlparts["scheme"])) { DBA::update('gcontact', ['network' => Protocol::PHANTOM], - ['nurl' => normalise_link($user["url"])]); + ['nurl' => Strings::normaliseLink($user["url"])]); continue; } @@ -170,21 +173,21 @@ class DiscoverPoCo $networks = ["twitter.com" => Protocol::TWITTER, "identi.ca" => Protocol::PUMPIO]; DBA::update('gcontact', ['network' => $networks[$urlparts["host"]]], - ['nurl' => normalise_link($user["url"])]); + ['nurl' => Strings::normaliseLink($user["url"])]); continue; } - $server_url = PortableContact::detectServer($user["url"]); + $server_url = Contact::getBasepath($user["url"]); $force_update = false; if ($user["server_url"] != "") { - $force_update = (normalise_link($user["server_url"]) != normalise_link($server_url)); + $force_update = (Strings::normaliseLink($user["server_url"]) != Strings::normaliseLink($server_url)); $server_url = $user["server_url"]; } - if ((($server_url == "") && ($user["network"] == Protocol::FEED)) || $force_update || PortableContact::checkServer($server_url, $user["network"])) { + if ((($server_url == "") && ($user["network"] == Protocol::FEED)) || $force_update || GServer::check($server_url, $user["network"])) { Logger::log('Check profile '.$user["url"]); Worker::add(PRIORITY_LOW, "DiscoverPoCo", "check_profile", $user["url"]); @@ -193,7 +196,7 @@ class DiscoverPoCo } } else { DBA::update('gcontact', ['last_failure' => DateTimeFormat::utcNow()], - ['nurl' => normalise_link($user["url"])]); + ['nurl' => Strings::normaliseLink($user["url"])]); } // Quit the loop after 3 minutes @@ -220,7 +223,7 @@ class DiscoverPoCo if (!empty($j->results)) { foreach ($j->results as $jj) { // Check if the contact already exists - $exists = q("SELECT `id`, `last_contact`, `last_failure`, `updated` FROM `gcontact` WHERE `nurl` = '%s'", normalise_link($jj->url)); + $exists = q("SELECT `id`, `last_contact`, `last_failure`, `updated` FROM `gcontact` WHERE `nurl` = '%s'", Strings::normaliseLink($jj->url)); if (DBA::isResult($exists)) { Logger::log("Profile ".$jj->url." already exists (".$search.")", Logger::DEBUG); @@ -229,13 +232,13 @@ class DiscoverPoCo continue; } // Update the contact - PortableContact::lastUpdated($jj->url); + GContact::updateFromProbe($jj->url); continue; } - $server_url = PortableContact::detectServer($jj->url); + $server_url = Contact::getBasepath($jj->url); if ($server_url != '') { - if (!PortableContact::checkServer($server_url)) { + if (!GServer::check($server_url)) { Logger::log("Friendica server ".$server_url." doesn't answer.", Logger::DEBUG); continue; } @@ -266,6 +269,9 @@ class DiscoverPoCo * @brief Search for GNU Social user with gstools.org * * @param string $search User name + * @return bool + * @throws \Friendica\Network\HTTPException\InternalServerErrorException + * @throws \ImagickException */ private static function gsSearchUser($search) {