Centralized gsid generation
This commit is contained in:
parent
a77b7793a8
commit
e27915a819
3 changed files with 10 additions and 14 deletions
|
@ -1530,10 +1530,6 @@ class Contact
|
||||||
|
|
||||||
if (empty($data)) {
|
if (empty($data)) {
|
||||||
$data = Probe::uri($url, "", $uid);
|
$data = Probe::uri($url, "", $uid);
|
||||||
// Ensure that there is a gserver entry
|
|
||||||
if (!empty($data['baseurl']) && ($data['network'] != Protocol::PHANTOM)) {
|
|
||||||
$data['gsid'] = GServer::getID($data['baseurl']);
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Take the default values when probing failed
|
// Take the default values when probing failed
|
||||||
|
@ -2136,10 +2132,6 @@ class Contact
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($ret['baseurl']) && empty($contact['gsid'])) {
|
|
||||||
$ret['gsid'] = GServer::getID($ret['baseurl']);
|
|
||||||
}
|
|
||||||
|
|
||||||
$new_pubkey = $ret['pubkey'];
|
$new_pubkey = $ret['pubkey'];
|
||||||
|
|
||||||
$update = false;
|
$update = false;
|
||||||
|
@ -2308,10 +2300,6 @@ class Contact
|
||||||
$ret = Probe::uri($url, $network, $uid, false);
|
$ret = Probe::uri($url, $network, $uid, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!empty($ret['baseurl'])) {
|
|
||||||
$ret['gsid'] = GServer::getID($ret['baseurl']);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (($network != '') && ($ret['network'] != $network)) {
|
if (($network != '') && ($ret['network'] != $network)) {
|
||||||
Logger::log('Expected network ' . $network . ' does not match actual network ' . $ret['network']);
|
Logger::log('Expected network ' . $network . ' does not match actual network ' . $ret['network']);
|
||||||
return $result;
|
return $result;
|
||||||
|
|
|
@ -30,6 +30,7 @@ use Friendica\Core\System;
|
||||||
use Friendica\Database\DBA;
|
use Friendica\Database\DBA;
|
||||||
use Friendica\DI;
|
use Friendica\DI;
|
||||||
use Friendica\Model\Contact;
|
use Friendica\Model\Contact;
|
||||||
|
use Friendica\Model\GServer;
|
||||||
use Friendica\Model\Profile;
|
use Friendica\Model\Profile;
|
||||||
use Friendica\Protocol\ActivityNamespace;
|
use Friendica\Protocol\ActivityNamespace;
|
||||||
use Friendica\Protocol\ActivityPub;
|
use Friendica\Protocol\ActivityPub;
|
||||||
|
@ -86,14 +87,16 @@ class Probe
|
||||||
"community", "keywords", "location", "about", "hide",
|
"community", "keywords", "location", "about", "hide",
|
||||||
"batch", "notify", "poll", "request", "confirm", "poco",
|
"batch", "notify", "poll", "request", "confirm", "poco",
|
||||||
"following", "followers", "inbox", "outbox", "sharedinbox",
|
"following", "followers", "inbox", "outbox", "sharedinbox",
|
||||||
"priority", "network", "pubkey", "baseurl"];
|
"priority", "network", "pubkey", "baseurl", "gsid"];
|
||||||
|
|
||||||
$newdata = [];
|
$newdata = [];
|
||||||
foreach ($fields as $field) {
|
foreach ($fields as $field) {
|
||||||
if (isset($data[$field])) {
|
if (isset($data[$field])) {
|
||||||
$newdata[$field] = $data[$field];
|
$newdata[$field] = $data[$field];
|
||||||
} else {
|
} elseif ($field != "gsid") {
|
||||||
$newdata[$field] = "";
|
$newdata[$field] = "";
|
||||||
|
} else {
|
||||||
|
$newdata[$field] = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -461,6 +464,10 @@ class Probe
|
||||||
$data['baseurl'] = self::$baseurl;
|
$data['baseurl'] = self::$baseurl;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($data['baseurl']) && empty($data['gsid'])) {
|
||||||
|
$data['gsid'] = GServer::getID($data['baseurl']);
|
||||||
|
}
|
||||||
|
|
||||||
if (empty($data['network'])) {
|
if (empty($data['network'])) {
|
||||||
$data['network'] = Protocol::PHANTOM;
|
$data['network'] = Protocol::PHANTOM;
|
||||||
}
|
}
|
||||||
|
|
|
@ -171,6 +171,7 @@ class ActivityPub
|
||||||
$profile['poll'] = $apcontact['outbox'];
|
$profile['poll'] = $apcontact['outbox'];
|
||||||
$profile['pubkey'] = $apcontact['pubkey'];
|
$profile['pubkey'] = $apcontact['pubkey'];
|
||||||
$profile['baseurl'] = $apcontact['baseurl'];
|
$profile['baseurl'] = $apcontact['baseurl'];
|
||||||
|
$profile['gsid'] = $apcontact['gsid'];
|
||||||
|
|
||||||
// Remove all "null" fields
|
// Remove all "null" fields
|
||||||
foreach ($profile as $field => $content) {
|
foreach ($profile as $field => $content) {
|
||||||
|
|
Loading…
Reference in a new issue