$data = Probe::uri($url);
$network = $data["network"];
- // Canonicalise email-style profile locator
- $url = Probe::webfingerDfrn($url, $hcard);
+ // Canonicalize email-style profile locator
+ $url = Probe::webfingerDfrn($data['url'], $hcard);
if (substr($url, 0, 5) === 'stat:') {
// Every time we detect the remote subscription we define this as OStatus.
if ($protocol == Protocol::PHANTOM) {
// Possibly it is a remote item and not an account
- follow_remote_item($url);
+ follow_remote_item($ret['url']);
notice(DI::l10n()->t("The network type couldn't be detected. Contact can't be added."));
$submit = '';
}
$contact = Probe::uri($_REQUEST['url']);
-
if (!$contact) {
DI::pConfig()->delete($uid, 'ostatus', 'legacy_contact');
return $o . DI::l10n()->t('Couldn\'t fetch information for contact.');
$probed = Probe::uri($url);
if ($probed['network'] == Protocol::OSTATUS) {
- $result = Contact::createFromProbe($a->user, $url, true, Protocol::OSTATUS);
+ $result = Contact::createFromProbe($a->user, $probed['url'], true, Protocol::OSTATUS);
if ($result['success']) {
$o .= ' - ' . DI::l10n()->t('success');
} else {
$data['gsid'] = GServer::getID($data['baseurl']);
}
- if (!$contact_id && !empty($data['alias']) && ($data['alias'] != $url) && !$in_loop) {
+ if (!$contact_id && !empty($data['alias']) && ($data['alias'] != $data['url']) && !$in_loop) {
$contact_id = self::getIdForURL($data["alias"], $uid, true, $default, true);
}
$condition = ['uid' => $user['uid'], 'poll' => [$ret['poll'], Strings::normaliseLink($ret['poll'])], 'network' => $ret['network'], 'pending' => false];
$contact = DBA::selectFirst('contact', ['id', 'rel'], $condition);
if (!DBA::isResult($contact)) {
- $condition = ['uid' => $user['uid'], 'nurl' => Strings::normaliseLink($url), 'network' => $ret['network'], 'pending' => false];
+ $condition = ['uid' => $user['uid'], 'nurl' => Strings::normaliseLink($ret['url']), 'network' => $ret['network'], 'pending' => false];
$contact = DBA::selectFirst('contact', ['id', 'rel'], $condition);
}
- $protocol = self::getProtocol($url, $ret['network']);
+ $protocol = self::getProtocol($ret['url'], $ret['network']);
if (($protocol === Protocol::DFRN) && !DBA::isResult($contact)) {
if ($interactive) {
if (empty($ret['url'])) {
$result['message'] .= DI::l10n()->t('No browser URL could be matched to this address.') . EOL;
}
- if (strpos($url, '@') !== false) {
+ if (strpos($ret['url'], '@') !== false) {
$result['message'] .= DI::l10n()->t('Unable to match @-style Identity Address with a known protocol or email contact.') . EOL;
$result['message'] .= DI::l10n()->t('Use mailto: in front of address to force email check.') . EOL;
}
$pending = false;
if ($protocol == Protocol::ACTIVITYPUB) {
- $apcontact = APContact::getByURL($url, false);
+ $apcontact = APContact::getByURL($ret['url'], false);
if (isset($apcontact['manually-approve'])) {
$pending = (bool)$apcontact['manually-approve'];
}
throw new Exception('Probing for URL ' . $gcontact['url'] . ' failed');
}
- $orig_profile = $gcontact['url'];
-
$gcontact['server_url'] = $data['baseurl'];
$gcontact = array_merge($gcontact, $data);
$uri = Item::newURI(local_user(), $guid);
$me = Probe::uri($replyto);
-
if (!$me['name']) {
return -2;
}
$recip_handle = $recipient['nickname'] . '@' . substr(DI::baseUrl(), strpos(DI::baseUrl(), '://') + 3);
- $sender_nick = basename($replyto);
- $sender_host = substr($replyto, strpos($replyto, '://') + 3);
+ $sender_nick = basename($me['url']);
+ $sender_host = substr($me['url'], strpos($me['url'], '://') + 3);
$sender_host = substr($sender_host, 0, strpos($sender_host, '/'));
$sender_handle = $sender_nick . '@' . $sender_host;
'reply' => 0,
'replied' => 0,
'uri' => $uri,
- 'parent-uri' => $replyto,
+ 'parent-uri' => $me['url'],
'created' => DateTimeFormat::utcNow(),
'unknown' => 1
]
if ($addr) {
$url = Probe::uri($addr)['url'] ?? '';
-
if ($url) {
System::externalRedirect($url);
exit();
$item["private"] = Item::PRIVATE;
$contact = Probe::uri($item['follow']);
+ $item['follow'] = $contact['url'];
- if ($contact['alias'] == '') {
- $contact['alias'] = $contact["url"];
- } else {
+ if ($contact['alias']) {
$item['follow'] = $contact['alias'];
+ } else {
+ $contact['alias'] = $contact['url'];
}
$condition = ['uid' => $owner['uid'], 'nurl' => Strings::normaliseLink($contact["url"])];