}
$url = Probe::cleanURI($_REQUEST['url']);
- $return_path = 'follow?url=' . urlencode($url);
-
- // Makes the connection request for friendica contacts easier
- // This is just a precaution if maybe this page is called somewhere directly via POST
- $_SESSION['fastlane'] = $url;
-
- $result = Contact::createFromProbe($a->user, $url, true);
- if ($result['success'] == false) {
- // Possibly it is a remote item and not an account
- follow_remote_item($url);
-
- if ($result['message']) {
- notice($result['message']);
- }
- DI::baseUrl()->redirect($return_path);
- } elseif ($result['cid']) {
- DI::baseUrl()->redirect('contact/' . $result['cid']);
- }
-
- notice(DI::l10n()->t('The contact could not be added.'));
-
- DI::baseUrl()->redirect($return_path);
- // NOTREACHED
+ follow_process($a, $url);
}
function follow_content(App $a)
$request = $contact['request'];
$tpl = Renderer::getMarkupTemplate('dfrn_request.tpl');
} else {
+ if (!empty($_REQUEST['auto'])) {
+ follow_process($a, $contact['url']);
+ }
+
$request = DI::baseUrl() . '/follow';
$tpl = Renderer::getMarkupTemplate('auto_request.tpl');
}
return $o;
}
+function follow_process(App $a, string $url)
+{
+ $return_path = 'follow?url=' . urlencode($url);
+
+ // Makes the connection request for friendica contacts easier
+ // This is just a precaution if maybe this page is called somewhere directly via POST
+ $_SESSION['fastlane'] = $url;
+
+ $result = Contact::createFromProbe($a->user, $url, true);
+
+ if ($result['success'] == false) {
+ // Possibly it is a remote item and not an account
+ follow_remote_item($url);
+
+ if ($result['message']) {
+ notice($result['message']);
+ }
+ DI::baseUrl()->redirect($return_path);
+ } elseif ($result['cid']) {
+ DI::baseUrl()->redirect('contact/' . $result['cid']);
+ }
+
+ notice(DI::l10n()->t('The contact could not be added.'));
+
+ DI::baseUrl()->redirect($return_path);
+}
+
function follow_remote_item($url)
{
$item_id = Item::fetchByLink($url, local_user());