]> git.mxchange.org Git - friendica-addons.git/commitdiff
Twitter: Fix display of reshared posts
authorMichael <heluecht@pirati.ca>
Sat, 21 Nov 2020 18:55:32 +0000 (18:55 +0000)
committerMichael <heluecht@pirati.ca>
Sat, 21 Nov 2020 18:55:32 +0000 (18:55 +0000)
statusnet/statusnet.php
twitter/twitter.php

index 80579173cc3a45bb3908bed0e88c709d023d5112..89f6f0e8875524a4fa00e8d19fd3a29e3b4dfbb6 100644 (file)
@@ -1106,11 +1106,13 @@ function statusnet_createpost(App $a, $uid, $post, $self, $create_user, $only_ex
        if (!empty($content->in_reply_to_status_id)) {
                $thr_parent = $hostname . "::" . $content->in_reply_to_status_id;
 
-               if (
-                       Item::exists(['uri' => $thr_parent, 'uid' => $uid])
-                       || Item::exists(['extid' => $thr_parent, 'uid' => $uid])
-               ) {
-                       $postarray['thr-parent'] = $thr_parent;
+               $item = Item::selectFirst(['uri'], ['uri' => $thr_parent, 'uid' => $uid]);
+               if (!DBA::isResult($item)) {
+                       $item = Item::selectFirst(['uri'], ['extid' => $thr_parent, 'uid' => $uid]);
+               }
+
+               if (DBA::isResult($item)) {
+                       $postarray['thr-parent'] = $item['uri'];
                        $postarray['object-type'] = Activity\ObjectType::COMMENT;
                } else {
                        $postarray['object-type'] = Activity\ObjectType::NOTE;
index f70aa141b4656556f4add9683805e3efc215a4d4..9a3ce38eb9592f02090250359caf59c158bcd794 100644 (file)
@@ -1584,11 +1584,13 @@ function twitter_createpost(App $a, $uid, $post, array $self, $create_user, $onl
        if ($post->in_reply_to_status_id_str != "") {
                $thr_parent = "twitter::" . $post->in_reply_to_status_id_str;
 
-               if (
-                       Item::exists(['uri' => $thr_parent, 'uid' => $uid])
-                       || Item::exists(['extid' => $thr_parent, 'uid' => $uid])
-               ) {
-                       $postarray['thr-parent'] = $thr_parent;
+               $item = Item::selectFirst(['uri'], ['uri' => $thr_parent, 'uid' => $uid]);
+               if (!DBA::isResult($item)) {
+                       $item = Item::selectFirst(['uri'], ['extid' => $thr_parent, 'uid' => $uid]);
+               }
+
+               if (DBA::isResult($item)) {
+                       $postarray['thr-parent'] = $item['uri'];
                        $postarray['object-type'] = Activity\ObjectType::COMMENT;
                } else {
                        $postarray['object-type'] = Activity\ObjectType::NOTE;
@@ -1702,6 +1704,8 @@ function twitter_createpost(App $a, $uid, $post, array $self, $create_user, $onl
                        $postarray['verb'] = Activity::ANNOUNCE;
                        $postarray['gravity'] = GRAVITY_ACTIVITY;
                        $postarray['object-type'] = Activity\ObjectType::NOTE;
+
+                       $postarray['thr-parent'] = $retweet['uri'];
                } else {
                        $retweet['source'] = $postarray['source'];
                        $retweet['private'] = $postarray['private'];
@@ -1919,7 +1923,7 @@ function twitter_fetchhometimeline(App $a, $uid)
 
                        $notify = false;
 
-                       if (($postarray['uri'] == $postarray['thr-parent']) && ($postarray['author-link'] == $postarray['owner-link'])) {
+                       if (empty($postarray['thr-parent'])) {
                                $contact = DBA::selectFirst('contact', [], ['id' => $postarray['contact-id'], 'self' => false]);
                                if (DBA::isResult($contact)) {
                                        $notify = Item::isRemoteSelf($contact, $postarray);