]> git.mxchange.org Git - friendica.git/blobdiff - mod/follow.php
Merge remote-tracking branch 'upstream/develop' into user-contact
[friendica.git] / mod / follow.php
index d655bc2bfe65270419727d6e3fd33adca074a1af..6227c0304cb8792b45e8cda332bbcd8a054d6693 100644 (file)
@@ -60,8 +60,7 @@ function follow_content(App $a)
 
        $uid = local_user();
 
-       // Issue 4815: Silently removing a prefixing @
-       $url = ltrim(Strings::escapeTags(trim($_REQUEST['url'] ?? '')), '@!');
+       $url = Probe::cleanURI(trim($_REQUEST['url'] ?? ''));
 
        // Issue 6874: Allow remote following from Peertube
        if (strpos($url, 'acct:') === 0) {
@@ -157,8 +156,8 @@ function follow_content(App $a)
 
        DI::page()['aside'] = '';
 
-       if ($protocol != Protocol::PHANTOM) {
-               DI::page()['aside'] = Widget\VCard::getHTML(Contact::getByURL($contact['url'], false));
+       if (!in_array($protocol, [Protocol::PHANTOM, Protocol::MAIL])) {
+               DI::page()['aside'] = Widget\VCard::getHTML($contact);
 
                $o .= Renderer::replaceMacros(Renderer::getMarkupTemplate('section_title.tpl'),
                        ['$title' => DI::l10n()->t('Status Messages and Posts')]
@@ -175,7 +174,7 @@ function follow_process(App $a, string $url)
 {
        $return_path = 'follow?url=' . urlencode($url);
 
-       $result = Contact::createFromProbe($a->getUserId(), $url);
+       $result = Contact::createFromProbeForUser($a->getLoggedInUserId(), $url);
 
        if ($result['success'] == false) {
                // Possibly it is a remote item and not an account