]> git.mxchange.org Git - friendica.git/commitdiff
Issue 10264: Remote comments for visitors
authorMichael <heluecht@pirati.ca>
Sun, 23 May 2021 10:39:11 +0000 (10:39 +0000)
committerMichael <heluecht@pirati.ca>
Sun, 23 May 2021 10:39:11 +0000 (10:39 +0000)
mod/dfrn_poll.php
src/App.php
src/Object/Post.php

index 54a996f651221be56a66335ffa6b6f7ac435a213..f0a8e855e9a3891dfb0677004b55bc7b28c89f89 100644 (file)
@@ -128,6 +128,7 @@ function dfrn_poll_init(App $a)
                                        $_SESSION['visitor_handle'] = $r[0]['addr'];
                                        $_SESSION['visitor_visiting'] = $r[0]['uid'];
                                        $_SESSION['my_url'] = $r[0]['url'];
+                                       $_SESSION['remote_comment'] = $r[0]['subscribe'];
 
                                        Session::setVisitorsContacts();
 
@@ -497,8 +498,10 @@ function dfrn_poll_content(App $a)
                                        $_SESSION['authenticated'] = 1;
                                        $_SESSION['visitor_id'] = $r[0]['id'];
                                        $_SESSION['visitor_home'] = $r[0]['url'];
+                                       $_SESSION['visitor_handle'] = $r[0]['addr'];
                                        $_SESSION['visitor_visiting'] = $r[0]['uid'];
                                        $_SESSION['my_url'] = $r[0]['url'];
+                                       $_SESSION['remote_comment'] = $r[0]['subscribe'];
 
                                        Session::setVisitorsContacts();
 
index 772d273c521f7e1555a9e121b009a6cc0106bfaa..5c74b1b539388750f7b2c8300351ac34a07795dd 100644 (file)
@@ -34,6 +34,7 @@ use Friendica\Core\L10n;
 use Friendica\Core\System;
 use Friendica\Core\Theme;
 use Friendica\Database\Database;
+use Friendica\Model\Contact;
 use Friendica\Model\Profile;
 use Friendica\Module\Special\HTTPException as ModuleHTTPException;
 use Friendica\Network\HTTPException;
@@ -464,6 +465,11 @@ class App
                                                if (Core\Session::get('visitor_home') != $_GET["zrl"]) {
                                                        Core\Session::set('my_url', $_GET['zrl']);
                                                        Core\Session::set('authenticated', 0);
+
+                                                       $remote_contact = Contact::getByURL($_GET['zrl'], false, ['subscribe']);
+                                                       if (!empty($remote_contact['subscribe'])) {
+                                                               $_SESSION['remote_comment'] = $remote_contact['subscribe'];
+                                                       }
                                                }
 
                                                Model\Profile::zrlInit($this);
index 1f38fa556d563153f92266e15610c2f3c4f630a5..93abf351f991735fa73e00294e3648e276bf9905 100644 (file)
@@ -401,9 +401,13 @@ class Post
                }
 
                // Fetching of Diaspora posts doesn't always work. There are issues with reshares and possibly comments
-               if (($item['network'] != Protocol::DIASPORA) && empty($comment) && !empty(Session::get('remote_comment'))) {
+               if (!local_user() && ($item['network'] != Protocol::DIASPORA) && !empty(Session::get('remote_comment'))) {
                        $remote_comment = [DI::l10n()->t('Comment this item on your system'), DI::l10n()->t('Remote comment'),
                                str_replace('{uri}', urlencode($item['uri']), Session::get('remote_comment'))];
+
+                       // Ensure to either display the remote comment or the local activities
+                       $buttons = [];
+                       $comment_html = '';
                } else {
                        $remote_comment = '';
                }