]> git.mxchange.org Git - friendica.git/blobdiff - src/Network/Probe.php
messages.po and and corrected typo in comment
[friendica.git] / src / Network / Probe.php
index 5beef2ea82bc637f60060811b76218228b48290e..44348dcd7454d505f0a9e5f3f664317d9c3dd344 100644 (file)
@@ -139,8 +139,17 @@ class Probe
                foreach ([Protocol::DIASPORA, Protocol::OSTATUS] as $network) {
                        if (!empty($data['networks'][$network])) {
                                $data['networks'][$network]['subscribe'] = $newdata['subscribe'] ?? '';
-                               $data['networks'][$network]['baseurl'] = $newdata['baseurl'] ?? '';
-                               $data['networks'][$network]['gsid'] = $newdata['gsid'] ?? 0;
+                               if (empty($data['networks'][$network]['baseurl'])) {
+                                       $data['networks'][$network]['baseurl'] = $newdata['baseurl'] ?? '';
+                               } else {
+                                       $newdata['baseurl'] = $data['networks'][$network]['baseurl'];
+                               }
+                               if (!empty($newdata['baseurl'])) {
+                                       $newdata['gsid'] = $data['networks'][$network]['gsid'] = GServer::getID($newdata['baseurl']);
+                               } else {
+                                       $newdata['gsid'] = $data['networks'][$network]['gsid'] = null;
+                               }
+
                                $newdata['networks'][$network] = self::rearrangeData($data['networks'][$network]);
                                unset($newdata['networks'][$network]['networks']);
                        }
@@ -687,7 +696,7 @@ class Probe
                }
 
                $parts = parse_url($uri);
-               if (empty($parts['scheme']) && empty($parts['host']) && !strstr($parts['path'], '@')) {
+               if (empty($parts['scheme']) && empty($parts['host']) && (empty($parts['path']) || strpos($parts['path'], '@') === false)) {
                        Logger::info('URI was not detectable', ['uri' => $uri]);
                        return [];
                }