$prof_data["fn"] = $data["name"];
$prof_data["key"] = $data["pubkey"];
+ // This logging is for temporarily debugging reasons
+ if (!isset($data["poco"])) {
+ logger('POCO not defined for ' . profile_link, LOGGER_DEBUG);
+ }
+
logger("Result for profile ".$profile_link.": ".print_r($prof_data, true), LOGGER_DEBUG);
return $prof_data;
$item = Item::selectFirst($fields, $condition);
if (!DBA::isResult($item)) {
- if (!isset($contact["url"])) {
- logger('Missing URL: ' . System::callstack() . ' - ' . json_encode($contact));
- }
-
- $result = self::storeByGuid($guid, $contact["url"], $uid);
+ $person = self::personByHandle($author);
+ $result = self::storeByGuid($guid, $person["url"], $uid);
- if (!$result) {
- $person = self::personByHandle($author);
- $result = self::storeByGuid($guid, $person["url"], $uid);
+ // We don't have an url for items that arrived at the public dispatcher
+ if (!$result && !empty($contact["url"])) {
+ $result = self::storeByGuid($guid, $contact["url"], $uid);
}
if ($result) {
$nodeinfo2_url = '';
foreach ($nodeinfo['links'] as $link) {
+ if (!is_array($link) || empty($link['rel'])) {
+ logger('Invalid nodeinfo format for ' . $server_url, LOGGER_DEBUG);
+ continue;
+ }
if ($link['rel'] == 'http://nodeinfo.diaspora.software/ns/schema/1.0') {
$nodeinfo1_url = $link['href'];
} elseif ($link['rel'] == 'http://nodeinfo.diaspora.software/ns/schema/2.0') {