]> git.mxchange.org Git - friendica.git/blobdiff - src/Protocol/PortableContact.php
Fix docblocks types
[friendica.git] / src / Protocol / PortableContact.php
index 59b3ad4325d7b10c6e8f94c81d5a9de53b7de88e..727cce4e1e2a1661aa74dfa0df078606446364ee 100644 (file)
@@ -12,18 +12,18 @@ namespace Friendica\Protocol;
 use Friendica\Core\Config;
 use Friendica\Core\Worker;
 use Friendica\Database\DBM;
-use Friendica\Model\GlobalContact;
+use Friendica\Model\GContact;
+use Friendica\Model\Profile;
 use Friendica\Network\Probe;
-use Friendica\Object\Profile;
 use dba;
 use DOMDocument;
-use DomXPath;
+use DOMXPath;
 use Exception;
 
+require_once 'include/dba.php';
 require_once 'include/datetime.php';
 require_once 'include/network.php';
 require_once 'include/html2bbcode.php';
-require_once 'include/Photo.php';
 
 class PortableContact
 {
@@ -193,10 +193,10 @@ class PortableContact
                                        "generation" => $generation);
 
                        try {
-                               $gcontact = GlobalContact::sanitize($gcontact);
-                               $gcid = GlobalContact::update($gcontact);
+                               $gcontact = GContact::sanitize($gcontact);
+                               $gcid = GContact::update($gcontact);
 
-                               GlobalContact::link($gcid, $uid, $cid, $zcid);
+                               GContact::link($gcid, $uid, $cid, $zcid);
                        } catch (Exception $e) {
                                logger($e->getMessage(), LOGGER_DEBUG);
                        }
@@ -425,7 +425,7 @@ class PortableContact
 
                                                $contact = array_merge($contact, $noscrape);
 
-                                               GlobalContact::update($contact);
+                                               GContact::update($contact);
 
                                                if (trim($noscrape["updated"]) != "") {
                                                        q(
@@ -447,7 +447,7 @@ class PortableContact
                if (!$force && !self::updateNeeded($gcontacts[0]["created"], $gcontacts[0]["updated"], $gcontacts[0]["last_failure"], $gcontacts[0]["last_contact"])) {
                        logger("Profile ".$profile." was last updated at ".$gcontacts[0]["updated"]." (cached)", LOGGER_DEBUG);
 
-                       GlobalContact::update($contact);
+                       GContact::update($contact);
                        return $gcontacts[0]["updated"];
                }
 
@@ -468,8 +468,8 @@ class PortableContact
                        $gcontact["server_url"] = $data["baseurl"];
 
                        try {
-                               $gcontact = GlobalContact::sanitize($gcontact);
-                               GlobalContact::update($gcontact);
+                               $gcontact = GContact::sanitize($gcontact);
+                               GContact::update($gcontact);
 
                                self::lastUpdated($data["url"], $force);
                        } catch (Exception $e) {
@@ -495,7 +495,7 @@ class PortableContact
 
                $contact["server_url"] = $data["baseurl"];
 
-               GlobalContact::update($contact);
+               GContact::update($contact);
 
                $feedret = z_fetch_url($data["poll"]);
 
@@ -513,7 +513,7 @@ class PortableContact
                $doc = new DOMDocument();
                @$doc->loadXML($feedret["body"]);
 
-               $xpath = new DomXPath($doc);
+               $xpath = new DOMXPath($doc);
                $xpath->registerNamespace('atom', "http://www.w3.org/2005/Atom");
 
                $entries = $xpath->query('/atom:feed/atom:entry');
@@ -769,7 +769,7 @@ class PortableContact
 
                $doc = new DOMDocument();
                @$doc->loadHTML($body);
-               $xpath = new DomXPath($doc);
+               $xpath = new DOMXPath($doc);
 
                $list = $xpath->query("//meta[@name]");
 
@@ -1343,14 +1343,17 @@ class PortableContact
 
                // Disvover Mastodon servers
                if (!Config::get('system', 'ostatus_disabled')) {
-                       $serverdata = fetch_url("https://instances.mastodon.xyz/instances.json");
-
-                       if ($serverdata) {
-                               $servers = json_decode($serverdata);
-
-                               foreach ($servers as $server) {
-                                       $url = (is_null($server->https_score) ? 'http' : 'https').'://'.$server->name;
-                                       Worker::add(PRIORITY_LOW, "DiscoverPoCo", "server", $url);
+                       $accesstoken = Config::get('system', 'instances_social_key');
+                       if (!empty($accesstoken)) {
+                               $api = 'https://instances.social/api/1.0/instances/list?count=0';
+                               $header = array('Authorization: Bearer '.$accesstoken);
+                               $serverdata = z_fetch_url($api, false, $redirects, ['headers' => $header]);
+                               if ($serverdata['success']) {
+                                       $servers = json_decode($serverdata['body']);
+                                       foreach ($servers->instances as $server) {
+                                               $url = (is_null($server->https_score) ? 'http' : 'https').'://'.$server->name;
+                                               Worker::add(PRIORITY_LOW, "DiscoverPoCo", "server", $url);
+                                       }
                                }
                        }
                }
@@ -1598,8 +1601,8 @@ class PortableContact
                                                "generation" => $generation);
 
                                try {
-                                       $gcontact = GlobalContact::sanitize($gcontact);
-                                       GlobalContact::update($gcontact);
+                                       $gcontact = GContact::sanitize($gcontact);
+                                       GContact::update($gcontact);
                                } catch (Exception $e) {
                                        logger($e->getMessage(), LOGGER_DEBUG);
                                }