]> git.mxchange.org Git - friendica.git/blobdiff - src/Protocol/Diaspora.php
Merge pull request #13629 from annando/transmitted-languages
[friendica.git] / src / Protocol / Diaspora.php
index dd6c2115b5e32714a868bae0ee589465ca76bf31..c0bc1a5a072db2e46e1ec0c45e187c36f43a7c3f 100644 (file)
@@ -796,7 +796,7 @@ class Diaspora
         */
        private static function key(WebFingerUri $uri): string
        {
-               Logger::info('Fetching diaspora key', ['handle' => $uri->getAddr(), 'callstack' => System::callstack(20)]);
+               Logger::info('Fetching diaspora key', ['handle' => $uri->getAddr()]);
                try {
                        return DI::dsprContact()->getByAddr($uri)->pubKey;
                } catch (HTTPException\NotFoundException | \InvalidArgumentException $e) {
@@ -1192,6 +1192,7 @@ class Diaspora
        {
                $fields = [
                        'id', 'parent', 'body', 'wall', 'uri', 'guid', 'private', 'origin',
+                       'allow_cid', 'allow_gid', 'deny_cid', 'deny_gid',
                        'author-name', 'author-link', 'author-avatar', 'gravity',
                        'owner-name', 'owner-link', 'owner-avatar'
                ];
@@ -1567,6 +1568,12 @@ class Diaspora
                $datarray['verb'] = Activity::POST;
                $datarray['gravity'] = Item::GRAVITY_COMMENT;
 
+               $datarray['private']   = $toplevel_parent_item['private'];
+               $datarray['allow_cid'] = $toplevel_parent_item['allow_cid'];
+               $datarray['allow_gid'] = $toplevel_parent_item['allow_gid'];
+               $datarray['deny_cid']  = $toplevel_parent_item['deny_cid'];
+               $datarray['deny_gid']  = $toplevel_parent_item['deny_gid'];
+
                $datarray['thr-parent'] = $thr_parent ?: $toplevel_parent_item['uri'];
 
                $datarray['object-type'] = Activity\ObjectType::COMMENT;
@@ -1823,6 +1830,13 @@ class Diaspora
 
                $datarray['verb'] = $verb;
                $datarray['gravity'] = Item::GRAVITY_ACTIVITY;
+
+               $datarray['private']   = $toplevel_parent_item['private'];
+               $datarray['allow_cid'] = $toplevel_parent_item['allow_cid'];
+               $datarray['allow_gid'] = $toplevel_parent_item['allow_gid'];
+               $datarray['deny_cid']  = $toplevel_parent_item['deny_cid'];
+               $datarray['deny_gid']  = $toplevel_parent_item['deny_gid'];
+
                $datarray['thr-parent'] = $toplevel_parent_item['uri'];
 
                $datarray['object-type'] = Activity\ObjectType::NOTE;
@@ -3022,7 +3036,7 @@ class Diaspora
                        // The "addr" field should always be filled.
                        // If this isn't the case, it will raise a notice some lines later.
                        // And in the log we will see where it came from, and we can handle it there.
-                       Logger::notice('Empty addr', ['contact' => $contact ?? [], 'callstack' => System::callstack(20)]);
+                       Logger::notice('Empty addr', ['contact' => $contact ?? []]);
                }
 
                $envelope = self::buildMessage($msg, $owner, $contact, $owner['uprvkey'], $pubkey ?? '', $public_batch);
@@ -3062,10 +3076,7 @@ class Diaspora
                // If the item belongs to a user, we take this user id.
                if ($item['uid'] == 0) {
                        // @todo Possibly use an administrator account?
-                       $condition = [
-                               'verified' => true, 'blocked' => false,
-                               'account_removed' => false, 'account_expired' => false, 'account-type' => User::ACCOUNT_TYPE_PERSON
-                       ];
+                       $condition = ['verified' => true, 'blocked' => false, 'account_removed' => false, 'account_expired' => false, 'account-type' => User::ACCOUNT_TYPE_PERSON];
                        $first_user = DBA::selectFirst('user', ['uid'], $condition, ['order' => ['uid']]);
                        $owner = User::getOwnerDataById($first_user['uid']);
                } else {